File indexing completed on 2023-09-24 03:52:53
0001 /* 0002 This file is part of Kiten, a KDE Japanese Reference Tool... 0003 SPDX-FileCopyrightText: 2001 Jason Katz-Brown <jason@katzbrown.com> 0004 SPDX-FileCopyrightText: 2005 Paul Temple <paul.temple@gmx.net> 0005 SPDX-FileCopyrightText: 2006 Joseph Kerian <jkerian@gmail.com> 0006 0007 SPDX-License-Identifier: GPL-2.0-or-later 0008 */ 0009 0010 #include <KAboutData> 0011 #include <KCrash> 0012 #include <KLocalizedString> 0013 #include <Kdelibs4ConfigMigrator> 0014 #include <QApplication> 0015 #include <QCommandLineParser> 0016 #include <QDBusConnection> 0017 0018 #include "kiten.h" 0019 #include "kiten_version.h" 0020 0021 void noMessageOutput(QtMsgType, const char *) 0022 { 0023 } 0024 0025 int main(int argc, char *argv[]) 0026 { 0027 // qInstallMsgHandler(noMessageOutput); //Disable Qt Errors from showing 0028 0029 // Copyright and author information 0030 Kdelibs4ConfigMigrator migrate(QStringLiteral("kiten")); 0031 migrate.setConfigFiles(QStringList() << QStringLiteral("kitenrc")); 0032 migrate.setUiFiles(QStringList() << QStringLiteral("kitenui.rc")); 0033 migrate.migrate(); 0034 0035 KLocalizedString::setApplicationDomain("kiten"); 0036 QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); 0037 QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); 0038 0039 QApplication app(argc, argv); 0040 0041 KAboutData aboutData(QStringLiteral("kiten"), 0042 i18n("Kiten"), 0043 QStringLiteral(KITEN_VERSION_STRING), 0044 i18n("Japanese Reference Tool"), 0045 KAboutLicense::GPL_V2, 0046 i18n("(c) 2001-2004, Jason Katz-Brown\n" 0047 "(c) 2006-2007, Eric Kjeldergaard\n" 0048 "(c) 2006-2008, Joseph Kerian\n" 0049 "(c) 2011, Daniel E. Moctezuma"), 0050 QString(), 0051 QStringLiteral("https://edu.kde.org/kiten")); 0052 0053 aboutData.addAuthor(i18n("Jason Katz-Brown"), i18n("Original author"), QStringLiteral("jason@katzbrown.com")); 0054 aboutData.addCredit(i18n("Jim Breen"), 0055 i18n("Wrote xjdic, of which Kiten borrows code, and the xjdic index file generator.\nAlso is main author of edict and kanjidic, which " 0056 "Kiten essentially require."), 0057 QStringLiteral("jwb@csse.monash.edu.au")); 0058 aboutData.addAuthor(i18n("Neil Stevens"), i18n("Code simplification, UI suggestions."), QStringLiteral("neil@qualityassistant.com")); 0059 aboutData.addCredit(i18n("David Vignoni"), i18n("svg icon"), QStringLiteral("david80v@tin.it")); 0060 aboutData.addCredit(i18n("Paul Temple"), i18n("Porting to KConfig XT, bug fixing"), QStringLiteral("paul.temple@gmx.net")); 0061 aboutData.addAuthor(i18n("Joseph Kerian"), i18n("KDE4 rewrite"), QStringLiteral("jkerian@gmail.com")); 0062 aboutData.addAuthor(i18n("Eric Kjeldergaard"), i18n("KDE4 rewrite"), QStringLiteral("kjelderg@gmail.com")); 0063 aboutData.addAuthor(i18n("Daniel E. Moctezuma"), 0064 i18n("Deinflection system improvements, Dictionary updates for EDICT and KANJIDIC, GUI Improvements, Kanji Browser, Bug fixes, Code " 0065 "polishing and simplification"), 0066 QStringLiteral("democtezuma@gmail.com")); 0067 0068 aboutData.setOrganizationDomain("kde.org"); // Set this for the DBUS ID 0069 0070 #ifdef Q_OS_WIN 0071 QApplication::setStyle(QStringLiteral("breeze")); 0072 #endif 0073 0074 KCrash::initialize(); 0075 0076 QCommandLineParser parser; 0077 KAboutData::setApplicationData(aboutData); 0078 0079 aboutData.setupCommandLine(&parser); 0080 parser.process(app); 0081 aboutData.processCommandLine(&parser); 0082 0083 auto kiten = new Kiten(); 0084 0085 // Register the DBUS name or die 0086 if (!QDBusConnection::sessionBus().registerService(QStringLiteral("org.kde.kiten"))) { 0087 exit(1); 0088 } 0089 0090 kiten->show(); 0091 QDBusConnection::sessionBus().registerObject(QStringLiteral("/"), kiten, QDBusConnection::ExportAllSlots); 0092 return app.exec(); 0093 }