X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Faboutdlg.cpp;h=840da62fdf5b29bf9980d7867443e371af13a3ea;hp=b5b7c76d36f238574ba1da3d48ea5dbfe1fb4ca5;hb=00e1a9c29e792ba4d65dba21b7ba04131bcb13bc;hpb=d82f98b8cf9c7c83f3aab1d7f010ccf8bdd2c003 diff --git a/src/qtui/aboutdlg.cpp b/src/qtui/aboutdlg.cpp index b5b7c76d..840da62f 100644 --- a/src/qtui/aboutdlg.cpp +++ b/src/qtui/aboutdlg.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -21,10 +21,12 @@ #include "aboutdlg.h" #include -#include +#include #include "aboutdata.h" +#include "icon.h" #include "quassel.h" +#include "util.h" AboutDlg::AboutDlg(QWidget *parent) : QDialog(parent) @@ -33,34 +35,48 @@ AboutDlg::AboutDlg(QWidget *parent) AboutData::setQuasselPersons(_aboutData); ui.setupUi(this); - ui.quasselLogo->setPixmap(QIcon(":/icons/quassel-64.png").pixmap(64)); // don't let the icon theme affect our logo here + ui.quasselLogo->setPixmap(QPixmap{":/pics/quassel-64.svg"}); // don't let the icon theme affect our logo here - ui.versionLabel->setText(QString(tr("Version: %1
Protocol version: %2
Built: %3")) - .arg(Quassel::buildInfo().fancyVersionString) - .arg(Quassel::buildInfo().protocolVersion) - .arg(Quassel::buildInfo().buildDate)); + QString versionDate; + if (Quassel::buildInfo().commitDate.isEmpty()) { + // This shouldn't happen, but sometimes the packaging environment cannot set a proper + // date/time. Add a fallback just in case. + versionDate = QString("%1").arg(tr("Unknown date")); + } + else { + versionDate = tryFormatUnixEpoch(Quassel::buildInfo().commitDate, + Qt::DateFormat::DefaultLocaleShortDate); + } + ui.versionLabel->setText(QString(tr("Version: %1
" + "Version date: %2
" + "Protocol version: %3")) + .arg(Quassel::buildInfo().fancyVersionString) + .arg(versionDate) + .arg(Quassel::buildInfo().protocolVersion)); ui.aboutTextBrowser->setHtml(about()); ui.authorTextBrowser->setHtml(authors()); ui.contributorTextBrowser->setHtml(contributors()); ui.thanksToTextBrowser->setHtml(thanksTo()); - setWindowIcon(QIcon::fromTheme("quassel", QIcon(":/icons/quassel.png"))); + setWindowIcon(icon::get("quassel")); } QString AboutDlg::about() const { - QString res; - res = tr("A modern, distributed IRC Client

" + QString res {tr("A modern, distributed IRC Client

" "©%1 by the Quassel Project
" - "http://quassel-irc.org
" - "#quassel on Freenode

" - "Quassel IRC is dual-licensed under GPLv2 and " - "GPLv3.
" - "Most icons are © by the Oxygen Team and used under the " - "LGPL.

" - "Please use http://bugs.quassel-irc.org to report bugs." - ).arg("2005-2015"); + "https://quassel-irc.org
" + "#quassel on Freenode

" + "Quassel IRC is dual-licensed under GPLv2 and " + "GPLv3.
" + "Breeze icon theme © Uri Herrera and others, licensed under the " + "LGPLv3.
" + "Oxygen icon theme © Nuno Pinheiro and others, licensed under the " + "LGPLv3.

" + "Please use https://bugs.quassel-irc.org to report bugs." + ).arg("2005-2018") + }; return res; } @@ -68,9 +84,8 @@ QString AboutDlg::about() const QString AboutDlg::authors() const { - QString res; - res = tr("Quassel IRC is mainly developed by:") + "
"; - for (const auto &person : _aboutData->authors()) { + QString res {tr("Quassel IRC is mainly developed by:") + "
"}; + for (auto &&person : _aboutData->authors()) { res.append("
" + person.prettyName() + "
"); if (!person.emailAddress().isEmpty()) res.append("" + person.emailAddress() + "
"); @@ -83,31 +98,36 @@ QString AboutDlg::authors() const QString AboutDlg::contributors() const { - QString res; - res = tr("We would like to thank the following contributors (in alphabetical order) and everybody we forgot to mention here:") + "
"; - for (const auto &person : _aboutData->credits()) { + QString res {tr("We would like to thank the following contributors (in alphabetical order) and everybody we forgot to mention here:") + "
"}; + for (auto &&person : _aboutData->credits()) { res.append("
" + person.prettyName() + "
" + person.task() + "
"); } res.append("
" + tr("...and anybody else finding and reporting bugs, giving feedback, helping others and being part of the community!")); - return res; } QString AboutDlg::thanksTo() const { - QString res; - res = tr("Special thanks goes to:
" - "
" - "
 John \"nox\" Hand
" - "
for the original Quassel icon - The All-Seeing Eye
" - "
 The Oxygen Team
" - "
for creating all the artwork you see throughout Quassel
" - "
 Qt Software formerly known as Trolltech
" - "
for creating Qt and Qtopia, and for sponsoring development of QuasselTopia with Greenphones and more
" - "
" - "
for sponsoring development of Quassel Mobile with N810s
" - ); + QString res {tr("Special thanks goes to:") + "
" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "
 John \"nox\" Hand
" + tr("for the original Quassel logo - The All-Seeing Eye") + "
Nuno Pinheiro
" + tr("for the Oxygen Quassel logo") + "
The KDE Visual Design Group
" + tr("for the amazing Breeze and Oxygen icon themes") + "
The Qt Company (formerly known as Qt Software, Nokia, Trolltech)
" + tr("for creating an awesome framework, and for sponsoring development with Greenphones, N810s, N950s and more") + "
" + }; return res; }