File indexing completed on 2024-06-23 05:18:31
0001 /* 0002 SPDX-FileCopyrightText: 2020 Sandro Knauß <sknauss@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "contentjobbase.h" 0010 #include "messagecomposer_export.h" 0011 0012 #include <gpgme++/key.h> 0013 #include <vector> 0014 0015 namespace KMime 0016 { 0017 class Content; 0018 class Message; 0019 } 0020 0021 namespace MessageComposer 0022 { 0023 class AutocryptHeadersJobPrivate; 0024 0025 /** 0026 */ 0027 class MESSAGECOMPOSER_EXPORT AutocryptHeadersJob : public ContentJobBase 0028 { 0029 Q_OBJECT 0030 0031 public: 0032 explicit AutocryptHeadersJob(QObject *parent = nullptr); 0033 ~AutocryptHeadersJob() override; 0034 0035 void setContent(KMime::Content *content); 0036 void setSkeletonMessage(KMime::Message *skeletonMessage); 0037 0038 void setGnupgHome(const QString &path); 0039 0040 void setSenderKey(const GpgME::Key &key); 0041 void setPreferEncrypted(bool preferEncrypted); 0042 void setGossipKeys(const std::vector<GpgME::Key> &gossipKeys); 0043 0044 protected Q_SLOTS: 0045 void process() override; 0046 0047 private: 0048 Q_DECLARE_PRIVATE(AutocryptHeadersJob) 0049 }; 0050 }