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 <MailCommon/FolderSettings>
10 #include <QObject>
11 #include <QSharedPointer>
12 
13 class ComposeNewMessageJob : public QObject
14 {
15     Q_OBJECT
16 public:
17     explicit ComposeNewMessageJob(QObject *parent = nullptr);
18     ~ComposeNewMessageJob() override;
19 
20     void start();
21     void setFolderSettings(const QSharedPointer<MailCommon::FolderSettings> &folder);
22 
23     void setCurrentCollection(const Akonadi::Collection &col);
24     void setRecipientsFromMessage(const Akonadi::Item &from);
25 
26 private:
27     Q_DISABLE_COPY(ComposeNewMessageJob)
28     void slotOpenComposer(bool forceCursorPosition);
29     QSharedPointer<MailCommon::FolderSettings> mFolder;
30     Akonadi::Collection mCurrentCollection;
31     Akonadi::Item mRecipientsFrom;
32     uint mIdentity = 0;
33     KMime::Message::Ptr mMsg = nullptr;
34 };
35 
36