File indexing completed on 2024-04-28 04:02:29
0001 /* 0002 SPDX-FileCopyrightText: 1996-2004 Nicolas HADACEK <hadacek@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 // own 0008 #include "kmines_version.h" 0009 #include "mainwindow.h" 0010 // KF 0011 #include <KAboutData> 0012 #include <KCrash> 0013 #include <KLocalizedString> 0014 #include <KDBusService> 0015 #include <KSharedConfig> 0016 // Qt 0017 #include <QApplication> 0018 #include <QCommandLineParser> 0019 0020 0021 int main(int argc, char **argv) 0022 { 0023 QApplication app(argc, argv); 0024 0025 KLocalizedString::setApplicationDomain(QByteArrayLiteral("kmines")); 0026 0027 KAboutData aboutData(QStringLiteral("kmines"), i18n("KMines"), 0028 QStringLiteral(KMINES_VERSION_STRING), 0029 i18n("KMines is a classic minesweeper game"), 0030 KAboutLicense::GPL, 0031 i18n("(c) 1996-2005, Nicolas Hadacek\n(c) 2001, Mikhail Kourinny\n(c) 2006-2007, Mauricio Piacentini\n(c) 2007, Dmitry Suzdalev"), 0032 QString(), 0033 QStringLiteral("https://apps.kde.org/kmines")); 0034 aboutData.addAuthor(i18n("Nicolas Hadacek"), 0035 i18n("Original author"), QStringLiteral("hadacek@kde.org")); 0036 aboutData.addAuthor(i18n("Mauricio Piacentini"), 0037 i18n("Code refactoring and SVG support. Current maintainer"), 0038 QStringLiteral("mauricio@tabuleiro.com")); 0039 aboutData.addAuthor(i18n("Dmitry Suzdalev"), 0040 i18n("Rewrite to use QGraphicsView framework. Current maintainer"), 0041 QStringLiteral("dimsuz@gmail.com")); 0042 aboutData.addCredit(i18n("Andreas Zehender"), i18n("Smiley pixmaps")); 0043 aboutData.addCredit(i18n("Mikhail Kourinny"), i18n("Solver/Adviser")); 0044 aboutData.addCredit(i18n("Thomas Capricelli"), i18n("Magic reveal mode")); 0045 aboutData.addCredit(i18n("Brian Croom"), i18n("Port to use KGameRenderer")); 0046 0047 app.setWindowIcon(QIcon::fromTheme(QStringLiteral("kmines"))); 0048 KAboutData::setApplicationData(aboutData); 0049 KCrash::initialize(); 0050 QCommandLineParser parser; 0051 aboutData.setupCommandLine(&parser); 0052 parser.process(app); 0053 aboutData.processCommandLine(&parser); 0054 KDBusService service; 0055 0056 if ( app.isSessionRestored() ) 0057 kRestoreMainWindows<KMinesMainWindow>(); 0058 else { 0059 auto *mw = new KMinesMainWindow; 0060 mw->show(); 0061 } 0062 0063 return app.exec(); 0064 }