From ea6f15ed602eeb9fa87766ba88acc78361a14b38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= Date: Mon, 13 Feb 2023 10:58:31 +0100 Subject: qt: Add simple and extended progress signals replacing old signal * lang/qt/src/job.h (Job): Add signals jobProgress and rawProgress. Deprecate signal progress. * lang/qt/src/multideletejob.cpp (MultiDeleteJob::slotResult): Emit new progress signals. * lang/qt/src/qgpgmerefreshsmimekeysjob.cpp (QGpgMERefreshSMIMEKeysJob::slotStatus): Ditto. * lang/qt/src/threadedjobmixin.h (ThreadedJobMixin::showProgress): Use modern overload of QMetaObject::invokeMethod to forward the progress signal and add the value of what. Add forwarding of progress to the new signals. * lang/qt/tests/t-encrypt.cpp (EncryptionTest::testProgress): Test the new signals instead of the deprecated one. -- The new signal jobProgress omits the what value which is useless for most consumers. The new signal rawProgress makes all information provided by the backend available to consumers. The latter is not really meant to be used by users of gpgme. It will be used by the archive jobs to provide more user-friendly signals. GnuPG-bug-id: 6342 --- lang/qt/src/multideletejob.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lang/qt/src/multideletejob.cpp') diff --git a/lang/qt/src/multideletejob.cpp b/lang/qt/src/multideletejob.cpp index c3e6520d..d660a931 100644 --- a/lang/qt/src/multideletejob.cpp +++ b/lang/qt/src/multideletejob.cpp @@ -97,7 +97,13 @@ void QGpgME::MultiDeleteJob::slotResult(const GpgME::Error &err) const int current = mIt - mKeys.begin(); const int total = mKeys.size(); - Q_EMIT progress(QStringLiteral("%1/%2").arg(current).arg(total), current, total); + const QString what = QStringLiteral("%1/%2").arg(current).arg(total); + Q_EMIT jobProgress(current, total); + Q_EMIT rawProgress(what, '?', current, total); + QT_WARNING_PUSH + QT_WARNING_DISABLE_DEPRECATED + Q_EMIT progress(what, current, total); + QT_WARNING_POP } GpgME::Error QGpgME::MultiDeleteJob::startAJob() -- cgit v1.2.3