22 #ifndef SAYONARA_SETTING_H_ 23 #define SAYONARA_SETTING_H_ 26 #include "Utils/Settings/SettingKey.h" 27 #include "Utils/Settings/SettingConverter.h" 28 #include "Utils/Pimpl.h" 56 QString db_key()
const;
57 bool is_db_setting()
const;
59 void assign_value(
const QString& value);
62 virtual bool load_value_from_string(
const QString& str)=0;
63 virtual QString value_to_string()
const=0;
64 virtual void assign_default_value()=0;
87 template<SettingKey keyIndex>
96 template<SettingKey keyIndex>
100 Q_UNUSED(identifier);
108 void assign_default_value()
override 113 QString value_to_string()
const override 115 return SC<T>::cvt_to_string(_val);
118 bool load_value_from_string(
const QString& str)
override 120 return SC<T>::cvt_from_string(str, _val);
124 const T& value()
const 130 const T& default_value()
const 136 bool assign_value(
const T& val)
147 #endif // SAYONARA_SETTING_H_ The Setting class T is the pure value type e.g. QString.
Definition: Setting.h:75
SettingKey
The SK namespace is used to access setting keys.
Definition: SettingKey.h:51
The Settings class.
Definition: Settings.h:37
The AbstrSetting class Every setting needs a key and a value The SettingKey is only used inside the s...
Definition: Setting.h:38
Definition: SoundcloudLibraryContainer.h:30
The SettingConverter class.
Definition: SettingConverter.h:38
Definition: SettingKey.h:197