# # # patch "guitone/src/view/dialogs/KeyManagement.cpp" # from [1f3f610c94977d23ec71d4594f67fbb7c12a19c9] # to [951bd9877d1139799576ce23791a52b893a928a7] # # patch "guitone/src/view/dialogs/KeyManagement.h" # from [3b0c26ad17584fac59b0e3dbdaea8bc0fc7e00ae] # to [2a9c474f5e82803bc96dd0f08901a41466c48236] # ============================================================ --- guitone/src/view/dialogs/KeyManagement.cpp 1f3f610c94977d23ec71d4594f67fbb7c12a19c9 +++ guitone/src/view/dialogs/KeyManagement.cpp 951bd9877d1139799576ce23791a52b893a928a7 @@ -28,16 +28,27 @@ KeyManagement::KeyManagement(QWidget* pa { setupUi(this); + model = new Keys(this); + keyList->setModel(model); + // FIXME: error handling! + model->readKeys(); + + showSignedRevisions->setEnabled(false); + connect( generateKey, SIGNAL(clicked()), this, SLOT(generateKeypair()) ); - - model = new Keys(this); - keyList->setModel(model); - // FIXME: error handling! - model->readKeys(); + connect( + showSignedRevisions, SIGNAL(clicked()), + this, SLOT(triggerRevisionDialog()) + ); + + connect( + keyList, SIGNAL(clicked(const QModelIndex &)), + this, SLOT(enableDisableShowSignedRevButton(const QModelIndex &)) + ); } KeyManagement::~KeyManagement() {} @@ -52,3 +63,26 @@ void KeyManagement::generateKeypair() } } +void KeyManagement::enableDisableShowSignedRevButton(const QModelIndex & index) +{ + if (!index.isValid()) + { + showSignedRevisions->setEnabled(false); + return; + } + + QString key(index.data().toString()); + if (key.size() == 0) + { + showSignedRevisions->setEnabled(false); + return; + } + + showSignedRevisions->setEnabled(true); +} + +void KeyManagement::triggerRevisionDialog() +{ + qDebug("KeyManagement::triggerRevisionDialog: TODO: Show revision dialog"); +} + ============================================================ --- guitone/src/view/dialogs/KeyManagement.h 3b0c26ad17584fac59b0e3dbdaea8bc0fc7e00ae +++ guitone/src/view/dialogs/KeyManagement.h 2a9c474f5e82803bc96dd0f08901a41466c48236 @@ -37,6 +37,8 @@ private slots: private slots: void generateKeypair(); + void enableDisableShowSignedRevButton(const QModelIndex &); + void triggerRevisionDialog(); }; #endif