aboutsummaryrefslogtreecommitdiff
path: root/src/certificateiodialog.hpp
diff options
context:
space:
mode:
authorFelix (xq) Queißner <git@mq32.de>2020-06-20 10:35:43 +0200
committerFelix (xq) Queißner <git@mq32.de>2020-06-20 10:35:43 +0200
commit5a610c82fc4fc52d69cdd4773ad421e04c53840e (patch)
treea4aca77a306a2f07f86722bb6b5c80a0b61869b9 /src/certificateiodialog.hpp
parent7fe42f659e53092b314a0542871c417e768bb6da (diff)
downloadkristall-5a610c82fc4fc52d69cdd4773ad421e04c53840e.tar.gz
Starts implementation of certificate import/export.
Diffstat (limited to 'src/certificateiodialog.hpp')
-rw-r--r--src/certificateiodialog.hpp50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/certificateiodialog.hpp b/src/certificateiodialog.hpp
new file mode 100644
index 0000000..590b282
--- /dev/null
+++ b/src/certificateiodialog.hpp
@@ -0,0 +1,50 @@
+#ifndef CERTIFICATEIODIALOG_HPP
+#define CERTIFICATEIODIALOG_HPP
+
+#include <QDialog>
+#include <QSsl>
+
+namespace Ui {
+class CertificateIoDialog;
+}
+
+class CertificateIoDialog : public QDialog
+{
+ Q_OBJECT
+public:
+ enum IoMode {
+ Import,
+ Export
+ };
+public:
+ explicit CertificateIoDialog(QWidget *parent = nullptr);
+ ~CertificateIoDialog();
+
+ IoMode mode() const { return this->current_mode; }
+ void setIoMode(IoMode mode);
+
+ QSsl::KeyAlgorithm keyAlgorithm() const;
+ void setKeyAlgorithm(QSsl::KeyAlgorithm alg);
+
+ QString keyFileName() const;
+ QString certificateFileName() const;
+
+private slots:
+ void on_select_certificate_file_button_clicked();
+
+ void on_select_key_file_button_clicked();
+
+ void on_certificate_file_name_textChanged(const QString &arg1);
+
+ void on_key_file_name_textChanged(const QString &arg1);
+
+private:
+ void updateUI();
+
+private:
+ Ui::CertificateIoDialog *ui;
+
+ IoMode current_mode;
+};
+
+#endif // CERTIFICATEIODIALOG_HPP