Mercurial > trustbridge
view ui/certificatelistwidget.h @ 668:ef6d3dc9e930
Framework for NSS multiuser installation on windows
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 26 Jun 2014 17:42:24 +0200 |
parents | 39f03316f675 |
children | 973a7ce19658 |
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #ifndef CERTIFICATELISTWIDGET_H #define CERTIFICATELISTWIDGET_H #include <QWidget> #include <QMainWindow> #include <QLabel> #include <QListWidget> #include "certificate.h" /** * @file certificatelistwidget.h * @brief Displays a list of certificates and a details panel for a selected * certificate. */ Q_DECLARE_METATYPE(Certificate); class CertificateListWidget : public QWidget { Q_OBJECT public: CertificateListWidget(QWidget *parent, Qt::WindowFlags flags = 0); void addCertificate(const Certificate &certificate, bool state, bool editable = true); void addCertificates(const QList<Certificate> &list); void removeCertificate(const Certificate &cert); void setCertState(bool state, const Certificate &cert); void clear(); QStringList certificates(); QStringList selectedCertificates(); QStringList unselectedCertificates(); QList<Certificate> certificateList(); int selectedCertCount(); bool contains(const Certificate &cert); void setSelected(int index); private: void setupGUI(); QListWidget *mCertificateList; QLabel *mSubjectCN; QLabel *mSubjectO; QLabel *mIssuerCN; QLabel *mIssuerO; QLabel *mValidFrom; QLabel *mValidTo; QLabel *mFingerprint; private slots: void updateDetails(QListWidgetItem *item); void certStateChanged(bool state, const Certificate &cert); signals: void certListChanged(int selected); void certChanged(bool state, const Certificate &cert); }; #endif // CERTIFICATELISTWIDGET_H