#include "common.h" #include "quam/main_window.h" #include "quam/pak.h" #include #include #include static void setupAppl(QCoreApplication &appl) { appl.setApplicationName("QuAM!"); appl.setApplicationVersion("1.0"); appl.setOrganizationDomain("greyserv.net"); appl.setOrganizationName("Project Golan"); } static int modeGui(int argc, char *argv[]) { QApplication appl{argc, argv}; setupAppl(appl); MainWindow win; win.show(); return appl.exec(); } static int modeText(int argc, char *argv[]) { QCoreApplication appl{argc, argv}; setupAppl(appl); QCommandLineParser par; par.setApplicationDescription("Quake Archive Manager"); par.setSingleDashWordOptionMode( QCommandLineParser::ParseAsCompactedShortOptions); par.addHelpOption(); par.addVersionOption(); QCommandLineOption fileNameOpt{QStringList{"f", "file"}, trMain("Open the archive ."), trMain("file")}; par.addOption(fileNameOpt); par.process(appl); auto fileName = par.value(fileNameOpt).toStdString(); std::ifstream st{fileName, std::ios_base::in | std::ios_base::binary}; readPakFile(st); return 0; } int main(int argc, char *argv[]) { if(argc == 0) { return modeGui(argc, argv); } else { return modeText(argc, argv); } } // EOF