Modify Change Password menu action.
authorJanusz Sobczak <janusz.sobczak@gmail.com>
Thu, 20 May 2010 12:56:26 +0000 (14:56 +0200)
committerJanusz Sobczak <janusz.sobczak@gmail.com>
Thu, 20 May 2010 12:56:26 +0000 (14:56 +0200)
Enable 'Change password' only when user has supplied
a correct password.

Signed-off-by: Janusz Sobczak <janusz.sobczak@gmail.com>

src/mainwindow.cpp
src/mainwindow.h
src/mainwindow.ui

index 9d8a7c9..8566b73 100644 (file)
@@ -47,6 +47,10 @@ MainWindow::MainWindow(QWidget *parent) :
     connect(undoEditAction,SIGNAL(triggered()), this, SLOT(undoEdit()));
     on_textEdit_undoAvailable(false);
 
+    changePasswordAction = ui->menuOptions->addAction(tr("Change password"));
+    connect(changePasswordAction, SIGNAL(triggered()), this, SLOT(on_actionChange_password_triggered()));
+    enableChangePasswordAction(false);
+
     /* the secret notes file is stored in user home directory */
     filePath = QDir::fromNativeSeparators(QDir::homePath());
 
@@ -172,6 +176,7 @@ void MainWindow::readFile()
             plaintext = decoded;
             ui->textEdit->setPlainText(plaintext);
             enableTextEdit(true);
+            enableChangePasswordAction(true);
         }
         decoded.fill(0);
     }
@@ -321,6 +326,7 @@ void MainWindow::askNewPassword()
             QString pass = dialog.getPassword();
             setPassword(pass);
             pass.fill(0);
+            enableChangePasswordAction(true);
             return;
         }
     }
@@ -350,3 +356,8 @@ void MainWindow::enableResetAction(bool b)
 {
     resetAction->setVisible(b);
 }
+
+void MainWindow::enableChangePasswordAction(bool b)
+{
+    changePasswordAction->setVisible(b);
+}
index 9abe266..e8c73b2 100644 (file)
@@ -50,8 +50,10 @@ private:
     QString plaintext;
     void enableTextEdit(bool);
     void enableResetAction(bool);
+    void enableChangePasswordAction(bool);
     QAction *resetAction;
     QAction *undoEditAction;
+    QAction *changePasswordAction;
     QString filePath;
 
 private slots:
index 6a6d8cf..103f033 100644 (file)
@@ -43,7 +43,6 @@
     <property name="title">
      <string>Options</string>
     </property>
-    <addaction name="actionChange_password"/>
    </widget>
    <addaction name="menuOptions"/>
   </widget>