summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swift/QtUI/QtCertificateViewerDialog.h')
-rw-r--r--Swift/QtUI/QtCertificateViewerDialog.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/Swift/QtUI/QtCertificateViewerDialog.h b/Swift/QtUI/QtCertificateViewerDialog.h
new file mode 100644
index 0000000..9475a83
--- /dev/null
+++ b/Swift/QtUI/QtCertificateViewerDialog.h
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2012 Tobias Markmann
+ * Licensed under the simplified BSD license.
+ * See Documentation/Licenses/BSD-simplified.txt for more information.
+ */
+
+#pragma once
+
+#include <QDialog>
+#include <QList>
+#include <QSslCertificate>
+#include <QTreeWidgetItem>
+
+#include <Swiften/TLS/Certificate.h>
+
+namespace Ui {
+class QtCertificateViewerDialog;
+}
+
+namespace Swift {
+
+class QtCertificateViewerDialog : public QDialog {
+ Q_OBJECT
+
+ public:
+ explicit QtCertificateViewerDialog(QWidget* parent = 0);
+ ~QtCertificateViewerDialog();
+
+ void setCertificateChain(const std::vector<Certificate::ref>& chain);
+
+ static void displayCertificateChainAsSheet(QWidget* parent, const std::vector<Certificate::ref>& chain);
+
+ private slots:
+ void currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*);
+
+ private:
+ void setCertificateDetails(const QSslCertificate& cert);
+
+ private:
+ Ui::QtCertificateViewerDialog *ui;
+ QList<QSslCertificate> currentChain;
+};
+
+}