X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fmain.cpp;h=9a47332132cf2e3554ebf5b8a8c356842a9d192e;hp=9d75da4ec12263cfe48b2204b650c77caaf36b35;hb=35ca85f1c4371ee28d00d5ff0195a5b44aadb299;hpb=1cb02004ee5973b89368bd84f234d4652794690d diff --git a/src/common/main.cpp b/src/common/main.cpp index 9d75da4e..9a473321 100644 --- a/src/common/main.cpp +++ b/src/common/main.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2018 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -49,6 +49,7 @@ # include "kcmdlinewrapper.h" #elif defined HAVE_KF5 # include +# include # include "qt5cliparser.h" #elif defined HAVE_QT5 # include "qt5cliparser.h" @@ -110,7 +111,7 @@ int main(int argc, char **argv) ki18n("A modern, distributed IRC client")); aboutData.addLicense(KAboutData::License_GPL_V2); aboutData.addLicense(KAboutData::License_GPL_V3); - aboutData.setBugAddress("http://bugs.quassel-irc.org/projects/quassel-irc/issues/new"); + aboutData.setBugAddress("https://bugs.quassel-irc.org/projects/quassel-irc/issues/new"); aboutData.setOrganizationDomain(Quassel::buildInfo().organizationDomain.toUtf8()); KCmdLineArgs::init(argc, argv, &aboutData); @@ -161,7 +162,9 @@ int main(int argc, char **argv) cliParser->addSwitch("oidentd", 0, "Enable oidentd integration"); cliParser->addOption("oidentd-conffile", 0, "Set path to oidentd configuration file", "file"); #ifdef HAVE_SSL - cliParser->addSwitch("require-ssl", 0, "Require SSL for client connections"); + cliParser->addSwitch("require-ssl", 0, "Require SSL for remote (non-loopback) client connections"); + cliParser->addOption("ssl-cert", 0, "Specify the path to the SSL Certificate", "path", "configdir/quasselCert.pem"); + cliParser->addOption("ssl-key", 0, "Specify the path to the SSL key", "path", "ssl-cert-path"); #endif cliParser->addSwitch("enable-experimental-dcc", 0, "Enable highly experimental and unfinished support for CTCP DCC (DANGEROUS)"); #endif @@ -174,24 +177,40 @@ int main(int argc, char **argv) } #endif -# if defined BUILD_CORE +#if defined BUILD_CORE CoreApplication app(argc, argv); -# elif defined BUILD_QTUI +#elif defined BUILD_QTUI +# if QT_VERSION >= 0x050600 && defined(Q_OS_WIN) + QtUiApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#endif +# if QT_VERSION >= 0x050700 + QtUiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); +# endif QtUiApplication app(argc, argv); -# elif defined BUILD_MONO +#elif defined BUILD_MONO +# if QT_VERSION >= 0x050600 && defined(Q_OS_WIN) + MonolithicApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#endif +# if QT_VERSION >= 0x050700 + MonolithicApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); +# endif MonolithicApplication app(argc, argv); -# endif +#endif #ifndef HAVE_KDE4 // the non-KDE version parses after app has been instantiated if (!cliParser->init(app.arguments())) { cliParser->usage(); - return false; + return EXIT_FAILURE; } #endif - if (!app.init()) - return EXIT_FAILURE; +// Migrate settings from KDE4 to KF5 if appropriate +#ifdef HAVE_KF5 + Kdelibs4ConfigMigrator migrator(QCoreApplication::applicationName()); + migrator.setConfigFiles(QStringList() << "quasselrc" << "quassel.notifyrc"); + migrator.migrate(); +#endif #ifdef HAVE_KF5 // FIXME: This should be done after loading the translation catalogue, but still in main() @@ -200,5 +219,8 @@ int main(int argc, char **argv) KAboutData::setApplicationData(aboutData.kAboutData()); #endif + if (!app.init()) + return EXIT_FAILURE; + return app.exec(); }