swift
aboutdialog.cpp
1 // SPDX-FileCopyrightText: Copyright (C) 2017 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
4 #include "aboutdialog.h"
5 
6 #include "ui_aboutdialog.h"
7 
8 #include "gui/guiapplication.h"
9 #include "gui/guiutility.h"
10 #include "misc/fileutils.h"
11 #include "misc/swiftdirectories.h"
12 
14 {
15  CAboutDialog::CAboutDialog(QWidget *parent) : QDialog(parent), ui(new Ui::CAboutDialog)
16  {
17  ui->setupUi(this);
18  const QPointer<CAboutDialog> myself(this);
20  this->init();
21 
22  QTimer::singleShot(0, this, [=] {
23  if (!myself) { return; }
24  myself->loadSwiftLicense();
25  });
26 
27  QTimer::singleShot(0, this, [=] {
28  if (!myself) { return; }
29  myself->loadThirdPartyLicenses();
30  });
31  }
32 
33  CAboutDialog::~CAboutDialog() = default;
34 
35  void CAboutDialog::init()
36  {
37  if (!sGui || sGui->isShuttingDown()) { return; }
38  ui->lbl_VersionValue->setText(sGui->getApplicationNameVersionDetailed());
39  ui->pte_Info->setPlainText(sGui->getInfoString("\n"));
40  ui->pte_Info->appendPlainText("\nSetup follows:\n----");
41  ui->pte_Info->appendPlainText(sGui->getGlobalSetup().convertToQString("\n", true));
42  ui->pte_Info->appendPlainText("\nScreen info follows:\n----");
43  ui->pte_Info->appendPlainText(CGuiUtility::screenInformation("\n"));
44  }
45 
46  void CAboutDialog::loadSwiftLicense()
47  {
49  swift::misc::CSwiftDirectories::legalDirectory() + "/LicenseRef-swift-pilot-client-1.html");
50  ui->tbr_swiftLicense->setHtml(html);
51  }
52 
53  void CAboutDialog::loadThirdPartyLicenses()
54  {
57  ui->tbr_ThirdPartyLicenses->setHtml(html);
58  }
59 } // namespace swift::gui::components
data::CGlobalSetup getGlobalSetup() const
Global setup.
QString getInfoString(const QString &separator) const
Comprehensive info.
bool isShuttingDown() const
Is application shutting down?
const QString & getApplicationNameVersionDetailed() const
Version, name beta and dev info.
QString convertToQString(bool i18n=false) const
Cast as QString.
Definition: globalsetup.cpp:79
static QString screenInformation(const QString &separator="\n")
Info about screens.
Definition: guiutility.cpp:184
CAboutDialog(QWidget *parent=nullptr)
Constructor.
Definition: aboutdialog.cpp:15
static QString readFileToString(const QString &fileNameAndPath)
Read file into string.
Definition: fileutils.cpp:68
static const QString & legalDirectory()
Where Legal files are located.
SWIFT_GUI_EXPORT swift::gui::CGuiApplication * sGui
Single instance of GUI application object.
High level reusable GUI components.
Definition: aboutdialog.cpp:14
WindowContextHelpButtonHint
void setWindowFlags(Qt::WindowFlags type)