diff --git a/audiocd.cpp b/audiocd.cpp --- a/audiocd.cpp +++ b/audiocd.cpp @@ -56,10 +56,10 @@ #include #include #include -#include + #include #include "audiocd_kio_debug.h" -#include + #include #include #include @@ -67,6 +67,8 @@ // CDDB #include #include +#include +#include using namespace KIO; @@ -77,25 +79,23 @@ int kdemain(int argc, char ** argv) { KLocalizedString::setApplicationDomain("kio_audiocd"); - // KApplication uses libkcddb which needs a valid kapp pointer + // QCoreApplication uses libkcddb which needs a valid kapp pointer // GUIenabled must be true as libkcddb sometimes wants to communicate // with the user qunsetenv("SESSION_MANAGER"); - //KApplication::disableAutoDcopRegistration(); - KCmdLineArgs::init(argc, argv, "kio_audiocd", 0, KLocalizedString(), 0, KLocalizedString()); + QCoreApplication app(argc, argv); + app.setApplicationName("kio_audiocd"); + QCommandLineParser parser; + parser.addPositionalArgument(QLatin1String("protocol"), i18n("Protocol name")); + parser.addPositionalArgument(QLatin1String("pool"), i18n("Socket name")); + parser.addPositionalArgument(QLatin1String("app"), i18n("Socket name")); - KCmdLineOptions options; - options.add("+protocol", ki18n("Protocol name")); - options.add("+pool", ki18n("Socket name")); - options.add("+app", ki18n("Socket name")); - KCmdLineArgs::addCmdLineOptions(options); - KApplication app(true); + parser.process(app); qCDebug(AUDIOCD_KIO_LOG) << "Starting " << getpid(); - KCmdLineArgs* args = KCmdLineArgs::parsedArgs(); - AudioCDProtocol slave(args->arg(0).toLocal8Bit(), args->arg(1).toLocal8Bit(), args->arg(2).toLocal8Bit()); - args->clear(); + AudioCDProtocol slave(parser.positionalArguments().at(0).toLocal8Bit(), parser.positionalArguments().at(1).toLocal8Bit(), parser.positionalArguments().at(2).toLocal8Bit()); + slave.dispatchLoop(); qCDebug(AUDIOCD_KIO_LOG) << "Done";