aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/barrier/ArgParser.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2021-11-10 00:54:13 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2021-11-10 00:54:13 -0500
commitbeb08eb751fa8e1f72042f263316ab5e5ddb596d (patch)
tree3b00df983527648bdae610ac7b88cb639b1f1828 /src/lib/barrier/ArgParser.h
parentfbc30002ab3438356c0476e70c4577a0310d52c0 (diff)
New upstream version 2.4.0+dfsg.upstream/2.4.0+dfsgupstream
Diffstat (limited to 'src/lib/barrier/ArgParser.h')
-rw-r--r--src/lib/barrier/ArgParser.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/lib/barrier/ArgParser.h b/src/lib/barrier/ArgParser.h
index 32300c6..472d93a 100644
--- a/src/lib/barrier/ArgParser.h
+++ b/src/lib/barrier/ArgParser.h
@@ -1,11 +1,11 @@
/*
* barrier -- mouse and keyboard sharing utility
* Copyright (C) 2014-2016 Symless Ltd.
- *
+ *
* This package is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* found in the file LICENSE that should have accompanied this file.
- *
+ *
* This package is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-
+
#pragma once
#include "base/String.h"
@@ -41,21 +41,27 @@ public:
const char* name1, const char* name2,
int minRequiredParameters = 0);
static void splitCommandString(String& command, std::vector<String>& argv);
- static bool searchDoubleQuotes(String& command, size_t& left,
+ static bool searchDoubleQuotes(String& command, size_t& left,
size_t& right, size_t startPos = 0);
static void removeDoubleQuotes(String& arg);
static const char** getArgv(std::vector<String>& argsArray);
- static String assembleCommand(std::vector<String>& argsArray,
+ static String assembleCommand(std::vector<String>& argsArray,
String ignoreArg = "", int parametersRequired = 0);
+ static std::string parse_exename(const char* arg);
+
private:
void updateCommonArgs(const char* const* argv);
bool checkUnexpectedArgs();
-
+
static ArgsBase& argsBase() { return *m_argsBase; }
+ bool parseMSWindowsArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i);
+ bool parseCarbonArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i);
+ bool parseXWindowsArg(ArgsBase& argsBase, const int& argc, const char* const* argv, int& i);
+
private:
App* m_app;
-
+
static ArgsBase* m_argsBase;
};