Added better handling for command line parameters

This commit is contained in:
Nffj84
2024-07-04 12:33:32 +03:00
parent ed53266ca3
commit d377a626e2
3 changed files with 27 additions and 13 deletions
+17 -9
View File
@@ -1,3 +1,4 @@
#include <QCommandLineParser>
#include <QCoreApplication>
#include <QThread>
#include "config.hpp"
@@ -9,17 +10,24 @@
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
SerialCommand serialCommand;
SerialPort serialPort;
Config::setInitalValues(&serialPort, &serialCommand);
QCommandLineParser parser;
QCommandLineOption lOption(QStringList() << "l", "Use local mode");
parser.addOption(lOption);
QCommandLineOption pOption(QStringList() << "p", "Use serial port", "value");
parser.addOption(pOption);
parser.process(app);
bool useRemoteMode = true;
for (int i = 1; i < argc; ++i) {
if (QString(argv[i]) == "-l") {
useRemoteMode = false;
break;
}
if (parser.isSet(lOption)) {
useRemoteMode = false;
}
QString useSerialPort;
if (parser.isSet(pOption)) {
useSerialPort = parser.value(pOption);
}
SerialCommand serialCommand;
SerialPort serialPort(useSerialPort);
Config::setInitalValues(&serialPort, &serialCommand);
// Remote mode will read commands from pipe
if (useRemoteMode == true) {