Parse command line options platform (and encoding) independent
This commit is contained in:
parent
6a267cb9b8
commit
b7beced1e5
@ -1,18 +1,31 @@
|
||||
#include "mainwindow.h"
|
||||
#include <QApplication>
|
||||
#include <QCommandLineParser>
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
QApplication app(argc, argv);
|
||||
QCoreApplication::setApplicationName("ESGRAF 4-8");
|
||||
QCoreApplication::setApplicationVersion("0.1");
|
||||
|
||||
QCommandLineParser cmdParser;
|
||||
cmdParser.setApplicationDescription("ESGRAF 4-8");
|
||||
cmdParser.addHelpOption();
|
||||
cmdParser.addVersionOption();
|
||||
cmdParser.addPositionalArgument("filename", "file to open");
|
||||
|
||||
cmdParser.process(app);
|
||||
|
||||
const QStringList args = cmdParser.positionalArguments();
|
||||
|
||||
std::unique_ptr<MainWindow> mainWindow;
|
||||
if (argc < 2)
|
||||
if (args.empty())
|
||||
{
|
||||
mainWindow = std::make_unique<MainWindow>(nullptr);
|
||||
}
|
||||
else
|
||||
{
|
||||
mainWindow = std::make_unique<MainWindow>(nullptr, argv[1]);
|
||||
mainWindow = std::make_unique<MainWindow>(nullptr, args.at(0));
|
||||
}
|
||||
|
||||
mainWindow->show();
|
||||
|
Reference in New Issue
Block a user