summaryrefslogtreecommitdiff
path: root/settings.hpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2020-12-17 01:40:02 -0500
committerouwou <26526779+ouwou@users.noreply.github.com>2020-12-17 01:40:02 -0500
commit58d0424dfc47e99c9c21396819a2234df158b4d0 (patch)
tree19c0b48efcfa0b04b1a31a59477c35f7f4724155 /settings.hpp
parent315a4a8df80b922bbb8132c625803443c031dfd3 (diff)
downloadabaddon-portaudio-58d0424dfc47e99c9c21396819a2234df158b4d0.tar.gz
abaddon-portaudio-58d0424dfc47e99c9c21396819a2234df158b4d0.zip
abstract away settings some more
Diffstat (limited to 'settings.hpp')
-rw-r--r--settings.hpp27
1 files changed, 19 insertions, 8 deletions
diff --git a/settings.hpp b/settings.hpp
index cb2e824..c2a292d 100644
--- a/settings.hpp
+++ b/settings.hpp
@@ -8,21 +8,32 @@ public:
SettingsManager(std::string filename);
void Close();
- std::string GetSettingString(const std::string &section, const std::string &key, std::string fallback = "") const;
- int GetSettingInt(const std::string &section, const std::string &key, int fallback) const;
- bool GetSettingBool(const std::string &section, const std::string &key, bool fallback) const;
+ bool GetUseMemoryDB() const;
+ std::string GetUserAgent() const;
+ std::string GetDiscordToken() const;
+ bool GetShowMemberListDiscriminators() const;
+ bool GetShowEmojis() const;
+ std::string GetLinkColor() const;
+ int GetCacheHTTPConcurrency() const;
+
+ bool IsValid() const;
template<typename T>
void SetSetting(std::string section, std::string key, T value) {
- if constexpr (std::is_same<T, std::string>::value)
- m_ini.SetValue(section.c_str(), key.c_str(), value.c_str());
- else
- m_ini.SetValue(section.c_str(), key.c_str(), std::to_string(value).c_str());
+ m_ini.SetValue(section.c_str(), key.c_str(), std::to_string(value).c_str());
+ m_ini.SaveFile(m_filename.c_str());
+ }
+ template<>
+ void SetSetting<std::string>(std::string section, std::string key, std::string value) {
+ m_ini.SetValue(section.c_str(), key.c_str(), value.c_str());
m_ini.SaveFile(m_filename.c_str());
}
- bool IsValid() const;
+private:
+ std::string GetSettingString(const std::string &section, const std::string &key, std::string fallback = "") const;
+ int GetSettingInt(const std::string &section, const std::string &key, int fallback) const;
+ bool GetSettingBool(const std::string &section, const std::string &key, bool fallback) const;
private:
bool m_ok;