diff options
| author | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-10-02 16:58:07 +0200 |
|---|---|---|
| committer | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-10-02 16:58:07 +0200 |
| commit | 1b56cc2885d735399b6b0ff20be345c6c9ced866 (patch) | |
| tree | dd66cc3967f2d29fcc702876eeb2444e479e13b4 /mainwindow.cpp | |
| parent | 780fbd892b8997541bd423833844bfbce0a2cc22 (diff) | |
| download | src-1b56cc2885d735399b6b0ff20be345c6c9ced866.tar.gz src-1b56cc2885d735399b6b0ff20be345c6c9ced866.zip | |
Verbessere Nutzerinteraktion bei Erfolg/Fehler
Diffstat (limited to 'mainwindow.cpp')
| -rw-r--r-- | mainwindow.cpp | 80 |
1 files changed, 36 insertions, 44 deletions
diff --git a/mainwindow.cpp b/mainwindow.cpp index 5adb301..8a8d4e5 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -36,41 +36,43 @@ void MainWindow::on_pushButtonDecrypt_clicked() } catch (CryptException e) { + statusBar()->clearMessage(); QMessageBox::critical(this, tr("Fehler beim Entschlüsseln"), e.what()); } } } else { - QMessageBox::information(this, tr("Kein Schlüssel Importiert"), - tr("Bitte Importieren Sie ihr Schlüsselpaar.")); - // Versuche ein Schlüssel zu Importieren. - on_actionImport_triggered(); - - // Wenn das erfolgreich war, versuche erneut zu entschlüsseln. - if (hybridcrypt.isUserKeyInitialised()) + if (QMessageBox::Yes == QMessageBox::question(this, + tr("Kein Schlüssel Importiert"), + tr("Wollen Sie ihr Schlüsselpaar importieren."))) { - on_pushButtonDecrypt_clicked(); + // Versuche ein Schlüssel zu Importieren. + on_actionImport_triggered(); + + // Wenn das erfolgreich war, versuche erneut zu entschlüsseln. + if (hybridcrypt.isUserKeyInitialised()) + { + on_pushButtonDecrypt_clicked(); + } } } } void MainWindow::on_pushButtonEncrypt_clicked() { - if (hybridcrypt.isUserKeyInitialised() || - QMessageBox::Yes == QMessageBox::question(this, - tr("Kein Schlüssel Importiert"), - tr("Sie haben keinen eigenen Schlüssel angelegt.\nWollen Sie trotzdem fortfahren?"))) - { - - PublicKeyImportDialog publicKeyImport; + QString inFilename = ui->lineEditFilePath->text(); - QString inFilename = ui->lineEditFilePath->text(); + if (!inFilename.isEmpty()) + { + if (hybridcrypt.isUserKeyInitialised() || + QMessageBox::Yes == QMessageBox::question(this, + tr("Kein Schlüssel importiert"), + tr("Sie haben keinen eigenen Schlüssel angelegt.\nWollen Sie trotzdem fortfahren?"))) + { - // outFile Diaglog findet in PublicKeyImportDialog statt. + PublicKeyImportDialog publicKeyImport; - if (!inFilename.isEmpty()) - { if (publicKeyImport.exec()) { try @@ -83,17 +85,19 @@ void MainWindow::on_pushButtonEncrypt_clicked() } catch (CryptException e) { + statusBar()->clearMessage(); QMessageBox::critical(this, tr("Fehler beim Verschlüsselen"), e.what()); } } } - else - { - QMessageBox::information(this, tr("Keine Datei ausgewählt"), - tr("Sie haben keine Datei ausgewählt.\nEntschlüsselung hat nicht statt gefunden.")); - ui->lineEditFilePath->setFocus(); - } } + else + { + QMessageBox::information(this, tr("Keine Datei ausgewählt"), + tr("Sie haben keine Datei ausgewählt.\nWählen Sie eine Datei vor dem Entschlüsseln.")); + ui->lineEditFilePath->setFocus(); + } + } void MainWindow::on_pushButtonOpenFile_clicked() @@ -123,18 +127,14 @@ void MainWindow::on_actionImport_triggered() try { hybridcrypt.importUserKeypair(filename, pwd.getPassword()); + statusBar()->showMessage("Import war erfolgreich.", messageTimeout); } catch (CryptException e) { + statusBar()->clearMessage(); QMessageBox::critical(this, tr("Fehler beim Importieren"), e.what()); } } - else - { - QMessageBox::information(this, tr("Keine Datei ausgewählt"), - tr("Sie haben keine Datei ausgewählt, der Import hat nicht statt gefunden.")); - } - } void MainWindow::on_actionExportMyKeypair_triggered() @@ -144,15 +144,17 @@ void MainWindow::on_actionExportMyKeypair_triggered() QString expoKeyFileName = QFileDialog::getSaveFileName(this, tr("Export Datei für den Schlüssel"), QDir::homePath(), tr("Schlüssel Dateien (*.pem)")); - PasswordDialog pwd; if (!expoKeyFileName.isEmpty()) { + PasswordDialog pwd; + pwd.exec(); try { hybridcrypt.exportUserKeypair(expoKeyFileName, pwd.getPassword()); + statusBar()->showMessage("Export war erflogreich.", messageTimeout); } catch (CryptException e) { @@ -160,11 +162,6 @@ void MainWindow::on_actionExportMyKeypair_triggered() } } - else - { - QMessageBox::warning(this, tr("Keine Schlüsseldatei ausgewählt"), - tr("Sie haben keinen Zielort für die Datei ausgewählt. Exportieren wurden nicht durchgeführt.")); - } } } @@ -182,17 +179,13 @@ void MainWindow::on_actionExportMyPublicKey_triggered() try { hybridcrypt.exportPublicUserKey(expoKeyFileName); + statusBar()->showMessage("Export war erfolgreich.", messageTimeout); } catch (CryptException e) { QMessageBox::critical(this, tr("Fehler beim Exportieren"), e.what()); } } - else - { - QMessageBox::warning(this, tr("Keine Schlüsseldatei ausgewählt"), - tr("Sie haben keine Zielort für die Datei ausgewählt. Exportieren wurden nicht durchgeführt.")); - } } } @@ -221,8 +214,7 @@ void MainWindow::on_actionCreateKeypair_triggered() { hybridcrypt.createKeypair(); - QMessageBox::information(this, tr("Erzeugen war erfolgreich"), - tr("Erzeugen des Schlüssels war erfolgreich.")); + statusBar()->showMessage("Erzeugen war erfolgreich.", messageTimeout); } catch (CryptException e) { |
