File indexing completed on 2024-04-21 05:26:16

0001 /*
0002  *   SPDX-FileCopyrightText: 2012 Aleix Pol Gonzalez <aleixpol@blue-systems.com>
0003  *
0004  *   SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 
0007 #include "../DiscoverVersion.h"
0008 #include "DiscoverExporter.h"
0009 #include <DiscoverBackendsFactory.h>
0010 #include <KAboutData>
0011 #include <KLocalizedString>
0012 #include <QCommandLineParser>
0013 #include <QGuiApplication>
0014 #include <QIcon>
0015 
0016 int main(int argc, char **argv)
0017 {
0018     QGuiApplication app(argc, argv);
0019     app.setQuitOnLastWindowClosed(false);
0020     KLocalizedString::setApplicationDomain("plasma-discover-exporter");
0021     KAboutData about(QStringLiteral("discover-exporter"),
0022                      i18n("Discover Exporter"),
0023                      version,
0024                      QString(),
0025                      KAboutLicense::GPL,
0026                      i18n("©2013 Aleix Pol Gonzalez"),
0027                      QString());
0028     about.addAuthor(i18n("Jonathan Thomas"), QString(), QStringLiteral("echidnaman@kubuntu.org"));
0029     about.addAuthor(i18n("Aleix Pol Gonzalez"), QString(), QStringLiteral("aleixpol@blue-systems.com"));
0030     about.setProductName("discover/exporter");
0031 
0032     DiscoverExporter exp;
0033     {
0034         QCommandLineParser parser;
0035         parser.addPositionalArgument(QStringLiteral("file"), i18n("File to which we'll export"));
0036         DiscoverBackendsFactory::setupCommandLine(&parser);
0037         about.setupCommandLine(&parser);
0038         parser.process(app);
0039         about.processCommandLine(&parser);
0040         DiscoverBackendsFactory::processCommandLine(&parser, false);
0041 
0042         if (parser.positionalArguments().count() != 1) {
0043             parser.showHelp(1);
0044         }
0045         exp.setExportPath(QUrl::fromUserInput(parser.positionalArguments().at(0), QString(), QUrl::AssumeLocalFile));
0046     }
0047 
0048     QObject::connect(&exp, &DiscoverExporter::exportDone, &app, &QCoreApplication::quit);
0049 
0050     return app.exec();
0051 }