File indexing completed on 2023-09-24 11:50:56
0001 /* 0002 SPDX-FileCopyrightText: 1999-2006 Éric Bischoff <ebischoff@nerim.net> 0003 SPDX-FileCopyrightText: 2007 Albert Astals Cid <aacid@kde.org> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #include <KLocalizedString> 0009 0010 #include "toplevel.h" 0011 #include <KAboutData> 0012 #include <KCrash> 0013 #include <KDBusService> 0014 #include <QApplication> 0015 #include <QCommandLineParser> 0016 #include <QDir> 0017 0018 #include "ktuberling_version.h" 0019 0020 // Main function 0021 int main(int argc, char *argv[]) 0022 { 0023 // Fixes blurry icons with fractional scaling 0024 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) 0025 QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); 0026 #endif 0027 QApplication app(argc, argv); 0028 0029 KLocalizedString::setApplicationDomain("ktuberling"); 0030 0031 KAboutData aboutData( QStringLiteral("ktuberling"), i18n("KTuberling"), 0032 KTUBERLING_VERSION_STRING, i18n("Potato game for kids"), KAboutLicense::GPL, 0033 i18n("(c) 1999-2009, The KTuberling Developers")); 0034 aboutData.addAuthor(i18n("Albert Astals Cid"), i18n("Maintainer"), QStringLiteral("aacid@kde.org")); 0035 aboutData.addAuthor(i18n("Éric Bischoff"), i18n("Former Developer"), QStringLiteral("ebischoff@nerim.net")); 0036 aboutData.addCredit(i18n("John Calhoun"), i18n("Original concept and artwork")); 0037 aboutData.addCredit(i18n("Agnieszka Czajkowska"), i18n("New artwork"), QStringLiteral("agnieszka@imagegalaxy.de")); 0038 aboutData.addCredit(i18n("Bas Willems"), i18n("New artwork"), QStringLiteral("cybersurfer@euronet.nl")); 0039 aboutData.addCredit(i18n("Roger Larsson"), i18n("Sounds tuning"), QStringLiteral("roger.larsson@norran.net")); 0040 aboutData.addCredit(i18n("Dolores Almansa"), i18n("New artwork"), QStringLiteral("dolores.almansa@corazondemaria.org")); 0041 aboutData.setHomepage(QStringLiteral("https://apps.kde.org/ktuberling")); 0042 QCommandLineParser parser; 0043 KAboutData::setApplicationData(aboutData); 0044 KCrash::initialize(); 0045 parser.addPositionalArgument(QStringLiteral("tuberling-file"), i18n("Potato to open")); 0046 0047 aboutData.setupCommandLine(&parser); 0048 parser.process(app); 0049 aboutData.processCommandLine(&parser); 0050 0051 KDBusService service; 0052 TopLevel *toplevel=nullptr; 0053 0054 if (app.isSessionRestored()) 0055 kRestoreMainWindows<TopLevel>(); 0056 else { 0057 toplevel = new TopLevel(); 0058 toplevel->show(); 0059 if (!parser.positionalArguments().isEmpty()) 0060 toplevel->open(QUrl::fromUserInput(parser.positionalArguments().at(0), QDir::currentPath())); 0061 0062 } 0063 0064 app.setWindowIcon(QIcon::fromTheme(QStringLiteral("ktuberling"))); 0065 0066 return app.exec(); 0067 }