diff --git a/src/gui/ChangeMasterKeyWidget.cpp b/src/gui/ChangeMasterKeyWidget.cpp index 3e346bc10..05b9cd2cc 100644 --- a/src/gui/ChangeMasterKeyWidget.cpp +++ b/src/gui/ChangeMasterKeyWidget.cpp @@ -136,3 +136,8 @@ void ChangeMasterKeyWidget::reject() { Q_EMIT editFinished(false); } + +void ChangeMasterKeyWidget::setCancelEnabled(bool enabled) +{ + m_ui->buttonBox->button(QDialogButtonBox::Cancel)->setEnabled(enabled); +} diff --git a/src/gui/ChangeMasterKeyWidget.h b/src/gui/ChangeMasterKeyWidget.h index 8985ff7a8..fc4a1b9cb 100644 --- a/src/gui/ChangeMasterKeyWidget.h +++ b/src/gui/ChangeMasterKeyWidget.h @@ -38,6 +38,7 @@ public: void clearForms(); CompositeKey newMasterKey(); QLabel* headlineLabel(); + void setCancelEnabled(bool enabled); Q_SIGNALS: void editFinished(bool accepted); diff --git a/src/gui/DatabaseTabWidget.cpp b/src/gui/DatabaseTabWidget.cpp index 530830017..c425332f7 100644 --- a/src/gui/DatabaseTabWidget.cpp +++ b/src/gui/DatabaseTabWidget.cpp @@ -100,7 +100,7 @@ void DatabaseTabWidget::newDatabase() return; } - dbStruct.dbWidget->switchToMasterKeyChange(); + dbStruct.dbWidget->switchToMasterKeyChange(true); } void DatabaseTabWidget::openDatabase() diff --git a/src/gui/DatabaseWidget.cpp b/src/gui/DatabaseWidget.cpp index 4a1298deb..1ccf35dd4 100644 --- a/src/gui/DatabaseWidget.cpp +++ b/src/gui/DatabaseWidget.cpp @@ -810,9 +810,10 @@ void DatabaseWidget::switchToGroupEdit() switchToGroupEdit(group, false); } -void DatabaseWidget::switchToMasterKeyChange() +void DatabaseWidget::switchToMasterKeyChange(bool disableCancel) { m_changeMasterKeyWidget->clearForms(); + m_changeMasterKeyWidget->setCancelEnabled(!disableCancel); setCurrentWidget(m_changeMasterKeyWidget); } diff --git a/src/gui/DatabaseWidget.h b/src/gui/DatabaseWidget.h index 79e58cecf..ef245cf2d 100644 --- a/src/gui/DatabaseWidget.h +++ b/src/gui/DatabaseWidget.h @@ -132,7 +132,7 @@ public Q_SLOTS: void switchToView(bool accepted); void switchToEntryEdit(); void switchToGroupEdit(); - void switchToMasterKeyChange(); + void switchToMasterKeyChange(bool disableCancel = false); void switchToDatabaseSettings(); void switchToOpenDatabase(const QString& fileName); void switchToOpenDatabase(const QString& fileName, const QString& password, const QString& keyFile);