aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2025-01-27 23:07:49 +0000
committersaturneric <[email protected]>2025-01-27 23:14:21 +0000
commit0a8a116d2dabedae09995906bef7a4a25af2fd61 (patch)
tree8c9334041a08fb244aa5686f1413915dd9a24365
parentfix: tiny fixes (diff)
downloadGpgFrontend-0a8a116d2dabedae09995906bef7a4a25af2fd61.tar.gz
GpgFrontend-0a8a116d2dabedae09995906bef7a4a25af2fd61.zip
refactor: code clean up
-rw-r--r--src/ui/UserInterfaceUtils.cpp57
-rw-r--r--src/ui/UserInterfaceUtils.h22
-rw-r--r--src/ui/dialog/import_export/ExportKeyPackageDialog.cpp4
-rw-r--r--src/ui/dialog/key_generate/KeygenDialog.cpp4
-rw-r--r--src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp4
-rw-r--r--src/ui/dialog/keypair_details/KeyPairOperaTab.cpp1
-rw-r--r--src/ui/function/GpgOperaHelper.cpp22
-rw-r--r--src/ui/function/GpgOperaHelper.h8
-rw-r--r--src/ui/main_window/KeyMgmt.cpp7
-rw-r--r--src/ui/main_window/MainWindow.cpp1
-rw-r--r--src/ui/main_window/MainWindowSlotFunction.cpp11
-rw-r--r--src/ui/main_window/MainWindowSlotUI.cpp1
-rw-r--r--src/ui/main_window/MainWindowUI.cpp2
-rw-r--r--src/ui/struct/GpgOperaResult.h1
-rw-r--r--src/ui/struct/GpgOperaResultContext.h6
-rw-r--r--src/ui/widgets/FileTreeView.cpp4
16 files changed, 53 insertions, 102 deletions
diff --git a/src/ui/UserInterfaceUtils.cpp b/src/ui/UserInterfaceUtils.cpp
index 74e2c82a..379c2a2d 100644
--- a/src/ui/UserInterfaceUtils.cpp
+++ b/src/ui/UserInterfaceUtils.cpp
@@ -194,63 +194,6 @@ CommonUtils::CommonUtils() : QWidget(nullptr) {
});
}
-void CommonUtils::WaitForOpera(QWidget *parent,
- const QString &waiting_dialog_title,
- const OperaWaitingCb &opera) {
- QEventLoop looper;
- QPointer<WaitingDialog> const dialog =
- new WaitingDialog(waiting_dialog_title, parent);
- connect(dialog, &QDialog::finished, &looper, &QEventLoop::quit);
- connect(dialog, &QDialog::finished, dialog, &QDialog::deleteLater);
- dialog->show();
-
- QTimer::singleShot(64, parent, [=]() {
- opera([dialog]() {
- if (dialog != nullptr) {
- dialog->close();
- dialog->accept();
- }
- });
- });
-
- looper.exec();
-}
-
-void CommonUtils::WaitForMultipleOperas(
- QWidget *parent, const QString &waiting_dialog_title,
- const QContainer<OperaWaitingCb> &operas) {
- QEventLoop looper;
- QPointer<WaitingDialog> const dialog =
- new WaitingDialog(waiting_dialog_title, true, parent);
- connect(dialog, &QDialog::finished, &looper, &QEventLoop::quit);
- connect(dialog, &QDialog::finished, dialog, &QDialog::deleteLater);
- dialog->show();
-
- std::atomic<int> remaining_tasks(static_cast<int>(operas.size()));
- const auto tasks_count = operas.size();
-
- for (const auto &opera : operas) {
- QTimer::singleShot(64, parent, [=, &remaining_tasks]() {
- opera([dialog, &remaining_tasks, tasks_count]() {
- if (dialog == nullptr) return;
-
- const auto pg_value =
- static_cast<double>(tasks_count - remaining_tasks + 1) * 100.0 /
- static_cast<double>(tasks_count);
- emit dialog->SignalUpdateValue(static_cast<int>(pg_value));
- QCoreApplication::processEvents();
-
- if (--remaining_tasks == 0) {
- dialog->close();
- dialog->accept();
- }
- });
- });
- }
-
- looper.exec();
-}
-
void CommonUtils::RaiseMessageBox(QWidget *parent, GpgError err) {
GpgErrorDesc desc = DescribeGpgErrCode(err);
GpgErrorCode err_code = CheckGpgError2ErrCode(err);
diff --git a/src/ui/UserInterfaceUtils.h b/src/ui/UserInterfaceUtils.h
index c543bf58..372bc55a 100644
--- a/src/ui/UserInterfaceUtils.h
+++ b/src/ui/UserInterfaceUtils.h
@@ -43,9 +43,6 @@ namespace GpgFrontend::UI {
class InfoBoardWidget;
class TextEdit;
-using OperaWaitingHd = std::function<void()>;
-using OperaWaitingCb = std::function<void(OperaWaitingHd)>;
-
/**
* @brief
*
@@ -110,25 +107,6 @@ class CommonUtils : public QWidget {
*
* @param err
*/
- static void WaitForOpera(QWidget* parent, const QString&,
- const OperaWaitingCb&);
-
- /**
- * @brief
- *
- * @param parent
- * @param waiting_dialog_title
- * @param operas
- */
- static void WaitForMultipleOperas(QWidget* parent,
- const QString& waiting_dialog_title,
- const QContainer<OperaWaitingCb>& operas);
-
- /**
- * @brief
- *
- * @param err
- */
static void RaiseMessageBox(QWidget* parent, GpgError err);
/**
diff --git a/src/ui/dialog/import_export/ExportKeyPackageDialog.cpp b/src/ui/dialog/import_export/ExportKeyPackageDialog.cpp
index 5e6267da..7aab31b5 100644
--- a/src/ui/dialog/import_export/ExportKeyPackageDialog.cpp
+++ b/src/ui/dialog/import_export/ExportKeyPackageDialog.cpp
@@ -31,7 +31,7 @@
#include "core/GpgModel.h"
#include "core/function/KeyPackageOperator.h"
#include "core/function/gpg/GpgKeyGetter.h"
-#include "ui/UserInterfaceUtils.h"
+#include "ui/function/GpgOperaHelper.h"
#include "ui_ExportKeyPackageDialog.h"
GpgFrontend::UI::ExportKeyPackageDialog::ExportKeyPackageDialog(
@@ -113,7 +113,7 @@ GpgFrontend::UI::ExportKeyPackageDialog::ExportKeyPackageDialog(
return;
}
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Generating"), [this, keys](const OperaWaitingHd& op_hd) {
KeyPackageOperator::GenerateKeyPackage(
ui_->outputPathLabel->text(), ui_->nameValueLabel->text(),
diff --git a/src/ui/dialog/key_generate/KeygenDialog.cpp b/src/ui/dialog/key_generate/KeygenDialog.cpp
index c9006b0c..0bf235ac 100644
--- a/src/ui/dialog/key_generate/KeygenDialog.cpp
+++ b/src/ui/dialog/key_generate/KeygenDialog.cpp
@@ -31,13 +31,13 @@
#include "core/GpgModel.h"
#include "core/function/GlobalSettingStation.h"
#include "core/function/gpg/GpgKeyOpera.h"
-#include "core/model/DataObject.h"
#include "core/module/ModuleManager.h"
#include "core/typedef/GpgTypedef.h"
#include "core/utils/CacheUtils.h"
#include "core/utils/GpgUtils.h"
#include "ui/UISignalStation.h"
#include "ui/UserInterfaceUtils.h"
+#include "ui/function/GpgOperaHelper.h"
namespace GpgFrontend::UI {
@@ -150,7 +150,7 @@ void KeyGenDialog::slot_key_gen_accept() {
LOG_D() << "try to generate key at gpg context channel: "
<< selected_gpg_context_channel;
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Generating"),
[this, gen_key_info = this->gen_key_info_,
selected_gpg_context_channel](const OperaWaitingHd& hd) {
diff --git a/src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp b/src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp
index 1af2d767..527d335b 100644
--- a/src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp
+++ b/src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp
@@ -34,10 +34,10 @@
#include "core/function/GlobalSettingStation.h"
#include "core/function/gpg/GpgKeyGetter.h"
#include "core/function/gpg/GpgKeyOpera.h"
-#include "core/utils/CacheUtils.h"
#include "core/utils/GpgUtils.h"
#include "ui/UISignalStation.h"
#include "ui/UserInterfaceUtils.h"
+#include "ui/function/GpgOperaHelper.h"
namespace GpgFrontend::UI {
@@ -288,7 +288,7 @@ void SubkeyGenerateDialog::slot_key_gen_accept() {
gen_key_info_->SetExpireTime(date_edit_->dateTime());
}
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Generating"),
[this, key = this->key_,
gen_key_info = this->gen_key_info_](const OperaWaitingHd& hd) {
diff --git a/src/ui/dialog/keypair_details/KeyPairOperaTab.cpp b/src/ui/dialog/keypair_details/KeyPairOperaTab.cpp
index 89bceeeb..c4f0dad1 100644
--- a/src/ui/dialog/keypair_details/KeyPairOperaTab.cpp
+++ b/src/ui/dialog/keypair_details/KeyPairOperaTab.cpp
@@ -35,7 +35,6 @@
#include "core/function/gpg/GpgKeyOpera.h"
#include "core/model/GpgKey.h"
#include "core/module/ModuleManager.h"
-#include "core/thread/TaskRunnerGetter.h"
#include "core/typedef/GpgTypedef.h"
#include "core/utils/GpgUtils.h"
#include "core/utils/IOUtils.h"
diff --git a/src/ui/function/GpgOperaHelper.cpp b/src/ui/function/GpgOperaHelper.cpp
index f762996d..161db70e 100644
--- a/src/ui/function/GpgOperaHelper.cpp
+++ b/src/ui/function/GpgOperaHelper.cpp
@@ -28,10 +28,12 @@
#include "GpgOperaHelper.h"
+#include "core/GpgModel.h"
#include "core/function/gpg/GpgFileOpera.h"
#include "core/function/result_analyse/GpgDecryptResultAnalyse.h"
#include "core/function/result_analyse/GpgEncryptResultAnalyse.h"
#include "core/function/result_analyse/GpgSignResultAnalyse.h"
+#include "core/function/result_analyse/GpgVerifyResultAnalyse.h"
#include "core/model/GpgDecryptResult.h"
#include "core/model/GpgEncryptResult.h"
#include "core/model/GpgSignResult.h"
@@ -530,4 +532,24 @@ auto GpgOperaHelper::BuildOperasDecryptVerify(
GpgBasicOperator::GetInstance(channel).DecryptVerify(buffer, callback);
});
}
+
+void GpgOperaHelper::WaitForOpera(QWidget* parent, const QString& title,
+ const OperaWaitingCb& opera) {
+ QEventLoop looper;
+ QPointer<WaitingDialog> const dialog = new WaitingDialog(title, parent);
+ connect(dialog, &QDialog::finished, &looper, &QEventLoop::quit);
+ connect(dialog, &QDialog::finished, dialog, &QDialog::deleteLater);
+ dialog->show();
+
+ QTimer::singleShot(64, parent, [=]() {
+ opera([dialog]() {
+ if (dialog != nullptr) {
+ dialog->close();
+ dialog->accept();
+ }
+ });
+ });
+
+ looper.exec();
+}
} // namespace GpgFrontend::UI
diff --git a/src/ui/function/GpgOperaHelper.h b/src/ui/function/GpgOperaHelper.h
index bf11b37b..9d53ab12 100644
--- a/src/ui/function/GpgOperaHelper.h
+++ b/src/ui/function/GpgOperaHelper.h
@@ -304,6 +304,14 @@ class GpgOperaHelper : QObject {
/**
* @brief
*
+ * @param err
+ */
+ static void WaitForOpera(QWidget* parent, const QString& title,
+ const OperaWaitingCb& opera);
+
+ /**
+ * @brief
+ *
* @param parent
* @param title
* @param operas
diff --git a/src/ui/main_window/KeyMgmt.cpp b/src/ui/main_window/KeyMgmt.cpp
index 53b89c91..2a027bfd 100644
--- a/src/ui/main_window/KeyMgmt.cpp
+++ b/src/ui/main_window/KeyMgmt.cpp
@@ -44,6 +44,7 @@
#include "ui/dialog/key_generate/KeygenDialog.h"
#include "ui/dialog/key_generate/SubkeyGenerateDialog.h"
#include "ui/dialog/keypair_details/KeyDetailsDialog.h"
+#include "ui/function/GpgOperaHelper.h"
#include "ui/main_window/MainWindow.h"
#include "ui/widgets/KeyList.h"
@@ -403,7 +404,7 @@ void KeyMgmt::SlotExportKeyToClipboard() {
assert(std::all_of(keys.begin(), keys.end(),
[](const auto& key) { return key.IsGood(); }));
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Exporting"), [=](const OperaWaitingHd& op_hd) {
GpgKeyImportExporter::GetInstance(
key_list_->GetCurrentGpgContextChannel())
@@ -482,7 +483,7 @@ void KeyMgmt::SlotExportAsOpenSSHFormat() {
assert(std::all_of(keys.begin(), keys.end(),
[](const auto& key) { return key.IsGood(); }));
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Exporting"), [this, keys](const OperaWaitingHd& op_hd) {
GpgKeyImportExporter::GetInstance(
key_list_->GetCurrentGpgContextChannel())
@@ -585,7 +586,7 @@ void KeyMgmt::SlotImportKeyPackage() {
return;
}
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Importing"), [=](const OperaWaitingHd& op_hd) {
KeyPackageOperator::ImportKeyPackage(
key_package_file_name, key_file_name,
diff --git a/src/ui/main_window/MainWindow.cpp b/src/ui/main_window/MainWindow.cpp
index f362daa5..319a1ad9 100644
--- a/src/ui/main_window/MainWindow.cpp
+++ b/src/ui/main_window/MainWindow.cpp
@@ -30,7 +30,6 @@
#include "core/function/CacheManager.h"
#include "core/function/GlobalSettingStation.h"
-#include "core/function/gpg/GpgKeyGetter.h"
#include "core/model/SettingsObject.h"
#include "core/module/ModuleManager.h"
#include "ui/UISignalStation.h"
diff --git a/src/ui/main_window/MainWindowSlotFunction.cpp b/src/ui/main_window/MainWindowSlotFunction.cpp
index 36d4435d..8743c937 100644
--- a/src/ui/main_window/MainWindowSlotFunction.cpp
+++ b/src/ui/main_window/MainWindowSlotFunction.cpp
@@ -27,7 +27,6 @@
*/
#include "MainWindow.h"
-#include "core/function/gpg/GpgBasicOperator.h"
#include "core/function/gpg/GpgKeyGetter.h"
#include "core/function/gpg/GpgKeyImportExporter.h"
#include "core/function/result_analyse/GpgDecryptResultAnalyse.h"
@@ -323,7 +322,7 @@ void MainWindow::slot_import_key_from_edit() {
}
void MainWindow::slot_verify_email_by_eml_data(const QByteArray& buffer) {
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Verifying"), [this, buffer](const OperaWaitingHd& hd) {
Module::TriggerEvent(
"EMAIL_VERIFY_EML_DATA",
@@ -651,7 +650,7 @@ void MainWindow::SlotEncryptEML() {
}
auto buffer = edit_->CurPlainText().toUtf8();
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Encrypting"),
[this, buffer, checked_keys](const OperaWaitingHd& hd) {
Module::TriggerEvent(
@@ -718,7 +717,7 @@ void MainWindow::SlotSignEML() {
auto buffer = edit_->CurPlainText().toUtf8();
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Signing"),
[this, buffer, checked_keys](const OperaWaitingHd& hd) {
Module::TriggerEvent(
@@ -801,7 +800,7 @@ void MainWindow::SlotEncryptSignEML() {
auto buffer = edit_->CurPlainText().toUtf8();
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Encrypting and Signing"),
[this, buffer, checked_keys, signer_keys](const OperaWaitingHd& hd) {
Module::TriggerEvent(
@@ -865,7 +864,7 @@ void MainWindow::SlotDecryptVerifyEML() {
auto buffer = edit_->CurPlainText().toUtf8();
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this, tr("Decrypting and Verifying"),
[this, buffer](const OperaWaitingHd& hd) {
Module::TriggerEvent(
diff --git a/src/ui/main_window/MainWindowSlotUI.cpp b/src/ui/main_window/MainWindowSlotUI.cpp
index 7ce0024e..c8c68aef 100644
--- a/src/ui/main_window/MainWindowSlotUI.cpp
+++ b/src/ui/main_window/MainWindowSlotUI.cpp
@@ -31,7 +31,6 @@
#include "core/function/CacheManager.h"
#include "core/function/gpg/GpgAdvancedOperator.h"
#include "core/model/SettingsObject.h"
-#include "core/module/ModuleManager.h"
#include "ui/UserInterfaceUtils.h"
#include "ui/dialog/Wizard.h"
#include "ui/main_window/KeyMgmt.h"
diff --git a/src/ui/main_window/MainWindowUI.cpp b/src/ui/main_window/MainWindowUI.cpp
index 56c46824..a586a43b 100644
--- a/src/ui/main_window/MainWindowUI.cpp
+++ b/src/ui/main_window/MainWindowUI.cpp
@@ -28,10 +28,8 @@
#include "MainWindow.h"
#include "core/function/GlobalSettingStation.h"
-#include "core/model/SettingsObject.h"
#include "core/module/ModuleManager.h"
#include "dialog/controller/ModuleControllerDialog.h"
-#include "struct/settings_object/AppearanceSO.h"
#include "ui/UserInterfaceUtils.h"
#include "ui/dialog/controller/GnuPGControllerDialog.h"
#include "ui/dialog/help/AboutDialog.h"
diff --git a/src/ui/struct/GpgOperaResult.h b/src/ui/struct/GpgOperaResult.h
index 18eef96a..1f385736 100644
--- a/src/ui/struct/GpgOperaResult.h
+++ b/src/ui/struct/GpgOperaResult.h
@@ -29,6 +29,7 @@
#pragma once
#include "core/model/GFBuffer.h"
+
namespace GpgFrontend::UI {
struct GpgOperaResult {
diff --git a/src/ui/struct/GpgOperaResultContext.h b/src/ui/struct/GpgOperaResultContext.h
index 47333b73..58da0dc8 100644
--- a/src/ui/struct/GpgOperaResultContext.h
+++ b/src/ui/struct/GpgOperaResultContext.h
@@ -28,11 +28,15 @@
#pragma once
-#include "ui/UserInterfaceUtils.h"
+#include "core/typedef/CoreTypedef.h"
+#include "core/typedef/GpgTypedef.h"
#include "ui/struct/GpgOperaResult.h"
namespace GpgFrontend::UI {
+using OperaWaitingHd = std::function<void()>;
+using OperaWaitingCb = std::function<void(OperaWaitingHd)>;
+
struct GpgOperaCategory {
QStringList paths;
QStringList o_paths;
diff --git a/src/ui/widgets/FileTreeView.cpp b/src/ui/widgets/FileTreeView.cpp
index 20078e7c..86411d79 100644
--- a/src/ui/widgets/FileTreeView.cpp
+++ b/src/ui/widgets/FileTreeView.cpp
@@ -31,7 +31,7 @@
#include "core/utils/AsyncUtils.h"
#include "core/utils/IOUtils.h"
#include "ui/UISignalStation.h"
-#include "ui/UserInterfaceUtils.h"
+#include "ui/function/GpgOperaHelper.h"
namespace GpgFrontend::UI {
@@ -398,7 +398,7 @@ void FileTreeView::slot_calculate_hash() {
if (GetSelectedPaths().empty()) return;
auto selected_path = GetSelectedPaths().front();
- CommonUtils::WaitForOpera(
+ GpgOperaHelper::WaitForOpera(
this->parentWidget(), tr("Calculating"), [=](const OperaWaitingHd& hd) {
RunOperaAsync(
[=](const DataObjectPtr& data_object) {