Warning, file /pim/mailcommon/src/tag/tagwidget.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002   SPDX-FileCopyrightText: 2012-2024 Laurent Montel <montel@kde.org>
0003 
0004   SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "mailcommon_export.h"
0010 
0011 #include "tag.h"
0012 
0013 #include <QWidget>
0014 
0015 class QLineEdit;
0016 class KColorCombo;
0017 class KIconButton;
0018 class KKeySequenceWidget;
0019 class QCheckBox;
0020 class KActionCollection;
0021 
0022 namespace MailCommon
0023 {
0024 class TagWidgetPrivate;
0025 class MAILCOMMON_EXPORT TagWidget : public QWidget
0026 {
0027     Q_OBJECT
0028 public:
0029     explicit TagWidget(const QList<KActionCollection *> &actionCollections, QWidget *parent = nullptr);
0030     ~TagWidget() override;
0031 
0032     void recordTagSettings(MailCommon::Tag::Ptr tag);
0033 
0034     [[nodiscard]] QLineEdit *tagNameLineEdit() const;
0035     [[nodiscard]] QCheckBox *textColorCheck() const;
0036     [[nodiscard]] QCheckBox *textFontCheck() const;
0037     [[nodiscard]] QCheckBox *backgroundColorCheck() const;
0038     [[nodiscard]] QCheckBox *inToolBarCheck() const;
0039 
0040     [[nodiscard]] KColorCombo *textColorCombo() const;
0041     [[nodiscard]] KColorCombo *backgroundColorCombo() const;
0042 
0043     [[nodiscard]] QCheckBox *textBoldCheck() const;
0044     [[nodiscard]] QCheckBox *textItalicCheck() const;
0045 
0046     [[nodiscard]] KIconButton *iconButton() const;
0047 
0048     [[nodiscard]] KKeySequenceWidget *keySequenceWidget() const;
0049 
0050     void setTagTextColor(const QColor &color);
0051     void setTagBackgroundColor(const QColor &color);
0052     void setTagTextFormat(bool bold, bool italic);
0053 
0054 Q_SIGNALS:
0055     void changed();
0056     void iconNameChanged(const QString &);
0057 
0058 private:
0059     MAILCOMMON_NO_EXPORT void slotEmitChangeCheck();
0060     std::unique_ptr<TagWidgetPrivate> const d;
0061 };
0062 }