diff options
| author | Markus Mittendrein <git@maxmitti.tk> | 2018-08-19 23:33:23 +0200 |
|---|---|---|
| committer | Markus Mittendrein <git@maxmitti.tk> | 2018-08-19 23:33:23 +0200 |
| commit | 775c1d431d55e735be9516d84b583f4a956d8d7a (patch) | |
| tree | 26f2cc5dc11b504361883d7e3cfdf93ac93958a4 | |
| parent | 8e6f1d76e680194f329841a175c1f2d5d06ccd53 (diff) | |
| download | manager-775c1d431d55e735be9516d84b583f4a956d8d7a.tar.gz manager-775c1d431d55e735be9516d84b583f4a956d8d7a.zip | |
Use ClearableConfigBase instead of implementing clear() several times
| -rw-r--r-- | src/CRSMConfig.hpp | 11 | ||||
| -rw-r--r-- | src/CRSMPackCompatibility.cpp | 7 | ||||
| -rw-r--r-- | src/CRSMPackCompatibility.hpp | 6 | ||||
| -rw-r--r-- | src/CRSMSession.cpp | 11 | ||||
| -rw-r--r-- | src/CRSMSession.hpp | 4 | ||||
| m--------- | src/qt-config | 0 |
6 files changed, 7 insertions, 32 deletions
diff --git a/src/CRSMConfig.hpp b/src/CRSMConfig.hpp index 9845ef0..c9b4ade 100644 --- a/src/CRSMConfig.hpp +++ b/src/CRSMConfig.hpp @@ -3,7 +3,7 @@ #include "qt-config/ConfigBase.hpp" #include "GreetingSetting.hpp" -class CRSMConfig : public ConfigBase { +class CRSMConfig : public ClearableConfigBase<CRSMConfig> { public: struct { Port ManagementPort = 9372; @@ -114,7 +114,7 @@ public: Integer RereadLimit = 50; } Readline; - explicit CRSMConfig() : ConfigBase({ + explicit CRSMConfig() : ClearableConfigBase<CRSMConfig>({ ConfigVal(CRSM.ManagementPort), ConfigVal(CRSM.ListFolder), ConfigVal(CRSM.CommandSigns), @@ -201,11 +201,4 @@ public: ConfigVal(Readline.PromptEnabled), ConfigVal(Readline.RereadLimit) }) {} - - void clear() - { - auto configVals = configValues; - *this = CRSMConfig(); - configValues = configVals; - } }; diff --git a/src/CRSMPackCompatibility.cpp b/src/CRSMPackCompatibility.cpp index b301288..e0389c8 100644 --- a/src/CRSMPackCompatibility.cpp +++ b/src/CRSMPackCompatibility.cpp @@ -18,13 +18,6 @@ namespace { } } -void CRSMPackCompatibility::clear() -{ - auto configVals = configValues; - *this = CRSMPackCompatibility(); - configValues = configVals; -} - QString CRSMPackCompatibility::linkScenarioPacks(const QString &scenario) { QString ret; diff --git a/src/CRSMPackCompatibility.hpp b/src/CRSMPackCompatibility.hpp index 9e81bed..5dbee20 100644 --- a/src/CRSMPackCompatibility.hpp +++ b/src/CRSMPackCompatibility.hpp @@ -1,7 +1,7 @@ #pragma once #include "qt-config/ConfigBase.hpp" -class CRSMPackCompatibility : public ConfigBase +class CRSMPackCompatibility : public ClearableConfigBase<CRSMPackCompatibility> { public: Map(String, String) PackDefaultVersion; @@ -10,7 +10,7 @@ public: Map(String, String) ScenarioCmdOptions; String PacksDirectory = "Packs"; - CRSMPackCompatibility() : ConfigBase::ConfigBase({ + CRSMPackCompatibility() : ClearableConfigBase<CRSMPackCompatibility>({ ConfigVal(PackDefaultVersion), ConfigVal(PackVersions), ConfigVal(PacksDirectory), @@ -18,8 +18,6 @@ public: ConfigVal(ScenarioCmdOptions) }) { } - void clear(); - QString linkScenarioPacks(const QString& scenario); QString getScenarioCmdOptions(const QString& scenario, bool all = true); diff --git a/src/CRSMSession.cpp b/src/CRSMSession.cpp index caba9e2..0a7e486 100644 --- a/src/CRSMSession.cpp +++ b/src/CRSMSession.cpp @@ -1,14 +1,7 @@ #include "CRSMSession.hpp" #include "crsm.hpp" -void CRSMSession::clear() -{ - auto configVals = configValues; - *this = CRSMSession(); - configValues = configVals; -} - -CRSMSession::CRSMSession() : ConfigBase::ConfigBase({ +CRSMSession::CRSMSession() : ClearableConfigBase<CRSMSession>({ ConfigVal(League), ConfigVal(State), ConfigVal(UserWish), @@ -21,7 +14,7 @@ CRSMSession::CRSMSession() : ConfigBase::ConfigBase({ ConfigVal(IRC.Admin), ConfigVal(IRC.UseIngameChat), - }) {} + }) {} CRSMSession::CRSMSession(CRSM *crsm) : CRSMSession() { diff --git a/src/CRSMSession.hpp b/src/CRSMSession.hpp index 5c9a72e..9d80a7d 100644 --- a/src/CRSMSession.hpp +++ b/src/CRSMSession.hpp @@ -20,7 +20,7 @@ public: } }; -struct CRSMSession : public ConfigBase { +struct CRSMSession : public ClearableConfigBase<CRSMSession> { enum SessionState {None = -1, Lobby = 0, Loading = 1, Running = 2}; Boolean League = false; @@ -43,8 +43,6 @@ struct CRSMSession : public ConfigBase { Boolean UseIngameChat = false; } IRC; - void clear(); - CRSMSession(); CRSMSession(CRSM* crsm); diff --git a/src/qt-config b/src/qt-config -Subproject 20b714ed29e5b0350c7fff6d59792c1f58cfb36 +Subproject 8c951771af60be9b0fa7b309df51887f5003fb5 |
