1 /* 2 SPDX-FileCopyrightText: 2017-2021 Laurent Montel <montel@kde.org> 3 4 SPDX-License-Identifier: LGPL-2.0-or-later 5 */ 6 7 #pragma once 8 9 #include <Akonadi/Collection> 10 #include <KIdentityManagement/Identity> 11 #include <KMime/Message> 12 #include <QObject> 13 14 class KMComposerUpdateTemplateJob : public QObject 15 { 16 Q_OBJECT 17 public: 18 explicit KMComposerUpdateTemplateJob(QObject *parent = nullptr); 19 ~KMComposerUpdateTemplateJob() override; 20 void start(); 21 void setMsg(const KMime::Message::Ptr &msg); 22 23 void setCustomTemplate(const QString &customTemplate); 24 25 void setTextSelection(const QString &textSelection); 26 27 void setWasModified(bool wasModified); 28 29 void setUoldId(uint uoldId); 30 31 void setUoid(uint uoid); 32 33 void setIdent(const KIdentityManagement::Identity &ident); 34 35 void setCollection(const Akonadi::Collection &col); 36 Q_SIGNALS: 37 void updateComposer(const KIdentityManagement::Identity &ident, const KMime::Message::Ptr &msg, uint uoid, uint uoldId, bool wasModified); 38 39 private: 40 Q_DISABLE_COPY(KMComposerUpdateTemplateJob) 41 void slotFinished(); 42 43 QString mTextSelection; 44 QString mCustomTemplate; 45 KMime::Message::Ptr mMsg; 46 Akonadi::Collection mCollectionForNewMessage; 47 uint mUoldId = 0; 48 uint mUoid = 0; 49 KIdentityManagement::Identity mIdent; 50 bool mWasModified = false; 51 }; 52 53