aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui/dialog/keypair_details
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2025-04-18 17:56:51 +0000
committersaturneric <[email protected]>2025-04-18 17:56:51 +0000
commita7ea8e6de4bb205d2a3783d5cb9bde8bee0086b9 (patch)
tree54838273836a155033d33b246ec4a4200291825b /src/ui/dialog/keypair_details
parentfix: issues found by testing (diff)
parentfix: spelling mistake on project config by nightly build (diff)
downloadGpgFrontend-a7ea8e6de4bb205d2a3783d5cb9bde8bee0086b9.tar.gz
GpgFrontend-a7ea8e6de4bb205d2a3783d5cb9bde8bee0086b9.zip
Merge branch 'develop'
Diffstat (limited to 'src/ui/dialog/keypair_details')
-rw-r--r--src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp15
-rw-r--r--src/ui/dialog/keypair_details/KeyPairSubkeyTab.h100
2 files changed, 61 insertions, 54 deletions
diff --git a/src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp b/src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp
index 73e7f4e5..64e4d029 100644
--- a/src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp
+++ b/src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp
@@ -31,7 +31,6 @@
#include "core/function/gpg/GpgKeyGetter.h"
#include "core/function/gpg/GpgKeyImportExporter.h"
#include "core/function/gpg/GpgKeyManager.h"
-#include "core/function/gpg/GpgKeyOpera.h"
#include "core/utils/CommonUtils.h"
#include "core/utils/GpgUtils.h"
#include "core/utils/IOUtils.h"
@@ -66,6 +65,11 @@ KeyPairSubkeyTab::KeyPairSubkeyTab(int channel, GpgKeyPtr key, QWidget* parent)
add_adsk_button->hide();
}
+ if (!CheckGpgVersion(channel, "2.4.1")) {
+ add_adsk_button->setDisabled(true);
+ add_adsk_button->hide();
+ }
+
uid_buttons_layout->addWidget(add_subkey_button, 0, 0);
uid_buttons_layout->addWidget(add_adsk_button, 0, 1);
@@ -277,9 +281,12 @@ void KeyPairSubkeyTab::slot_refresh_subkey_list() {
}
void KeyPairSubkeyTab::slot_add_subkey() {
- auto* dialog =
- new SubkeyGenerateDialog(current_gpg_context_channel_, key_, this);
- dialog->show();
+ if (!CheckGpgVersion(current_gpg_context_channel_, "2.2.0")) {
+ CommonUtils::RaiseMessageBoxNotSupported(this);
+ return;
+ }
+
+ new SubkeyGenerateDialog(current_gpg_context_channel_, key_, this);
}
void KeyPairSubkeyTab::slot_add_adsk() {
diff --git a/src/ui/dialog/keypair_details/KeyPairSubkeyTab.h b/src/ui/dialog/keypair_details/KeyPairSubkeyTab.h
index 3d9eeb50..c7d7a08a 100644
--- a/src/ui/dialog/keypair_details/KeyPairSubkeyTab.h
+++ b/src/ui/dialog/keypair_details/KeyPairSubkeyTab.h
@@ -47,55 +47,13 @@ class KeyPairSubkeyTab : public QWidget {
*/
KeyPairSubkeyTab(int channel, GpgKeyPtr key, QWidget* parent);
- private:
- /**
- * @brief Create a subkey list object
- *
- */
- void create_subkey_list();
-
- /**
- * @brief Create a subkey opera menu object
- *
- */
- void create_subkey_opera_menu();
-
+ protected:
/**
- * @brief Get the selected subkey object
+ * @brief
*
- * @return const GpgSubKey&
+ * @param event
*/
- auto get_selected_subkey() -> const GpgSubKey&;
-
- int current_gpg_context_channel_;
- GpgKeyPtr key_; ///<
- QTableWidget* subkey_list_{}; ///<
- QContainer<GpgSubKey> buffered_subkeys_; ///<
-
- QGroupBox* list_box_; ///<
- QGroupBox* detail_box_; ///<
-
- QMenu* subkey_opera_menu_{}; ///<
-
- QLabel* key_type_var_label_;
- QLabel* key_size_var_label_; ///< Label containing the keys key size
- QLabel* expire_var_label_; ///< Label containing the keys expiration date
- QLabel* revoke_var_label_;
- QLabel* created_var_label_; ///< Label containing the keys creation date
- QLabel* algorithm_var_label_; ///< Label containing the keys algorithm
- QLabel* algorithm_detail_var_label_; ///<
- QLabel* key_id_var_label_; ///< Label containing the keys keyid
- QLabel* fingerprint_var_label_; ///< Label containing the keys fingerprint
- QLabel* usage_var_label_; ///<
- QLabel* master_key_exist_var_label_; ///<
- QLabel* card_key_label_; ///<
-
- QPushButton* export_subkey_button_;
- QAction* export_subkey_act_;
-
- QAction* edit_subkey_act_;
- QAction* delete_subkey_act_;
- QAction* revoke_subkey_act_;
+ void contextMenuEvent(QContextMenuEvent* event) override;
private slots:
@@ -161,13 +119,55 @@ class KeyPairSubkeyTab : public QWidget {
*/
void SignalKeyDatabaseRefresh();
- protected:
+ private:
+ int current_gpg_context_channel_;
+ GpgKeyPtr key_; ///<
+ QTableWidget* subkey_list_{}; ///<
+ QContainer<GpgSubKey> buffered_subkeys_; ///<
+
+ QGroupBox* list_box_; ///<
+ QGroupBox* detail_box_; ///<
+
+ QMenu* subkey_opera_menu_{}; ///<
+
+ QLabel* key_type_var_label_;
+ QLabel* key_size_var_label_; ///< Label containing the keys key size
+ QLabel* expire_var_label_; ///< Label containing the keys expiration date
+ QLabel* revoke_var_label_;
+ QLabel* created_var_label_; ///< Label containing the keys creation date
+ QLabel* algorithm_var_label_; ///< Label containing the keys algorithm
+ QLabel* algorithm_detail_var_label_; ///<
+ QLabel* key_id_var_label_; ///< Label containing the keys keyid
+ QLabel* fingerprint_var_label_; ///< Label containing the keys fingerprint
+ QLabel* usage_var_label_; ///<
+ QLabel* master_key_exist_var_label_; ///<
+ QLabel* card_key_label_; ///<
+
+ QPushButton* export_subkey_button_;
+ QAction* export_subkey_act_;
+
+ QAction* edit_subkey_act_;
+ QAction* delete_subkey_act_;
+ QAction* revoke_subkey_act_;
+
/**
- * @brief
+ * @brief Create a subkey list object
*
- * @param event
*/
- void contextMenuEvent(QContextMenuEvent* event) override;
+ void create_subkey_list();
+
+ /**
+ * @brief Create a subkey opera menu object
+ *
+ */
+ void create_subkey_opera_menu();
+
+ /**
+ * @brief Get the selected subkey object
+ *
+ * @return const GpgSubKey&
+ */
+ auto get_selected_subkey() -> const GpgSubKey&;
};
} // namespace GpgFrontend::UI