diff options
author | Tobias Fella <[email protected]> | 2024-01-19 12:44:46 +0000 |
---|---|---|
committer | Tobias Fella <[email protected]> | 2024-01-22 10:24:49 +0000 |
commit | 47f3d92bf340f2a24b3c837a3afa5e1890b413ac (patch) | |
tree | e7e35ed72e14b89eea1e34c5b15d5ae9b0116682 | |
parent | qt: Remove superfluous virtual overrides and member variables (diff) | |
download | gpgme-47f3d92bf340f2a24b3c837a3afa5e1890b413ac.tar.gz gpgme-47f3d92bf340f2a24b3c837a3afa5e1890b413ac.zip |
qt: Add function for synchronously executing ExportJob
* lang/qt/src/exportjob: Add exec function.
* lang/qt/src/qgpgmeexportjob.cpp: Implement exec function.
* lang/qt/src/qgpgmeexportjob.h: Override exec function.
--
GnuPG-Bug-Id: 6893
-rw-r--r-- | lang/qt/src/exportjob.h | 6 | ||||
-rw-r--r-- | lang/qt/src/qgpgmeexportjob.cpp | 14 | ||||
-rw-r--r-- | lang/qt/src/qgpgmeexportjob.h | 1 |
3 files changed, 21 insertions, 0 deletions
diff --git a/lang/qt/src/exportjob.h b/lang/qt/src/exportjob.h index 4fdb468d..91b5c90e 100644 --- a/lang/qt/src/exportjob.h +++ b/lang/qt/src/exportjob.h @@ -80,6 +80,12 @@ public: virtual void setExportFlags (unsigned int flags); + /** + * Starts the export operation synchronously, otherwise behaves identical to + * ExportJob::start + */ + virtual GpgME::Error exec(const QStringList &patterns, QByteArray &data); + Q_SIGNALS: void result(const GpgME::Error &result, const QByteArray &keyData, const QString &auditLogAsHtml = QString(), const GpgME::Error &auditLogError = GpgME::Error()); }; diff --git a/lang/qt/src/qgpgmeexportjob.cpp b/lang/qt/src/qgpgmeexportjob.cpp index e9bc0a4d..803af7dd 100644 --- a/lang/qt/src/qgpgmeexportjob.cpp +++ b/lang/qt/src/qgpgmeexportjob.cpp @@ -88,6 +88,14 @@ Error QGpgMEExportJob::start(const QStringList &patterns) return Error(); } +Error QGpgMEExportJob::exec(const QStringList &patterns, QByteArray &data) +{ + auto mode = m_exportMode | m_additionalExportModeFlags; + const result_type r = export_qba(context(), patterns, mode); + data = std::get<1>(r); + return std::get<0>(r); +} + void QGpgMEExportJob::setExportFlags(unsigned int flags) { m_additionalExportModeFlags = flags; @@ -97,4 +105,10 @@ void QGpgMEExportJob::setExportFlags(unsigned int flags) void ExportJob::setExportFlags(unsigned int) { } + +/* For ABI compat not pure virtual. */ +GpgME::Error ExportJob::exec(const QStringList &patterns, QByteArray &data) +{ +} + #include "qgpgmeexportjob.moc" diff --git a/lang/qt/src/qgpgmeexportjob.h b/lang/qt/src/qgpgmeexportjob.h index 272fff4d..b60b95f2 100644 --- a/lang/qt/src/qgpgmeexportjob.h +++ b/lang/qt/src/qgpgmeexportjob.h @@ -69,6 +69,7 @@ public: /* from ExportJob */ GpgME::Error start(const QStringList &patterns) override; + GpgME::Error exec(const QStringList &patterns, QByteArray &data) override; private: unsigned int m_exportMode; |