File indexing completed on 2024-05-12 05:25:36
0001 /* 0002 SPDX-FileCopyrightText: 2012-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "pimdatacommandlineoption.h" 0008 #include "pimdataexporterwindow.h" 0009 0010 #include <KCrash> 0011 #include <KDBusService> 0012 #include <KLocalizedString> 0013 #include <QApplication> 0014 #ifdef WITH_KUSERFEEDBACK 0015 #include "userfeedback/pimdataexporteduserfeedbackprovider.h" 0016 #include <KUserFeedback/Provider> 0017 #endif 0018 0019 int main(int argc, char *argv[]) 0020 { 0021 QApplication app(argc, argv); 0022 0023 KLocalizedString::setApplicationDomain(QByteArrayLiteral("pimdataexporter")); 0024 0025 KCrash::initialize(); 0026 app.setDesktopFileName(QStringLiteral("org.kde.pimdataexporter")); 0027 QApplication::setWindowIcon(QIcon::fromTheme(QStringLiteral("kontact"))); 0028 0029 PimDataCommandLineOption parser; 0030 parser.createParser(app); 0031 #ifdef WITH_KUSERFEEDBACK 0032 if (parser.parseUserFeedback()) { 0033 auto provider = new PimDataExportedUserFeedbackProvider; 0034 QTextStream(stdout) << provider->describeDataSources() << '\n'; 0035 delete provider; 0036 return 0; 0037 } 0038 #endif 0039 KDBusService service(KDBusService::Unique); 0040 0041 auto backupMailWin = new PimDataExporterWindow(); 0042 parser.setExportWindow(backupMailWin); 0043 QObject::connect(&service, &KDBusService::activateRequested, &parser, &PimDataCommandLineOption::slotActivateRequested); 0044 backupMailWin->show(); 0045 parser.handleCommandLine(); 0046 0047 return app.exec(); 0048 }