35class MESSAGELIST_EXPORT MessageItem :
public Item,
public ModelInvariantIndex
38 class MESSAGELIST_EXPORT Tag
46 const QColor &textColor()
const;
47 const QColor &backgroundColor()
const;
48 const QFont &font()
const;
51 void setTextColor(
const QColor &textColor);
52 void setBackgroundColor(
const QColor &backgroundColor);
53 void setFont(
const QFont &font);
54 void setPriority(
int priority);
58 std::unique_ptr<TagPrivate>
const d;
68 enum EncryptionState {
72 EncryptionStateUnknown
82 explicit MessageItem();
83 ~MessageItem()
override;
93 const Tag *findTag(
const QString &szTagId)
const;
95 [[nodiscard]]
QString tagListDescription()
const;
99 void invalidateTagCache();
101 const QColor &textColor()
const;
103 const QColor &backgroundColor()
const;
105 [[nodiscard]]
bool isBold()
const
107 return font().bold();
110 [[nodiscard]]
bool isItalic()
const
112 return font().italic();
115 [[nodiscard]] SignatureState signatureState()
const;
117 void setSignatureState(SignatureState state);
119 [[nodiscard]] EncryptionState encryptionState()
const;
121 void setEncryptionState(EncryptionState state);
123 [[nodiscard]] MD5Hash messageIdMD5()
const;
125 void setMessageIdMD5(MD5Hash md5);
127 [[nodiscard]] MD5Hash inReplyToIdMD5()
const;
129 void setInReplyToIdMD5(MD5Hash md5);
131 [[nodiscard]] MD5Hash referencesIdMD5()
const;
133 void setReferencesIdMD5(MD5Hash md5);
135 void setSubjectIsPrefixed(
bool subjectIsPrefixed);
137 [[nodiscard]]
bool subjectIsPrefixed()
const;
139 [[nodiscard]] MD5Hash strippedSubjectMD5()
const;
141 void setStrippedSubjectMD5(MD5Hash md5);
143 [[nodiscard]]
bool aboutToBeRemoved()
const;
145 void setAboutToBeRemoved(
bool aboutToBeRemoved);
147 [[nodiscard]] ThreadingStatus threadingStatus()
const;
149 void setThreadingStatus(ThreadingStatus threadingStatus);
151 [[nodiscard]]
unsigned long uniqueId()
const;
153 Akonadi::Item akonadiItem()
const;
154 void setAkonadiItem(
const Akonadi::Item &item);
156 MessageItem *topmostMessage();
158 QString accessibleText(
const MessageList::Core::Theme *theme,
int columnIndex);
164 void subTreeToList(QList<MessageItem *> &list);
172 static void setUnreadMessageColor(
const QColor &color);
173 static void setImportantMessageColor(
const QColor &color);
174 static void setToDoMessageColor(
const QColor &color);
175 static void setGeneralFont(
const QFont &font);
176 static void setUnreadMessageFont(
const QFont &font);
177 static void setImportantMessageFont(
const QFont &font);
178 static void setToDoMessageFont(
const QFont &font);
181 explicit MessageItem(MessageItemPrivate *dd);
184 MESSAGELIST_NO_EXPORT
const QFont &font()
const;
186 MESSAGELIST_NO_EXPORT QString accessibleTextForField(Theme::ContentItem::Type field);
188 Q_DECLARE_PRIVATE(MessageItem)