23 #include "aboutdialog.h"    25 #include "gui/copytextdlg.h"    26 #include "plugins/engineplugin.h"    27 #include "plugins/pluginloader.h"    28 #include "ui_aboutdialog.h"    29 #include "wadseeker/wadseekerversioninfo.h"    35 DClass<AboutDialog> : 
public Ui::AboutDialog
    45         connect(d->buttonBox, SIGNAL( clicked(QAbstractButton *) ), SLOT( close() ));
    50         d->lblRevision->setText(QString::number(Version::revisionNumber()));
    51         d->logo->setPixmap(QPixmap(
":/logo.png"));
    52         d->pteCopyrightNotice->setPlainText(copyrightVerboseNotice());
    55         d->wadseekerAuthor->setText(WadseekerVersionInfo::author());
    56         d->wadseekerDescription->setText(WadseekerVersionInfo::description());
    57         d->wadseekerVersion->setText(WadseekerVersionInfo::version());
    58         d->wadseekerYearSpan->setText(WadseekerVersionInfo::yearSpan());
    61         for(
unsigned i = 0; i < gPlugins->numPlugins(); ++i)
    63                 d->pluginBox->addItem( gPlugins->plugin(i)->info()->data()->name);
    65         connect(d->pluginBox, SIGNAL( currentIndexChanged(
int) ), SLOT( changePlugin(
int) ));
    68         d->jsonLayout->setAlignment(d->btnJsonLicense, Qt::AlignTop);
    72 AboutDialog::~AboutDialog()
    76 void AboutDialog::changePlugin(
int pluginIndex)
    78         if(static_cast<unsigned> (pluginIndex) >= gPlugins->numPlugins())
    81         const EnginePlugin* plug = gPlugins->plugin(pluginIndex)->info();
    84                 d->pluginDescription->setPlainText(
"") :
    85                 d->pluginDescription->setPlainText(plug->data()->
aboutProvider->provide());
    86         d->pluginAuthor->setText(plug->data()->author);
    87         d->pluginVersion->setText(QString(
"Version: %1.%2").arg(plug->data()->abiVersion).arg(plug->data()->version));
    90 QString AboutDialog::copyrightVerboseNotice()
 const    95         QStringList paragraphs;
    98         QChar copyrightChar(0x00a9);
    99         QChar smallAGraveChar(0x00e0);
   102         paragraphs << tr(
"Copyright %1 %2 The Doomseeker Team")
   103                 .arg(copyrightChar).arg(Version::yearSpan());
   104         paragraphs << tr(
"This program is distributed under the terms of the LGPL v2.1 or later.");
   107         paragraphs << tr(
"Doomseeker translations contributed by:\n")
   108                 + tr(
"- Polish: Zalewa") + 
"\n"   109                 + tr(
"- Spanish: Pol Marcet Sard%1").arg(smallAGraveChar);
   112         paragraphs << tr(
"This program uses GeoLite2 data for IP-to-Country (IP2C) purposes, "   113                 "available from https://www.maxmind.com") + 
"\n" +
   114                 tr(
"Database and Contents Copyright (c) 2018 MaxMind, Inc.");
   115         paragraphs << tr(
"GeoLite2 License:\n"   116                 "This work is licensed under the Creative Commons Attribution - ShareAlike 4.0 Unported License. "   117                 "To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/.");
   118         paragraphs << tr(
"GeoLite2 available at:\n"   119                 "https://dev.maxmind.com/geoip/geoip2/geolite2/");
   123         icons << tr(
"- Aha-Soft");
   124         icons << tr(
"- Crystal Clear by Everaldo Coelho");
   125         icons << tr(
"- Fugue Icons (C) 2013 Yusuke Kamiyamane. All rights reserved.");
   126         icons << tr(
"- Nuvola 1.0 (KDE 3.x icon set)");
   127         icons << tr(
"- Oxygen Icons 4.3.1 (KDE)");
   128         icons << tr(
"- Silk Icon Set (C) Mark James (famfamfam.com)");
   129         icons << tr(
"- Tango Icon Library / Tango Desktop Project");
   130         paragraphs << tr(
"This program uses icons (or derivates of) from following sources:\n") + icons.join(
"\n");
   132         return paragraphs.join(
"\n\n");
   135 void AboutDialog::showJsonLicense()
   137         QResource license(
"LICENSE.json");
   138         QString licenseText = QString::fromUtf8(
   139                 reinterpret_cast<const char*>(license.data()),
   141         CopyTextDlg dialog(licenseText, tr(
"JSON library license"), 
this);
   142         dialog.resize(550, dialog.height());
 QScopedPointer< TextProvider > aboutProvider
Description of the plugin, intended to be displayed in the "About" dialog. 
static QString versionRevision()
Combines version and revision strings. 
static QString changeset()