diff options
| author | 2024-01-04 15:51:00 -0500 | |
|---|---|---|
| committer | 2024-01-04 15:51:00 -0500 | |
| commit | 8d3463dbddbbcef2d615d596a1bf7421730c9dd6 (patch) | |
| tree | 33f4e6b829a578c4bb1ad21d9b21f01f1c717b28 /src/frontend_common/config.h | |
| parent | Merge pull request #12568 from t895/actions-button (diff) | |
| parent | frontend_common: config: Move WriteIntegerSetting definition to header (diff) | |
| download | yuzu-8d3463dbddbbcef2d615d596a1bf7421730c9dd6.tar.gz yuzu-8d3463dbddbbcef2d615d596a1bf7421730c9dd6.tar.xz yuzu-8d3463dbddbbcef2d615d596a1bf7421730c9dd6.zip | |
Merge pull request #12570 from t895/generic-config-pain
frontend_common: config: Move WriteIntegerSetting definition to header
Diffstat (limited to '')
| -rw-r--r-- | src/frontend_common/config.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/frontend_common/config.h b/src/frontend_common/config.h index 0c4d505b8..b01631649 100644 --- a/src/frontend_common/config.h +++ b/src/frontend_common/config.h | |||
| @@ -157,17 +157,23 @@ protected: | |||
| 157 | void WriteBooleanSetting(const std::string& key, const bool& value, | 157 | void WriteBooleanSetting(const std::string& key, const bool& value, |
| 158 | const std::optional<bool>& default_value = std::nullopt, | 158 | const std::optional<bool>& default_value = std::nullopt, |
| 159 | const std::optional<bool>& use_global = std::nullopt); | 159 | const std::optional<bool>& use_global = std::nullopt); |
| 160 | template <typename T> | ||
| 161 | std::enable_if_t<std::is_integral_v<T>> WriteIntegerSetting( | ||
| 162 | const std::string& key, const T& value, | ||
| 163 | const std::optional<T>& default_value = std::nullopt, | ||
| 164 | const std::optional<bool>& use_global = std::nullopt); | ||
| 165 | void WriteDoubleSetting(const std::string& key, const double& value, | 160 | void WriteDoubleSetting(const std::string& key, const double& value, |
| 166 | const std::optional<double>& default_value = std::nullopt, | 161 | const std::optional<double>& default_value = std::nullopt, |
| 167 | const std::optional<bool>& use_global = std::nullopt); | 162 | const std::optional<bool>& use_global = std::nullopt); |
| 168 | void WriteStringSetting(const std::string& key, const std::string& value, | 163 | void WriteStringSetting(const std::string& key, const std::string& value, |
| 169 | const std::optional<std::string>& default_value = std::nullopt, | 164 | const std::optional<std::string>& default_value = std::nullopt, |
| 170 | const std::optional<bool>& use_global = std::nullopt); | 165 | const std::optional<bool>& use_global = std::nullopt); |
| 166 | template <typename T> | ||
| 167 | std::enable_if_t<std::is_integral_v<T>> WriteIntegerSetting( | ||
| 168 | const std::string& key, const T& value, | ||
| 169 | const std::optional<T>& default_value = std::nullopt, | ||
| 170 | const std::optional<bool>& use_global = std::nullopt) { | ||
| 171 | std::optional<std::string> string_default = std::nullopt; | ||
| 172 | if (default_value.has_value()) { | ||
| 173 | string_default = std::make_optional(ToString(default_value.value())); | ||
| 174 | } | ||
| 175 | WritePreparedSetting(key, AdjustOutputString(ToString(value)), string_default, use_global); | ||
| 176 | } | ||
| 171 | 177 | ||
| 172 | void ReadCategory(Settings::Category category); | 178 | void ReadCategory(Settings::Category category); |
| 173 | void WriteCategory(Settings::Category category); | 179 | void WriteCategory(Settings::Category category); |