diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ConfigBase.hpp | 18 | ||||
| -rw-r--r-- | src/CrServerManager.pro | 6 | ||||
| -rw-r--r-- | src/Util.cpp | 20 | ||||
| -rw-r--r-- | src/Util.hpp | 8 |
4 files changed, 35 insertions, 17 deletions
diff --git a/src/ConfigBase.hpp b/src/ConfigBase.hpp index d25861c..72625e5 100644 --- a/src/ConfigBase.hpp +++ b/src/ConfigBase.hpp @@ -10,6 +10,8 @@ #include <type_traits> #include <limits> +#include "Util.hpp" + using ConfigException = std::logic_error; namespace ConfigValueType { @@ -67,7 +69,7 @@ class ConfigValue<String> : public ConfigValueBase { public: ConfigValue(String& config) : config(config) { } - virtual void setValue(const QString& value) { config = trimQuotes(QString(value), trimmedQuotes); } + virtual void setValue(const QString& value) { config = Util::trimQuotes(value, trimmedQuotes); } virtual QString value() { if(trimmedQuotes) @@ -80,20 +82,6 @@ public: } } virtual ConfigValueType::Type type() { return ConfigValueType::Type::String; } - -private: - QString& trimQuotes(QString&& string, bool& trimmed) - { - trimmed = false; - if(string.length() >= 2 && string.at(0) == '"' && string.at(string.length() - 1) == '"') - { - string.remove(0, 1); - string.remove(string.length() - 1, 1); - trimmed = true; - } - return string; - } - }; template<typename Type> diff --git a/src/CrServerManager.pro b/src/CrServerManager.pro index 4587c1a..6fa5e4b 100644 --- a/src/CrServerManager.pro +++ b/src/CrServerManager.pro @@ -20,7 +20,8 @@ TEMPLATE = app SOURCES += main.cpp \ crsm.cpp \ ProcessManager.cpp \ - ConfigBase.cpp + ConfigBase.cpp \ + Util.cpp HEADERS += \ CmdFunctionRef.hpp \ @@ -28,7 +29,8 @@ HEADERS += \ crsm.hpp \ ProcessManager.hpp \ CRSMConfig.hpp \ - ConfigBase.hpp + ConfigBase.hpp \ + Util.hpp equals(QT_ARCH, "x86_64"):linux-*: DEFINES += Q_OS_LINUX64 QMAKE_CXXFLAGS *= -std=c++11 -Wall -Wextra -Werror -Wunused diff --git a/src/Util.cpp b/src/Util.cpp new file mode 100644 index 0000000..4db3773 --- /dev/null +++ b/src/Util.cpp @@ -0,0 +1,20 @@ +#include "Util.hpp" + +namespace Util { + QString& trimQuotes(QString&& string, bool& trimmed) + { + trimmed = false; + if(string.length() >= 2 && string.at(0) == '"' && string.at(string.length() - 1) == '"') + { + string.remove(0, 1); + string.remove(string.length() - 1, 1); + trimmed = true; + } + return string; + } + + QString& trimQuotes(const QString& string, bool& trimmed) + { + return trimQuotes(QString(string), trimmed); + } +} diff --git a/src/Util.hpp b/src/Util.hpp new file mode 100644 index 0000000..b0d1f78 --- /dev/null +++ b/src/Util.hpp @@ -0,0 +1,8 @@ +#pragma once + +#include <QString> + +namespace Util { + QString& trimQuotes(QString&& string, bool& trimmed); + QString& trimQuotes(const QString& string, bool& trimmed); +} |
