aboutsummaryrefslogtreecommitdiffstats
path: root/lang/qt/src/signencryptjob.h
diff options
context:
space:
mode:
authorAndre Heinecke <[email protected]>2016-08-09 11:10:08 +0000
committerAndre Heinecke <[email protected]>2016-08-09 12:23:51 +0000
commit34b456c3fb9e59788b07a75441da482bb28bda87 (patch)
tree30cd6a2447ce530ec340e6d52535831e0f745b39 /lang/qt/src/signencryptjob.h
parentCpp: Add support for all EncryptionFlags (diff)
downloadgpgme-34b456c3fb9e59788b07a75441da482bb28bda87.tar.gz
gpgme-34b456c3fb9e59788b07a75441da482bb28bda87.zip
Qt: Add support for EncryptJobs with generic flags
* lang/qt/src/encryptjob.h, lang/qt/src/signencryptjob.h, lang/qt/src/qgpgmeencryptjob.h, lang/qt/src/qgpgmeencryptjob.cpp, lang/qt/src/qgpgmesignencryptjob.cpp, lang/qt/src/qgpgmeencryptjob.cpp: Add start and exec overloads that accept generic EncryptFlags. -- While this technically is an ABI break (vtable change) there are no known classes outside qgpgme that inherit encryptjob or signencryptjob. And the new functions should be added to the bottom of the vtable.
Diffstat (limited to 'lang/qt/src/signencryptjob.h')
-rw-r--r--lang/qt/src/signencryptjob.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/lang/qt/src/signencryptjob.h b/lang/qt/src/signencryptjob.h
index 4818d2af..b0aafe3c 100644
--- a/lang/qt/src/signencryptjob.h
+++ b/lang/qt/src/signencryptjob.h
@@ -38,8 +38,10 @@
#ifdef BUILDING_QGPGME
# include "global.h"
+# include "context.h"
#else
# include <gpgme++/global.h>
+# include <gpgme++/context.h>
#endif
#include <memory>
@@ -123,6 +125,21 @@ public:
*/
virtual void setOutputIsBase64Encoded(bool) = 0;
+ /** Like start but with an additional argument for EncryptionFlags for
+ * more flexibility. */
+ virtual void start(const std::vector<GpgME::Key> &signers,
+ const std::vector<GpgME::Key> &recipients,
+ const std::shared_ptr<QIODevice> &plainText,
+ const std::shared_ptr<QIODevice> &cipherText = std::shared_ptr<QIODevice>(),
+ const GpgME::Context::EncryptionFlags flags = GpgME::Context::None) = 0;
+
+ /** Like exec but with an additional argument for EncryptionFlags for
+ * more flexibility. */
+ virtual std::pair<GpgME::SigningResult, GpgME::EncryptionResult>
+ exec(const std::vector<GpgME::Key> &signers,
+ const std::vector<GpgME::Key> &recipients,
+ const QByteArray &plainText,
+ const GpgME::Context::EncryptionFlags flags, QByteArray &cipherText) = 0;
Q_SIGNALS:
void result(const GpgME::SigningResult &signingresult,
const GpgME::EncryptionResult &encryptionresult,