/* * This file is part of smolbote. It's copyrighted by the contributors recorded * in the version control history of the file, available from its original * location: https://neueland.iserlohn-fortress.net/smolbote.hg * * SPDX-License-Identifier: GPL-3.0 */ #include "aboutdialog.h" #include "ui_aboutdialog.h" #include #include #include "version.h" #include // compiler // clang also defines __GNUC__, so we need to check for clang first #if defined(__clang__) #define compiler "Clang " __clang_version__ #elif defined(__GNUC__) #define compiler "GCC " __VERSION__ #elif defined(_MSC_VER) #define compiler "MSVC" #else #define compiler "unknown compiler" #endif inline QString getPluginList() { auto *browser = qobject_cast(qApp); Q_CHECK_PTR(browser); QString plugins; for(const Plugin &p : browser->plugins()) { plugins.append(QString("
  • %1 (%2)
  • ").arg(p.name, p.author)); } if(!plugins.isEmpty()) plugins = "Loaded plugins:
      " + plugins + "setupUi(this); ui->icon->setPixmap(qApp->windowIcon().pixmap(72, 72)); auto *aboutLabel = new QLabel(this); aboutLabel->setWordWrap(true); aboutLabel->setText(tr("

      smolbote %1

      " "

      yet another no-frills browser

      " "

      This program is free software, and is built upon other free software: Qt " QT_VERSION_STR " and Boost " BOOST_LIB_VERSION "

      ") .arg(qApp->applicationVersion())); ui->toolBox->addItem(aboutLabel, tr("About")); auto *licenseLabel = new QLabel(this); licenseLabel->setWordWrap(true); licenseLabel->setText(tr("

      Copyright 2017 - 2018 aqua

      " "

      This program is free software, and you are welcome to use it under the conditions set by the GNU GPLv3.
      " "This is a short summary:

        " "
      • the freedom to use the software for any purpose,
      • " "
      • the freedom to change the software to suit your needs,
      • " "
      • the freedom to share the software with anyone,
      • " "
      • the freedom to share the changes you make, and
      • " "
      • the responsibility to grant the same freedoms when sharing the software.
      • " "
      " "

      This program is distributed in the hope that it will be useful, but without any warranty.

      ")); ui->toolBox->addItem(licenseLabel, tr("License")); auto *detailsLabel = new QLabel(this); detailsLabel->setWordWrap(true); detailsLabel->setText(tr("

      Build " SMOLBOTE_BRANCH ":" SMOLBOTE_COMMIT "

      " "

      Compiled with " compiler "

      " "

      %1

      ").arg(getPluginList())); ui->toolBox->addItem(detailsLabel, tr("Details")); } AboutDialog::~AboutDialog() { delete ui; }