neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::i_setting Class Referenceabstract

#include <i_setting.hpp>

Inheritance diagram for neolib::i_setting:
neolib::i_reference_counted neolib::reference_counted< i_setting > neolib::setting< T >

Classes

struct  setting_not_modified
 
struct  setting_not_optional
 

Public Types

typedef i_setting abstract_type
 

Public Member Functions

virtual declare_event(changing) declare_event(changed) public i_string constkey () const =0
 
virtual i_setting_constraints constconstraints () const =0
 
virtual i_string constformat () const =0
 
virtual bool hidden () const =0
 
virtual bool is_enabled () const =0
 
virtual void set_enabled (bool aEnabled)=0
 
virtual bool is_default (bool aUnappliedNew=false) const =0
 
virtual bool modified () const =0
 
virtual i_setting_value constdefault_value () const =0
 
virtual i_setting_value constvalue (bool aUnappliedNew=false) const =0
 
virtual i_setting_value constmodified_value () const =0
 
virtual void value_as_string (i_string &aValue, bool aUnappliedNew=false) const =0
 
virtual void set_default_value (i_setting_value const &aDefaultValue)=0
 
virtual void set_value (i_setting_value const &aNewValue)=0
 
virtual void set_value_from_string (i_string const &aNewValue)=0
 
virtual void clear ()=0
 
bool enabled () const
 
bool disabled () const
 
void enable ()
 
void disabled ()
 
template<typename T >
abstract_return_t< const Tvalue (bool aUnappliedNew=false) const
 
template<typename T >
abstract_return_t< const Tmodified_value () const
 
std::string value_as_string (bool aUnappliedNew=false) const
 
template<typename T >
void set_default_value (T const &aDefaultValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
 
template<typename T >
void set_value (T const &aNewValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
 
template<typename T >
void apply_value (T const &aNewValue, std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae >={})
 
i_settingoperator= (i_setting const &aRhs)
 
i_settingoperator= (i_setting_value const &aRhs)
 
template<typename T >
i_settingoperator= (T const &aNewValue)
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Protected Member Functions

virtual i_setting_valuetemp_setting_value ()=0
 

Friends

class settings
 

Detailed Description

Definition at line 49 of file i_setting.hpp.

Member Typedef Documentation

◆ abstract_type

Member Function Documentation

◆ apply_value()

template<typename T >
void neolib::i_setting::apply_value ( T const aNewValue,
std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae = {} 
)
inline

Definition at line 133 of file i_setting.hpp.

◆ clear()

virtual void neolib::i_setting::clear ( )
pure virtual

Implemented in neolib::setting< T >.

◆ constraints()

virtual i_setting_constraints const & neolib::i_setting::constraints ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ default_value()

virtual i_setting_value const & neolib::i_setting::default_value ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ disabled() [1/2]

void neolib::i_setting::disabled ( )
inline

Definition at line 98 of file i_setting.hpp.

◆ disabled() [2/2]

bool neolib::i_setting::disabled ( ) const
inline

Definition at line 90 of file i_setting.hpp.

◆ enable()

void neolib::i_setting::enable ( )
inline

Definition at line 94 of file i_setting.hpp.

◆ enabled()

bool neolib::i_setting::enabled ( ) const
inline

Definition at line 86 of file i_setting.hpp.

◆ format()

virtual i_string const & neolib::i_setting::format ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ hidden()

virtual bool neolib::i_setting::hidden ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ is_default()

virtual bool neolib::i_setting::is_default ( bool  aUnappliedNew = false) const
pure virtual

Implemented in neolib::setting< T >.

◆ is_enabled()

virtual bool neolib::i_setting::is_enabled ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ key()

virtual declare_event(changing) declare_event(changed) public i_string const & neolib::i_setting::key ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ modified()

virtual bool neolib::i_setting::modified ( ) const
pure virtual

Implemented in neolib::setting< T >.

◆ modified_value() [1/2]

template<typename T >
abstract_return_t< const T > neolib::i_setting::modified_value ( ) const
inline

Definition at line 108 of file i_setting.hpp.

◆ modified_value() [2/2]

virtual i_setting_value const & neolib::i_setting::modified_value ( ) const
pure virtual

◆ operator=() [1/3]

i_setting & neolib::i_setting::operator= ( i_setting const aRhs)
inline

Definition at line 141 of file i_setting.hpp.

◆ operator=() [2/3]

i_setting & neolib::i_setting::operator= ( i_setting_value const aRhs)
inline

Definition at line 146 of file i_setting.hpp.

◆ operator=() [3/3]

template<typename T >
i_setting & neolib::i_setting::operator= ( T const aNewValue)
inline

Definition at line 152 of file i_setting.hpp.

◆ set_default_value() [1/2]

virtual void neolib::i_setting::set_default_value ( i_setting_value const aDefaultValue)
pure virtual

◆ set_default_value() [2/2]

template<typename T >
void neolib::i_setting::set_default_value ( T const aDefaultValue,
std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae = {} 
)
inline

Definition at line 119 of file i_setting.hpp.

◆ set_enabled()

virtual void neolib::i_setting::set_enabled ( bool  aEnabled)
pure virtual

Implemented in neolib::setting< T >.

◆ set_value() [1/2]

virtual void neolib::i_setting::set_value ( i_setting_value const aNewValue)
pure virtual

◆ set_value() [2/2]

template<typename T >
void neolib::i_setting::set_value ( T const aNewValue,
std::enable_if_t<!std::is_convertible_v< T &, i_setting_value & >, sfinae = {} 
)
inline

Definition at line 126 of file i_setting.hpp.

◆ set_value_from_string()

virtual void neolib::i_setting::set_value_from_string ( i_string const aNewValue)
pure virtual

Implemented in neolib::setting< T >.

◆ temp_setting_value()

virtual i_setting_value & neolib::i_setting::temp_setting_value ( )
protectedpure virtual

Implemented in neolib::setting< T >.

◆ value() [1/2]

template<typename T >
abstract_return_t< const T > neolib::i_setting::value ( bool  aUnappliedNew = false) const
inline

Definition at line 103 of file i_setting.hpp.

◆ value() [2/2]

virtual i_setting_value const & neolib::i_setting::value ( bool  aUnappliedNew = false) const
pure virtual

◆ value_as_string() [1/2]

std::string neolib::i_setting::value_as_string ( bool  aUnappliedNew = false) const
inline

Definition at line 112 of file i_setting.hpp.

◆ value_as_string() [2/2]

virtual void neolib::i_setting::value_as_string ( i_string aValue,
bool  aUnappliedNew = false 
) const
pure virtual

Friends And Related Symbol Documentation

◆ settings

Definition at line 51 of file i_setting.hpp.


The documentation for this class was generated from the following file: