11 #include "kidentitymanagementcore_export.h"
12 #include "signature.h"
17 #include <QStringList>
20 namespace KIdentityManagementCore
28 namespace KIdentityManagementCore
30 static const char s_uoid[] =
"uoid";
31 static const char s_identity[] =
"Identity";
32 static const char s_name[] =
"Name";
33 static const char s_organization[] =
"Organization";
34 static const char s_pgps[] =
"PGP Signing Key";
35 static const char s_pgpe[] =
"PGP Encryption Key";
36 static const char s_smimes[] =
"SMIME Signing Key";
37 static const char s_smimee[] =
"SMIME Encryption Key";
38 static const char s_prefcrypt[] =
"Preferred Crypto Message Format";
39 static const char s_primaryEmail[] =
"Email Address";
40 static const char s_replyto[] =
"Reply-To Address";
41 static const char s_bcc[] =
"Bcc";
42 static const char s_cc[] =
"Cc";
43 static const char s_vcard[] =
"VCardFile";
44 static const char s_transport[] =
"Transport";
45 static const char s_fcc[] =
"Fcc";
46 static const char s_drafts[] =
"Drafts";
47 static const char s_templates[] =
"Templates";
48 static const char s_dict[] =
"Dictionary";
49 static const char s_xface[] =
"X-Face";
50 static const char s_xfaceenabled[] =
"X-FaceEnabled";
51 static const char s_face[] =
"Face";
52 static const char s_faceenabled[] =
"FaceEnabled";
53 static const char s_signature[] =
"Signature";
54 static const char s_emailAliases[] =
"Email Aliases";
55 static const char s_attachVcard[] =
"Attach Vcard";
56 static const char s_autocorrectionLanguage[] =
"Autocorrection Language";
57 static const char s_disabledFcc[] =
"Disable Fcc";
58 static const char s_encryptionOverride[] =
"Override Encryption Defaults";
59 static const char s_pgpautosign[] =
"Pgp Auto Sign";
60 static const char s_pgpautoencrypt[] =
"Pgp Auto Encrypt";
61 static const char s_warnnotsign[] =
"Warn not Sign";
62 static const char s_warnnotencrypt[] =
"Warn not Encrypt";
63 static const char s_defaultDomainName[] =
"Default Domain";
64 static const char s_autocryptEnabled[] =
"Autocrypt";
65 static const char s_autocryptPrefer[] =
"Autocrypt Prefer";
75 Q_PROPERTY(
bool mailingAllowed READ mailingAllowed)
76 Q_PROPERTY(
QString identityName READ identityName WRITE setIdentityName)
77 Q_PROPERTY(
QString fullName READ fullName WRITE setFullName)
78 Q_PROPERTY(
QString organization READ organization WRITE setOrganization)
79 Q_PROPERTY(
QByteArray pgpEncryptionKey READ pgpEncryptionKey WRITE setPGPEncryptionKey)
80 Q_PROPERTY(
QByteArray pgpSigningKey READ pgpSigningKey WRITE setPGPSigningKey)
81 Q_PROPERTY(
QByteArray smimeEncryptionKey READ smimeEncryptionKey WRITE setSMIMEEncryptionKey)
82 Q_PROPERTY(
QByteArray smimeSigningKey READ smimeSigningKey WRITE setSMIMESigningKey)
83 Q_PROPERTY(
QString preferredCryptoMessageFormat READ preferredCryptoMessageFormat WRITE setPreferredCryptoMessageFormat)
84 Q_PROPERTY(
QString primaryEmailAddress READ primaryEmailAddress WRITE setPrimaryEmailAddress)
85 Q_PROPERTY(
QStringList emailAliases READ emailAliases WRITE setEmailAliases)
86 Q_PROPERTY(
QString vCardFile READ vCardFile WRITE setVCardFile)
87 Q_PROPERTY(
QString fullEmailAddr READ fullEmailAddr)
88 Q_PROPERTY(
QString replyToAddr READ replyToAddr WRITE setReplyToAddr)
89 Q_PROPERTY(
QString bcc READ bcc WRITE setBcc)
90 Q_PROPERTY(
QString cc READ cc WRITE setCc)
91 Q_PROPERTY(
bool attachVcard READ attachVcard WRITE setAttachVcard)
92 Q_PROPERTY(
QString autocorrectionLanguage READ autocorrectionLanguage WRITE setAutocorrectionLanguage)
93 Q_PROPERTY(
bool disabledFcc READ disabledFcc WRITE setDisabledFcc)
94 Q_PROPERTY(
bool pgpAutoSign READ pgpAutoSign WRITE setPgpAutoSign)
95 Q_PROPERTY(
bool pgpAutoEncrypt READ pgpAutoEncrypt WRITE setPgpAutoEncrypt)
96 Q_PROPERTY(
bool autocryptEnabled READ autocryptEnabled WRITE setAutocryptEnabled)
97 Q_PROPERTY(
bool autocryptPrefer READ autocryptPrefer WRITE setAutocryptPrefer)
98 Q_PROPERTY(
bool encryptionOverride READ encryptionOverride WRITE setEncryptionOverride)
99 Q_PROPERTY(
bool warnNotSign READ warnNotSign WRITE setWarnNotSign)
100 Q_PROPERTY(
bool warnNotEncrypt READ warnNotEncrypt WRITE setWarnNotEncrypt)
101 Q_PROPERTY(
QString defaultDomainName READ defaultDomainName WRITE setDefaultDomainName)
102 Q_PROPERTY(
Signature signature READ signature WRITE setSignature)
103 Q_PROPERTY(
QString signatureText READ signatureText)
104 Q_PROPERTY(
bool signatureIsInlinedHtml READ signatureIsInlinedHtml)
105 Q_PROPERTY(
QString transport READ transport WRITE setTransport)
106 Q_PROPERTY(
QString fcc READ fcc WRITE setFcc)
107 Q_PROPERTY(
QString drafts READ drafts WRITE setDrafts)
108 Q_PROPERTY(
QString templates READ templates WRITE setTemplates)
109 Q_PROPERTY(
QString dictionary READ dictionary WRITE setDictionary)
110 Q_PROPERTY(
QString xface READ xface WRITE setXFace)
111 Q_PROPERTY(
bool isXFaceEnabled READ isXFaceEnabled WRITE setXFaceEnabled)
112 Q_PROPERTY(
QString face READ face WRITE setFace)
113 Q_PROPERTY(
bool isFaceEnabled READ isFaceEnabled WRITE setFaceEnabled)
114 Q_PROPERTY(uint uoid READ uoid CONSTANT)
115 Q_PROPERTY(
bool isNull READ isNull)
137 bool operator==(
const Identity &other)
const;
140 bool operator!=(
const Identity &other)
const;
143 bool operator<(
const Identity &other)
const;
146 bool operator>(
const Identity &other)
const;
149 bool operator<=(
const Identity &other)
const;
152 bool operator>=(
const Identity &other)
const;
155 [[nodiscard]]
bool mailingAllowed()
const;
158 [[nodiscard]]
QString identityName()
const;
161 void setIdentityName(
const QString &name);
164 [[nodiscard]]
bool isDefault()
const;
167 [[nodiscard]] uint uoid()
const;
170 [[nodiscard]]
QString fullName()
const;
171 void setFullName(
const QString &);
174 [[nodiscard]]
QString organization()
const;
175 void setOrganization(
const QString &);
178 [[nodiscard]]
QByteArray pgpEncryptionKey()
const;
179 void setPGPEncryptionKey(
const QByteArray &key);
182 [[nodiscard]]
QByteArray pgpSigningKey()
const;
186 [[nodiscard]]
QByteArray smimeEncryptionKey()
const;
187 void setSMIMEEncryptionKey(
const QByteArray &key);
190 [[nodiscard]]
QByteArray smimeSigningKey()
const;
191 void setSMIMESigningKey(
const QByteArray &key);
193 [[nodiscard]]
QString preferredCryptoMessageFormat()
const;
194 void setPreferredCryptoMessageFormat(
const QString &);
203 [[nodiscard]]
QString primaryEmailAddress()
const;
204 void setPrimaryEmailAddress(
const QString &email);
211 [[nodiscard]]
const QStringList emailAliases()
const;
221 [[nodiscard]]
bool matchesEmailAddress(
const QString &addr)
const;
224 [[nodiscard]]
QString vCardFile()
const;
225 void setVCardFile(
const QString &);
231 [[nodiscard]]
QString fullEmailAddr()
const;
234 [[nodiscard]]
QString replyToAddr()
const;
235 void setReplyToAddr(
const QString &);
238 [[nodiscard]]
QString bcc()
const;
245 [[nodiscard]]
QString cc()
const;
252 [[nodiscard]]
bool attachVcard()
const;
253 void setAttachVcard(
bool attach);
259 QString autocorrectionLanguage()
const;
260 void setAutocorrectionLanguage(
const QString &language);
266 [[nodiscard]]
bool disabledFcc()
const;
267 void setDisabledFcc(
bool);
273 [[nodiscard]]
bool pgpAutoSign()
const;
274 void setPgpAutoSign(
bool);
280 [[nodiscard]]
bool pgpAutoEncrypt()
const;
281 void setPgpAutoEncrypt(
bool);
287 [[nodiscard]]
bool autocryptEnabled()
const;
288 void setAutocryptEnabled(
const bool);
294 [[nodiscard]]
bool autocryptPrefer()
const;
295 void setAutocryptPrefer(
const bool);
302 [[nodiscard]]
bool encryptionOverride()
const;
303 void setEncryptionOverride(
const bool);
309 [[nodiscard]]
bool warnNotSign()
const;
310 void setWarnNotSign(
const bool);
316 [[nodiscard]]
bool warnNotEncrypt()
const;
317 void setWarnNotEncrypt(
const bool);
323 [[nodiscard]]
QString defaultDomainName()
const;
324 void setDefaultDomainName(
const QString &domainName);
341 [[nodiscard]]
QString signatureText(
bool *ok =
nullptr)
const;
347 [[nodiscard]]
bool signatureIsInlinedHtml()
const;
351 [[nodiscard]]
QString transport()
const;
352 void setTransport(
const QString &);
356 [[nodiscard]]
QString fcc()
const;
362 [[nodiscard]]
QString drafts()
const;
363 void setDrafts(
const QString &);
368 [[nodiscard]]
QString templates()
const;
369 void setTemplates(
const QString &);
377 [[nodiscard]]
QString dictionary()
const;
378 void setDictionary(
const QString &);
381 [[nodiscard]]
QString xface()
const;
382 void setXFace(
const QString &);
383 [[nodiscard]]
bool isXFaceEnabled()
const;
384 void setXFaceEnabled(
bool);
387 [[nodiscard]]
QString face()
const;
389 [[nodiscard]]
bool isFaceEnabled()
const;
390 void setFaceEnabled(
bool);
403 [[nodiscard]]
bool isNull()
const;
405 [[nodiscard]]
static QString mimeDataType();
406 [[nodiscard]]
static bool canDecode(
const QMimeData *);
407 void populateMimeData(
QMimeData *)
const;
426 void setIsDefault(
bool flag);
432 void setUoid(uint aUoid);
438 [[nodiscard]]
bool signatureIsCommand()
const;
441 [[nodiscard]]
bool signatureIsPlainFile()
const;
444 [[nodiscard]]
bool signatureIsInline()
const;
447 [[nodiscard]]
QString signatureFile()
const;
448 void setSignatureFile(
const QString &);
451 [[nodiscard]]
QString signatureInlineText()
const;
452 void setSignatureInlineText(
const QString &);
455 [[nodiscard]]
bool useSignatureFile()
const;
458 bool mIsDefault =
false;
463 #ifndef UNITY_CMAKE_SUPPORT