# HG changeset patch # User Raimund Renkert # Date 1397117272 -7200 # Node ID 4454a4dc73a38425f2d118b5dcfeb880e6917897 # Parent e3d6de930c9054255f9758cb2b0fcca45fc72aee Added file dialog to load a certificate list from file. diff -r e3d6de930c90 -r 4454a4dc73a3 ui/administratorwindow.cpp --- a/ui/administratorwindow.cpp Thu Apr 10 10:06:47 2014 +0200 +++ b/ui/administratorwindow.cpp Thu Apr 10 10:07:52 2014 +0200 @@ -13,8 +13,7 @@ #include #include #include - -#include "certificatetablemodel.h" +#include AdministratorWindow::AdministratorWindow() { createActions(); @@ -90,6 +89,7 @@ bottomLayout->setAlignment(Qt::AlignBottom); saveButton = new QPushButton(tr("Save")); loadButton = new QPushButton(tr("Load")); + connect(loadButton, SIGNAL(clicked()), this, SLOT(loadCertificateFile())); addButton = new QPushButton(tr("Add")); removeButton = new QPushButton(tr("Remove")); bottomLayout->addWidget(saveButton); @@ -111,6 +111,26 @@ QHeaderView::Stretch); } +void AdministratorWindow::loadCertificateFile() +{ + QString certFile = QFileDialog::getOpenFileName( + this, tr("Select certificate file"), "/home/rrenkert/local-home/projects/m13/src/repo/ui/tests/data/", "*.txt"); + qDebug() << "selected: " + certFile; + certList.readList(certFile.toLocal8Bit().constData()); + if (!certList.isValid()) { + qDebug() << "Not a valid list."; + } + else { + loadCertificateTable(); + } +} + +void AdministratorWindow::loadCertificateTable() { + foreach(const Certificate &cert, certList.getCertificates()) { + certificateModel->addCertificate(cert); + } +} + void AdministratorWindow::showSettings() { qDebug() << "show settingsdialog"; diff -r e3d6de930c90 -r 4454a4dc73a3 ui/administratorwindow.h --- a/ui/administratorwindow.h Thu Apr 10 10:06:47 2014 +0200 +++ b/ui/administratorwindow.h Thu Apr 10 10:07:52 2014 +0200 @@ -30,11 +30,13 @@ void showSettings(); void showHelp(); void showAbout(); + void loadCertificateFile(); private: void createActions(); void createMenuBar(); void createContent(); + void loadCertificateTable(); QSettings settings;