Mercurial > trustbridge
diff ui/aboutdialog.cpp @ 427:d08e39b913ee
Added about dialog content and open the dialog via administration app.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Thu, 17 Apr 2014 12:56:23 +0200 |
parents | 17e1c8f37d72 |
children | d1819cd56dee |
line wrap: on
line diff
--- a/ui/aboutdialog.cpp Thu Apr 17 12:06:57 2014 +0200 +++ b/ui/aboutdialog.cpp Thu Apr 17 12:56:23 2014 +0200 @@ -6,30 +6,79 @@ * See LICENSE.txt for details. */ #include "aboutdialog.h" +#include <QApplication> #include <QDebug> #include <QVBoxLayout> -#include <QTextEdit> +#include <QHBoxLayout> #include <QPushButton> +#include <QLabel> AboutDialog::AboutDialog(QMainWindow *parent) : QDialog(parent) { + setWindowTitle("About TrustBridge"); setupGUI(); } void AboutDialog::setupGUI() { QVBoxLayout *mainLayout = new QVBoxLayout(this); - QTextEdit *helpText = new QTextEdit; - helpText->setReadOnly(true); - helpText->setPlainText(tr("This dialog contains some text about the application")); + QHBoxLayout *headerLayout = new QHBoxLayout; + QVBoxLayout *headerTextLayout = new QVBoxLayout; + QVBoxLayout *centerLayout = new QVBoxLayout; + QHBoxLayout *bottomLayout = new QHBoxLayout; - QHBoxLayout *buttonLayout = new QHBoxLayout; + QImage *logoImage = new QImage(":/img/logo.png"); + QLabel *logo = new QLabel; + logo->setBackgroundRole(QPalette::Base); + logo->setPixmap(QPixmap::fromImage(*logoImage)); + QLabel *title = new QLabel("<h2>" + tr("TrustBridge") + "</h2>"); + QString version = tr("Version: "); + version.append(QApplication::applicationVersion()); + QLabel *appVersion = new QLabel(version); + + QFrame *headerSeparator = new QFrame(); + headerSeparator->setFrameShape(QFrame::HLine); + headerSeparator->setFrameShadow(QFrame::Sunken); + + headerTextLayout->addWidget(title); + headerTextLayout->addWidget(appVersion); + headerLayout->addWidget(logo); + headerLayout->addLayout(headerTextLayout); + headerLayout->insertStretch(2, 10); + + QLabel *textDesc = new QLabel(tr("TrustBridge is a secure root certificate" + " installer for Windows and Linux.")); + QLabel *textManage = new QLabel(tr("The root certificate lists are managed" + " by the German <a href=\"https://www.bsi.bund.de\">" + "Federal Office for Information Security (BSI)</a>.\n\n")); + QLabel *textDevel = new QLabel(tr("The software was developed by the companies" + " <a href=\"http://www.intevation.de\">Intevation GmbH</a> and " + " <a href=\"http://www.dn-systems.de\">DN-Systems GmbH</a>, <br>" + " contracted by the German Federal Office for Information Security (BSI).\n\n")); + QLabel *textLicense = new QLabel(tr("TrustBridge is Free Software licensed" + " under GNU GPL v2+.\n\nCopyright (C) 2014 by Bundesamt für Sicherheit" + " in der Informationstechnik")); + + centerLayout->addWidget(headerSeparator); + centerLayout->addWidget(textDesc); + centerLayout->addWidget(textManage); + centerLayout->addWidget(textDevel); + centerLayout->addWidget(textLicense); + centerLayout->insertSpacing(2, 10); + centerLayout->insertSpacing(4, 10); + centerLayout->insertSpacing(6, 10); + QPushButton *closeButton = new QPushButton(tr("Close")); connect(closeButton, SIGNAL(clicked()), this, SLOT(close())); - buttonLayout->insertStretch(0, 10); - buttonLayout->addWidget(closeButton); + bottomLayout->insertStretch(0, 10); + bottomLayout->addWidget(closeButton); - mainLayout->addWidget(helpText); - mainLayout->addLayout(buttonLayout); + QFrame *bottomSeparator = new QFrame(); + bottomSeparator->setFrameShape(QFrame::HLine); + bottomSeparator->setFrameShadow(QFrame::Sunken); + mainLayout->addLayout(headerLayout); + mainLayout->addLayout(centerLayout); + mainLayout->addWidget(bottomSeparator); + mainLayout->addLayout(bottomLayout); }