File indexing completed on 2024-06-23 05:18:29
0001 /* 0002 SPDX-FileCopyrightText: 2017-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <Akonadi/Collection> 0010 #include <KMime/Message> 0011 #include <QObject> 0012 namespace KIdentityManagementCore 0013 { 0014 class IdentityManager; 0015 } 0016 0017 namespace MessageComposer 0018 { 0019 class MessageFactoryForwardJob : public QObject 0020 { 0021 Q_OBJECT 0022 public: 0023 explicit MessageFactoryForwardJob(QObject *parent = nullptr); 0024 ~MessageFactoryForwardJob() override; 0025 void start(); 0026 void setMsg(const KMime::Message::Ptr &msg); 0027 0028 void setTemplate(const QString &tmpl); 0029 0030 void setSelection(const QString &selection); 0031 0032 void setOrigMsg(const KMime::Message::Ptr &origMsg); 0033 0034 void setIdentityManager(KIdentityManagementCore::IdentityManager *identityManager); 0035 0036 void setCollection(const Akonadi::Collection &collection); 0037 0038 Q_SIGNALS: 0039 void forwardDone(const KMime::Message::Ptr &msg); 0040 0041 private: 0042 void slotParsingDone(); 0043 0044 QString mSelection; 0045 QString mTemplate; 0046 KMime::Message::Ptr mMsg = nullptr; 0047 KMime::Message::Ptr mOrigMsg = nullptr; 0048 Akonadi::Collection mCollection; 0049 KIdentityManagementCore::IdentityManager *mIdentityManager = nullptr; 0050 }; 0051 }