diff --git a/src/gui/KeyOpenDialog.cpp b/src/gui/KeyOpenDialog.cpp index 34fd2bea..225534ed 100644 --- a/src/gui/KeyOpenDialog.cpp +++ b/src/gui/KeyOpenDialog.cpp @@ -26,6 +26,8 @@ KeyOpenDialog::KeyOpenDialog(QWidget* parent) { m_ui->setupUi(this); + connect(m_ui->buttonTogglePassword, SIGNAL(toggled(bool)), SLOT(togglePassword(bool))); + connect(m_ui->editPassword, SIGNAL(textChanged(QString)), SLOT(activatePassword())); connect(m_ui->buttonBox, SIGNAL(accepted()), SLOT(createKey())); } @@ -48,3 +50,13 @@ void KeyOpenDialog::createKey() // TODO read key file } } + +void KeyOpenDialog::togglePassword(bool checked) +{ + m_ui->editPassword->setEchoMode(checked ? QLineEdit::Password : QLineEdit::Normal); +} + +void KeyOpenDialog::activatePassword() +{ + m_ui->checkPassword->setChecked(true); +} diff --git a/src/gui/KeyOpenDialog.h b/src/gui/KeyOpenDialog.h index 7ae2c7fa..a92ded7a 100644 --- a/src/gui/KeyOpenDialog.h +++ b/src/gui/KeyOpenDialog.h @@ -38,6 +38,8 @@ public: private Q_SLOTS: void createKey(); + void togglePassword(bool checked); + void activatePassword(); private: QScopedPointer m_ui; diff --git a/src/gui/KeyOpenDialog.ui b/src/gui/KeyOpenDialog.ui index da023604..4fcee520 100644 --- a/src/gui/KeyOpenDialog.ui +++ b/src/gui/KeyOpenDialog.ui @@ -24,13 +24,23 @@ - + + + QLineEdit::Password + + - + ... + + true + + + true +