68 virtual bool is_default(
bool aUnappliedNew =
false)
const = 0;
81 virtual bool apply_change() = 0;
82 virtual bool discard_change() = 0;
102 template <
typename T>
105 return value(aUnappliedNew).
get<T>();
107 template <
typename T>
114 thread_local string result;
118 template <
typename T>
122 temp.set<T>(aDefaultValue);
125 template <
typename T>
126 void set_value(T
const& aNewValue, std::enable_if_t<!std::is_convertible_v<T&, i_setting_value&>,
sfinae> = {})
129 temp.set<T>(aNewValue);
132 template <
typename T>
133 void apply_value(T
const& aNewValue, std::enable_if_t<!std::is_convertible_v<T&, i_setting_value&>,
sfinae> = {})
136 temp.set<T>(aNewValue);
151 template <
typename T>
abstract_return_t< T const > get() const
virtual bool modified() const =0
virtual i_setting_value const & modified_value() const =0
i_setting & operator=(T const &aNewValue)
void apply_value(T const &aNewValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
virtual bool is_default(bool aUnappliedNew=false) const =0
virtual i_setting_constraints const & constraints() const =0
virtual void value_as_string(i_string &aValue, bool aUnappliedNew=false) const =0
std::string value_as_string(bool aUnappliedNew=false) const
virtual void set_enabled(bool aEnabled)=0
abstract_return_t< const T > value(bool aUnappliedNew=false) const
void set_default_value(T const &aDefaultValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
virtual i_setting_value & temp_setting_value()=0
virtual bool is_enabled() const =0
virtual void set_value(i_setting_value const &aNewValue)=0
virtual i_setting_value const & value(bool aUnappliedNew=false) const =0
i_setting & operator=(i_setting const &aRhs)
virtual void set_default_value(i_setting_value const &aDefaultValue)=0
virtual void set_value_from_string(i_string const &aNewValue)=0
virtual i_string const & format() const =0
i_setting & operator=(i_setting_value const &aRhs)
void set_value(T const &aNewValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
abstract_return_t< const T > modified_value() const
virtual declare_event(changing) declare_event(changed) public i_string const & key() const =0
virtual i_setting_value const & default_value() const =0
virtual bool hidden() const =0
std::string to_std_string() const
typename detail::abstract_return_type< T >::type abstract_return_t
#define declare_event(declName,...)