summaryrefslogtreecommitdiffstats
path: root/src/client/clientapp/clientapp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/clientapp/clientapp.cpp')
-rw-r--r--src/client/clientapp/clientapp.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/client/clientapp/clientapp.cpp b/src/client/clientapp/clientapp.cpp
index ce0b5f3..05289e5 100644
--- a/src/client/clientapp/clientapp.cpp
+++ b/src/client/clientapp/clientapp.cpp
@@ -6,7 +6,7 @@ ClientApp::ClientApp(int& argc, char** argv) : QApplication(argc, argv), _connec
setOrganizationDomain("openslx.org");
setApplicationName("pvsclient");
- parseParameters();
+ _arguments = parseParameters();
initConfiguration();
@@ -28,9 +28,10 @@ ClientApp::ClientApp(int& argc, char** argv) : QApplication(argc, argv), _connec
};
-/* parse arguments */
-void ClientApp::parseParameters() {
- for (QString a : arguments()) {
+/* parse arguments and return a list with the unused arguments */
+QStringList ClientApp::parseParameters() {
+ QStringList rest;
+ for (QString a : QApplication::arguments()) {
if (a == "--exam-mode") {
_examMode = true;
} else if (a == "--auto") {
@@ -38,8 +39,11 @@ void ClientApp::parseParameters() {
} else if (a.startsWith("--session=")) {
_connectionMode = ConnectionMode::Session;
_sessionName = a.replace("--session=", "");
+ } else {
+ rest << a;
}
}
+ return rest;
}
void ClientApp::initConfiguration() {
/* configuration */
@@ -66,3 +70,7 @@ void ClientApp::initConfiguration() {
}
} while (false);
}
+
+QStringList ClientApp::arguments() {
+ return _arguments;
+}