Mercurial > trustbridge
annotate ui/aboutdialog.cpp @ 1109:6594e8e63a25
(issue115) Add tooltips and fix manual changes handling
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Mon, 15 Sep 2014 19:02:17 +0200 |
parents | fa68e5aeeaac |
children | 1171a4778562 |
rev | line source |
---|---|
404 | 1 /* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik |
2 * Software engineering by Intevation GmbH | |
3 * | |
4 * This file is Free Software under the GNU GPL (v>=2) | |
5 * and comes with ABSOLUTELY NO WARRANTY! | |
6 * See LICENSE.txt for details. | |
7 */ | |
199 | 8 #include "aboutdialog.h" |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
9 #include <QApplication> |
199 | 10 #include <QDebug> |
11 #include <QVBoxLayout> | |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
12 #include <QHBoxLayout> |
199 | 13 #include <QPushButton> |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
14 #include <QLabel> |
199 | 15 |
16 AboutDialog::AboutDialog(QMainWindow *parent) : | |
17 QDialog(parent) | |
18 { | |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
19 setWindowTitle("About TrustBridge"); |
199 | 20 setupGUI(); |
21 } | |
22 | |
23 void AboutDialog::setupGUI() | |
24 { | |
25 QVBoxLayout *mainLayout = new QVBoxLayout(this); | |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
26 QHBoxLayout *headerLayout = new QHBoxLayout; |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
27 QVBoxLayout *headerTextLayout = new QVBoxLayout; |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
28 QVBoxLayout *centerLayout = new QVBoxLayout; |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
29 QHBoxLayout *bottomLayout = new QHBoxLayout; |
199 | 30 |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
31 QLabel *title = new QLabel("<h2>" + tr("TrustBridge") + "</h2>"); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
32 QString version = tr("Version: "); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
33 version.append(QApplication::applicationVersion()); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
34 QLabel *appVersion = new QLabel(version); |
568
8dbfd0cb534b
Made text selectable in about dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
531
diff
changeset
|
35 appVersion->setTextInteractionFlags( |
8dbfd0cb534b
Made text selectable in about dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
531
diff
changeset
|
36 Qt::TextSelectableByMouse | |
8dbfd0cb534b
Made text selectable in about dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
531
diff
changeset
|
37 Qt::TextSelectableByKeyboard); |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
38 |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
39 headerTextLayout->addWidget(title); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
40 headerTextLayout->addWidget(appVersion); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
41 headerLayout->addLayout(headerTextLayout); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
42 headerLayout->insertStretch(2, 10); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
43 |
531
dec797c7230c
Fix usage of OU / O
Andre Heinecke <aheinecke@intevation.de>
parents:
428
diff
changeset
|
44 QLabel *textDesc = new QLabel(tr("TrustBridge is a root certificate" |
807
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
45 " installer for Windows and GNU/Linux.<br/>") + |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
46 tr("The root certificate lists are managed" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
47 " by the German <a href=\"https://www.bsi.bund.de\">" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
48 "Federal Office for Information Security (BSI)</a>.<br/><br/>") + |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
49 tr("The software was developed by the companies" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
50 " <a href=\"http://www.intevation.de\">Intevation GmbH</a> and " |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
51 " <a href=\"http://www.dn-systems.de\">DN-Systems GmbH</a>, <br>" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
52 " contracted by the German Federal Office for Information Security (BSI).<br/><br/>") + |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
53 tr("TrustBridge is Free Software licensed" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
54 " under GNU GPL v2+.<br/><br/>Copyright (C) 2014 by Bundesamt für Sicherheit" |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
55 " in der Informationstechnik")); |
1e18d4c1932a
Unify about dialog labels and Remove Trustbridge header
Andre Heinecke <andre.heinecke@intevation.de>
parents:
568
diff
changeset
|
56 textDesc->setTextFormat(Qt::RichText); |
568
8dbfd0cb534b
Made text selectable in about dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
531
diff
changeset
|
57 textDesc->setTextInteractionFlags( |
8dbfd0cb534b
Made text selectable in about dialog.
Raimund Renkert <rrenkert@intevation.de>
parents:
531
diff
changeset
|
58 Qt::TextSelectableByMouse | |
844
fa68e5aeeaac
Make links clickable and also change the about info in mainwindow.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
843
diff
changeset
|
59 Qt::TextSelectableByKeyboard | |
fa68e5aeeaac
Make links clickable and also change the about info in mainwindow.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
843
diff
changeset
|
60 Qt::LinksAccessibleByMouse); |
843
c27a9b2b096e
Allow to open external links from aboutdialog label.
Emanuel Schuetze <emanuel@intevation.de>
parents:
807
diff
changeset
|
61 textDesc->setOpenExternalLinks(true); |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
62 |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
63 centerLayout->addWidget(textDesc); |
428
d1819cd56dee
Updated dialog layout.
Raimund Renkert <rrenkert@intevation.de>
parents:
427
diff
changeset
|
64 centerLayout->insertStretch(8, 10); |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
65 |
199 | 66 QPushButton *closeButton = new QPushButton(tr("Close")); |
67 connect(closeButton, SIGNAL(clicked()), this, SLOT(close())); | |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
68 bottomLayout->insertStretch(0, 10); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
69 bottomLayout->addWidget(closeButton); |
199 | 70 |
427
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
71 QFrame *bottomSeparator = new QFrame(); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
72 bottomSeparator->setFrameShape(QFrame::HLine); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
73 bottomSeparator->setFrameShadow(QFrame::Sunken); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
74 mainLayout->addLayout(headerLayout); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
75 mainLayout->addLayout(centerLayout); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
76 mainLayout->addWidget(bottomSeparator); |
d08e39b913ee
Added about dialog content and open the dialog via administration app.
Raimund Renkert <rrenkert@intevation.de>
parents:
404
diff
changeset
|
77 mainLayout->addLayout(bottomLayout); |
199 | 78 } |