File indexing completed on 2025-02-23 05:00:23
0001 // SPDX-FileCopyrightText: 2023 Carl Schwan <carl.schwan@gnupg.com> 0002 // SPDX-License-Identifier: LGPL-2.0-or-later 0003 0004 #include <KLocalizedString> 0005 #include <MimeTreeParserWidgets/MessageViewer> 0006 #include <MimeTreeParserWidgets/MessageViewerDialog> 0007 #include <QApplication> 0008 #include <QCommandLineParser> 0009 #include <QDir> 0010 #include <QUrl> 0011 0012 #ifdef Q_OS_WIN 0013 #include <cstdio> 0014 #include <windows.h> 0015 #endif 0016 0017 int main(int argc, char *argv[]) 0018 { 0019 QApplication app(argc, argv); 0020 0021 KLocalizedString::setApplicationDomain(QByteArrayLiteral("mimetreeparser")); 0022 #ifdef Q_OS_WIN 0023 if (AttachConsole(ATTACH_PARENT_PROCESS)) { 0024 freopen("CONOUT$", "w", stdout); 0025 freopen("CONOUT$", "w", stderr); 0026 } 0027 #endif 0028 0029 QCommandLineParser parser; 0030 parser.setApplicationDescription(i18n("View mbox file")); 0031 parser.addPositionalArgument(QStringLiteral("file"), i18n("mbox file")); 0032 0033 parser.process(app); 0034 const QStringList args = parser.positionalArguments(); 0035 0036 const auto file = QUrl::fromUserInput(args.at(args.count() - 1), QDir::currentPath()); 0037 const auto messageViewer = new MimeTreeParser::Widgets::MessageViewerDialog(file.toLocalFile(), nullptr); 0038 0039 messageViewer->show(); 0040 messageViewer->setAttribute(Qt::WA_DeleteOnClose); 0041 return app.exec(); 0042 }