7 #include "dkimrulewidget.h"
8 #include "dkimmanagerulescombobox.h"
9 #include <KLocalizedString>
11 #include <QFormLayout>
15 using namespace MessageViewer;
16 DKIMRuleWidget::DKIMRuleWidget(
QWidget *parent)
20 , mSignatureDomainIdentifier(new
QLineEdit(this))
24 , mRuleType(new DKIMManageRulesComboBox(this))
27 layout->setObjectName(QStringLiteral(
"layout"));
28 layout->setContentsMargins({});
30 mEnabled->setObjectName(QStringLiteral(
"enabled"));
31 mEnabled->setChecked(
true);
32 layout->addWidget(mEnabled);
34 mDomain->setObjectName(QStringLiteral(
"domain"));
35 mDomain->setClearButtonEnabled(
true);
36 layout->addRow(
i18n(
"Domain:"), mDomain);
39 mListId->setObjectName(QStringLiteral(
"listid"));
40 mListId->setClearButtonEnabled(
true);
41 layout->addRow(
i18n(
"List-Id:"), mListId);
43 mFrom->setObjectName(QStringLiteral(
"from"));
44 mFrom->setClearButtonEnabled(
true);
45 layout->addRow(
i18n(
"From:"), mFrom);
46 mFrom->setPlaceholderText(
i18n(
"Use '*' to specify all emails from domain"));
49 mSignatureDomainIdentifier->setObjectName(QStringLiteral(
"signaturedomainidentifier"));
50 mSignatureDomainIdentifier->setClearButtonEnabled(
true);
51 layout->addRow(
i18n(
"SDID:"), mSignatureDomainIdentifier);
53 mRuleType->setObjectName(QStringLiteral(
"ruletype"));
54 layout->addRow(
i18n(
"Rule:"), mRuleType);
56 mPriority->setObjectName(QStringLiteral(
"priority"));
57 mPriority->setMinimum(1);
58 mPriority->setMaximum(9999);
59 mPriority->setValue(1000);
60 layout->addRow(
i18n(
"Priority:"), mPriority);
63 DKIMRuleWidget::~DKIMRuleWidget() =
default;
65 void DKIMRuleWidget::updateOkButton()
67 Q_EMIT updateOkButtonRequested(!mFrom->text().trimmed().isEmpty() && !mDomain->text().trimmed().isEmpty());
72 mEnabled->setChecked(
rule.enabled());
73 mDomain->setText(
rule.domain());
74 mSignatureDomainIdentifier->setText(
rule.signedDomainIdentifier().join(
QLatin1Char(
' ')));
75 mFrom->setText(
rule.from());
76 mListId->setText(
rule.listId());
77 mRuleType->setRuleType(
rule.ruleType());
78 mPriority->setValue(
rule.priority());
84 rule.setEnabled(mEnabled->isChecked());
85 rule.setDomain(mDomain->text());
86 rule.setSignedDomainIdentifier(mSignatureDomainIdentifier->text().split(
QLatin1Char(
' ')));
87 rule.setFrom(mFrom->text());
88 rule.setListId(mListId->text());
89 rule.setRuleType(mRuleType->ruleType());
90 rule.setPriority(mPriority->value());