2 #include "../misc/dialogutils.h" 4 #include "ui_aboutdialog.h" 6 #include <QApplication> 7 #include <QDesktopWidget> 8 #include <QGraphicsPixmapItem> 39 AboutDialog::AboutDialog(QWidget *parent,
const QString &applicationName,
const QString &creator,
const QString &version,
const QString &website,
40 const QString &description,
const QImage &image)
45 makeHeading(m_ui->productNameLabel);
46 setStyleSheet(dialogStyle());
47 setWindowFlags(Qt::Tool);
48 if (!applicationName.isEmpty()) {
49 m_ui->productNameLabel->setText(applicationName);
50 }
else if (!QApplication::applicationDisplayName().isEmpty()) {
51 m_ui->productNameLabel->setText(QApplication::applicationDisplayName());
53 m_ui->productNameLabel->setText(QApplication::applicationName());
55 m_ui->creatorLabel->setText(tr(
"developed by %1").arg(creator.isEmpty() ? QApplication::organizationName() : creator));
56 m_ui->versionLabel->setText(version.isEmpty() ? QApplication::applicationVersion() : version);
57 m_ui->websiteLabel->setText(tr(
58 "For updates and bug reports visit the <a href=\"%1\" " 59 "style=\"text-decoration: underline; color: palette(link);\">project " 60 "website</a>.").arg(website.isEmpty() ? QApplication::organizationDomain() : website));
61 m_ui->descLabel->setText(description);
62 m_iconScene =
new QGraphicsScene(
this);
63 auto *item = image.isNull()
64 ?
new QGraphicsPixmapItem(QApplication::style()->standardIcon(QStyle::SP_MessageBoxInformation,
nullptr,
this).pixmap(128))
65 :
new QGraphicsPixmapItem(QPixmap::fromImage(image));
66 m_iconScene->addItem(item);
67 m_ui->graphicsView->setScene(m_iconScene);
68 setGeometry(QStyle::alignedRect(
69 Qt::LeftToRight, Qt::AlignCenter, size(), parentWidget() ? parentWidget()->geometry() : QApplication::desktop()->availableGeometry()));
77 :
AboutDialog(parent, QString(), QString(), QString(), QString(), description, image)
AboutDialog(QWidget *parent, const QString &applicationName, const QString &creator, const QString &version, const QString &website=QString(), const QString &description=QString(), const QImage &image=QImage())
Constructs an about dialog with the provided information.
Provides common dialogs such as AboutDialog, EnterPasswordDialog and SettingsDialog.
~AboutDialog()
Destroys the about dialog.
The AboutDialog class provides a simple about dialog.