aheinecke@404: /* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik aheinecke@404: * Software engineering by Intevation GmbH aheinecke@404: * aheinecke@404: * This file is Free Software under the GNU GPL (v>=2) aheinecke@404: * and comes with ABSOLUTELY NO WARRANTY! aheinecke@404: * See LICENSE.txt for details. aheinecke@404: */ rrenkert@333: #ifndef ADMINSTRATORWINDOW_H rrenkert@333: #define ADMINSTRATORWINDOW_H rrenkert@333: rrenkert@333: /** rrenkert@333: * @file administratorwindow.h rrenkert@333: * @brief Administrator UI controller rrenkert@333: */ rrenkert@333: rrenkert@333: #include rrenkert@333: #include rrenkert@333: #include rrenkert@335: #include rrenkert@333: #include rrenkert@333: rrenkert@343: #include "certificatelist.h" rrenkert@343: #include "certificatetablemodel.h" rrenkert@343: rrenkert@333: class QMenu; rrenkert@333: class QAction; rrenkert@333: rrenkert@333: class AdministratorWindow : public QMainWindow rrenkert@333: { rrenkert@333: Q_OBJECT rrenkert@333: rrenkert@333: public: rrenkert@333: AdministratorWindow(); rrenkert@333: aheinecke@453: /** @brief obtain a const reference to the certificate List aheinecke@453: * @returns the current certificatelist aheinecke@453: */ aheinecke@453: const CertificateList& certList() const {return mCertList;} aheinecke@453: aheinecke@453: /** @brief get the settings for this application aheinecke@453: * @returns a reference the applications settings object aheinecke@453: */ aheinecke@453: QSettings* settings() {return &mSettings;} aheinecke@453: rrenkert@333: private slots: rrenkert@333: void createInstaller(); rrenkert@333: void showAbout(); rrenkert@344: void loadCertificateFile(); rrenkert@368: void saveCertificateFile(); rrenkert@358: void addCertificates(); rrenkert@376: void removeCertificates(); rrenkert@376: void clickedCertificate(const QModelIndex&); rrenkert@333: rrenkert@333: private: rrenkert@333: void createActions(); rrenkert@333: void createMenuBar(); rrenkert@333: void createContent(); rrenkert@344: void loadCertificateTable(); rrenkert@358: void addToCertificateTable(const QList &certs); rrenkert@333: aheinecke@453: QSettings mSettings; rrenkert@333: rrenkert@333: QMenuBar *menuBar; rrenkert@333: rrenkert@335: QTableView *certificateView; aheinecke@453: CertificateList mCertList; rrenkert@343: CertificateTabelModel *certificateModel; rrenkert@333: QPushButton *saveButton; rrenkert@333: QPushButton *loadButton; rrenkert@333: QPushButton *addButton; rrenkert@333: QPushButton *removeButton; rrenkert@333: }; rrenkert@333: rrenkert@333: #endif // ADMINSTRATORWINDOW_H