Warning, file /utilities/kronometer/src/main.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 SPDX-FileCopyrightText: 2014 Elvis Angelaccio <elvis.angelaccio@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "sessionmodel.h" 0008 #include "mainwindow.h" 0009 #include "version.h" 0010 0011 #include <KAboutData> 0012 #include <KCrash> 0013 #include <KLocalizedString> 0014 0015 #include <QApplication> 0016 #include <QDir> 0017 #include <QFileInfo> 0018 #include <QStandardPaths> 0019 0020 int main (int argc, char **argv) 0021 { 0022 KLocalizedString::setApplicationDomain("kronometer"); 0023 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) 0024 QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps, true); 0025 QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling, true); 0026 #endif 0027 QApplication app {argc, argv}; 0028 0029 KCrash::initialize(); 0030 0031 auto aboutData = KAboutData { 0032 QStringLiteral("kronometer"), // componentName 0033 i18nc("KAboutData display name", "Kronometer"), 0034 QStringLiteral(KRONOMETER_VERSION_STRING), 0035 i18n("Kronometer is a simple stopwatch application"), // shortDescription 0036 KAboutLicense::GPL_V2, // licenseType 0037 i18n("Copyright (C) 2014-2016 Elvis Angelaccio"), // copyrightStatement 0038 {}, // otherText 0039 QStringLiteral("https://userbase.kde.org/Kronometer") // homePageAddress 0040 }; 0041 0042 aboutData.addAuthor( 0043 i18n("Elvis Angelaccio"), 0044 i18n("Maintainer"), 0045 QStringLiteral("elvis.angelaccio@kde.org"), 0046 QStringLiteral("https://eang.it") 0047 ); 0048 0049 aboutData.addCredit( 0050 i18n("Ken Vermette"), 0051 i18n("Kronometer icon"), 0052 QStringLiteral("vermette@gmail.com") 0053 ); 0054 0055 KAboutData::setApplicationData(aboutData); 0056 0057 app.setApplicationName(aboutData.componentName()); 0058 app.setApplicationDisplayName(aboutData.displayName()); 0059 app.setOrganizationDomain(aboutData.organizationDomain()); 0060 app.setApplicationVersion(aboutData.version()); 0061 app.setWindowIcon(QIcon::fromTheme(QStringLiteral("kronometer"))); 0062 0063 // Make sure that the local data directory is available. 0064 auto appdata = QFileInfo {QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation)}; 0065 if (!appdata.exists()) { 0066 auto dir = QDir {appdata.absolutePath()}; 0067 dir.mkdir(appdata.fileName()); 0068 } 0069 0070 SessionModel sessionModel; 0071 auto window = new MainWindow {&sessionModel}; 0072 window->show(); 0073 0074 return app.exec(); 0075 }