diff --git a/main.cpp b/main.cpp index 9d8a7ea..ff11452 100644 --- a/main.cpp +++ b/main.cpp @@ -2,23 +2,34 @@ #include "mainwindow.h" #include +#include +#include int main(int argc, char *argv[]) { KiwixApp a(argc, argv); KiwixApp::setApplicationName("kiwix-desktop"); - QCommandLineParser parser; parser.addPositionalArgument("zimfile", "The zim file"); parser.process(a); - const QString zimfile = parser.positionalArguments().at(0); - - a.openZimFile(zimfile); + QString zimfile; + auto positionalArguments = parser.positionalArguments(); + if (positionalArguments.size() < 1){ + zimfile = QFileDialog::getOpenFileName(nullptr, + "Open Zim", + QString(), + "ZimFile (*.zim*)"); + } else { + zimfile = parser.positionalArguments().at(0); + } + std::string f = zimfile.toUtf8().constData(); + std::cout << f << std::endl; MainWindow w; w.show(); + a.openZimFile(zimfile); return a.exec(); }