#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include #include #include #include #include #include #include "crypt/hybridcrypt.h" #include "passworddialog.h" #include "publickeyimportdialog.h" namespace Ui { class MainWindow; } /** * @brief Eine Klasse die sich um die GUI kümmert. */ class MainWindow : public QMainWindow { Q_OBJECT public: /** * @brief Ist der Konstrucktor der eine Objekt der Klasse erzeugt. * @param parent ist der Zeiger auf das Elter Fenster. */ explicit MainWindow(QWidget *parent = 0); ~MainWindow(); private slots: /** * @brief Entschlüsselt die Datei. * öfnet PublicKeyImportDialog * und Speichert Entschlüsselt Datei ap. */ void on_pushButtonDecrypt_clicked(); /** * @brief Verschlüsselt eine Datei. * öffnet DateiDialog für Verschlüsselte Datei. * Speichert Entschlüsselte Datei ab. */ void on_pushButtonEncrypt_clicked(); /** * @brief Öfnete ein Datei. * öffnet DateiDialog für eine Klartext Datei. * Schreibt Dateipfart in lineEditFilePath(ChangeEvent). */ void on_pushButtonOpenFile_clicked(); /** * @brief Beendet die Anwendung. */ void on_actionClose_triggered(); /** * @brief Erzeugt ein neus Schlüsselpaar. * Schlüssel werden nur im Progamm gespeichert. */ void on_actionCreateKeypair_triggered(); /** * @brief Improtier ein Schlüsselpaar aus einer Datei. */ void on_actionImport_triggered(); /** * @brief Exportirt das im Programm vorhanden Schlüsselpaar. */ void on_actionExportMyKeypair_triggered(); /** * @brief Exportirt den im Programm vorhandenen Öffentlichenschlüssel. */ void on_actionExportMyPublicKey_triggered(); /** * @brief Setzt den text in aus der Datei in textEditPreview. * Datei wir nur angezeigt wen sie auf .txt oder .log ändert. * @param text der Text der in lineEditFilePath enthalten ist. */ void on_lineEditFilePath_textChanged(const QString &text); private: /** * @brief Zeit in Sekunden die Nachrichten in der Statusbar angezeigt wird. */ static const int messageTimeout = 20000; /** * @brief Ist */ HybridCrypt hybridcrypt; Ui::MainWindow *ui; }; #endif // MAINWINDOW_H