KiCad PCB EDA Suite
|
Stores an enum as an integer. More...
#include <parameters.h>
Public Member Functions | |
PARAM_ENUM (const std::string &aJsonPath, EnumType *aPtr, EnumType aDefault, EnumType aMin, EnumType aMax, bool aReadOnly=false) | |
void | Load (JSON_SETTINGS *aSettings, bool aResetIfMissing=true) const override |
Loads the value of this parameter from JSON to the underlying storage. More... | |
void | Store (JSON_SETTINGS *aSettings) const override |
Stores the value of this parameter to the given JSON_SETTINGS object. More... | |
EnumType | GetDefault () const |
void | SetDefault () override |
bool | MatchesFile (JSON_SETTINGS *aSettings) const override |
Checks whether the parameter in memory matches the one in a given JSON file. More... | |
const std::string & | GetJsonPath () const |
Protected Attributes | |
std::string | m_path |
the string used to store the param in json files More... | |
bool | m_readOnly |
! True if the parameter pointer should never be overwritten More... | |
Private Attributes | |
EnumType * | m_ptr |
EnumType | m_min |
EnumType | m_max |
EnumType | m_default |
Stores an enum as an integer.
Definition at line 216 of file parameters.h.
|
inline |
Definition at line 219 of file parameters.h.
|
inline |
Definition at line 251 of file parameters.h.
References PARAM_ENUM< EnumType >::m_default.
|
inlineinherited |
Definition at line 69 of file parameters.h.
References PARAM_BASE::m_path.
|
inlineoverridevirtual |
Loads the value of this parameter from JSON to the underlying storage.
aSettings | is the JSON_SETTINGS object to load from. |
aResetIfMissing | if true will set the parameter to its default value if load fails |
Implements PARAM_BASE.
Definition at line 229 of file parameters.h.
References JSON_SETTINGS::Get(), PARAM_ENUM< EnumType >::m_default, PARAM_ENUM< EnumType >::m_max, PARAM_ENUM< EnumType >::m_min, PARAM_BASE::m_path, PARAM_ENUM< EnumType >::m_ptr, and PARAM_BASE::m_readOnly.
|
inlineoverridevirtual |
Checks whether the parameter in memory matches the one in a given JSON file.
aSettings | is a JSON_SETTINGS to check the JSON file contents of |
Implements PARAM_BASE.
Definition at line 261 of file parameters.h.
References JSON_SETTINGS::Get(), and PARAM_BASE::m_path.
|
inlineoverridevirtual |
Implements PARAM_BASE.
Definition at line 256 of file parameters.h.
References PARAM_ENUM< EnumType >::m_default, and PARAM_ENUM< EnumType >::m_ptr.
|
inlineoverridevirtual |
Stores the value of this parameter to the given JSON_SETTINGS object.
aSettings | is the JSON_SETTINGS object to store into. |
Implements PARAM_BASE.
Definition at line 246 of file parameters.h.
References PARAM_BASE::m_path, and JSON_SETTINGS::Set().
|
private |
Definition at line 273 of file parameters.h.
Referenced by PARAM_ENUM< EnumType >::GetDefault(), PARAM_ENUM< EnumType >::Load(), and PARAM_ENUM< EnumType >::SetDefault().
|
private |
Definition at line 272 of file parameters.h.
Referenced by PARAM_ENUM< EnumType >::Load().
|
private |
Definition at line 271 of file parameters.h.
Referenced by PARAM_ENUM< EnumType >::Load().
|
protectedinherited |
the string used to store the param in json files
Definition at line 75 of file parameters.h.
Referenced by PARAM_BASE::GetJsonPath(), COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_SCALED< ValueType >::Load(), COLOR_MAP_PARAM::MatchesFile(), PARAM< ValueType >::MatchesFile(), PARAM_PATH::MatchesFile(), PARAM_ENUM< EnumType >::MatchesFile(), PARAM_SCALED< ValueType >::MatchesFile(), PARAM_PATH_LIST::MatchesFile(), PARAM_WXSTRING_MAP::MatchesFile(), COLOR_MAP_PARAM::Store(), PARAM< ValueType >::Store(), PARAM_PATH::Store(), PARAM_ENUM< EnumType >::Store(), PARAM_LAMBDA< ValueType >::Store(), PARAM_SCALED< ValueType >::Store(), and PARAM_PATH_LIST::Store().
|
private |
Definition at line 270 of file parameters.h.
Referenced by PARAM_ENUM< EnumType >::Load(), and PARAM_ENUM< EnumType >::SetDefault().
|
protectedinherited |
! True if the parameter pointer should never be overwritten
Definition at line 78 of file parameters.h.
Referenced by COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_PATH::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_SCALED< ValueType >::Load(), and PARAM_PATH_LIST::Load().