KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PARAM_PATH_LIST Class Reference

Represents a list of strings holding directory paths. More...

#include <parameters.h>

Inheritance diagram for PARAM_PATH_LIST:
PARAM_LIST< wxString > PARAM_BASE

Public Member Functions

 PARAM_PATH_LIST (const std::string &aJsonPath, std::vector< wxString > *aPtr, std::initializer_list< wxString > aDefault, bool aReadOnly=false)
 
 PARAM_PATH_LIST (const std::string &aJsonPath, std::vector< wxString > *aPtr, std::vector< wxString > aDefault, 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...
 
bool MatchesFile (JSON_SETTINGS *aSettings) const override
 Checks whether the parameter in memory matches the one in a given JSON file. More...
 
void SetDefault () override
 
const std::string & GetJsonPath () const
 

Protected Attributes

std::vector< wxString > * m_ptr
 
std::vector< wxString > m_default
 
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 Member Functions

wxString toFileFormat (const wxString &aString) const
 
wxString fromFileFormat (const wxString &aString) const
 

Detailed Description

Represents a list of strings holding directory paths.

Normalizes paths to unix directory separator style in the file.

Definition at line 488 of file parameters.h.

Constructor & Destructor Documentation

◆ PARAM_PATH_LIST() [1/2]

PARAM_PATH_LIST::PARAM_PATH_LIST ( const std::string &  aJsonPath,
std::vector< wxString > *  aPtr,
std::initializer_list< wxString >  aDefault,
bool  aReadOnly = false 
)
inline

Definition at line 491 of file parameters.h.

◆ PARAM_PATH_LIST() [2/2]

PARAM_PATH_LIST::PARAM_PATH_LIST ( const std::string &  aJsonPath,
std::vector< wxString > *  aPtr,
std::vector< wxString >  aDefault,
bool  aReadOnly = false 
)
inline

Definition at line 496 of file parameters.h.

Member Function Documentation

◆ fromFileFormat()

wxString PARAM_PATH_LIST::fromFileFormat ( const wxString &  aString) const
inlineprivate

Definition at line 524 of file parameters.h.

Referenced by Load(), and MatchesFile().

◆ GetJsonPath()

const std::string & PARAM_BASE::GetJsonPath ( ) const
inlineinherited
Returns
the path name of the parameter used to store it in the json file mainly useful in error messages

Definition at line 69 of file parameters.h.

References PARAM_BASE::m_path.

◆ Load()

void PARAM_PATH_LIST::Load ( JSON_SETTINGS aSettings,
bool  aResetIfMissing = true 
) const
inlineoverridevirtual

Loads the value of this parameter from JSON to the underlying storage.

Parameters
aSettingsis the JSON_SETTINGS object to load from.
aResetIfMissingif true will set the parameter to its default value if load fails

Implements PARAM_BASE.

Definition at line 501 of file parameters.h.

References fromFileFormat(), PARAM_LIST< Type >::Load(), PARAM_LIST< wxString >::m_ptr, and PARAM_BASE::m_readOnly.

◆ MatchesFile()

bool PARAM_PATH_LIST::MatchesFile ( JSON_SETTINGS aSettings) const
overridevirtual

Checks whether the parameter in memory matches the one in a given JSON file.

Parameters
aSettingsis a JSON_SETTINGS to check the JSON file contents of
Returns
true if the parameter in memory matches its value in the file

Implements PARAM_BASE.

Definition at line 222 of file parameters.cpp.

References fromFileFormat(), JSON_SETTINGS::GetJson(), PARAM_BASE::m_path, and PARAM_LIST< wxString >::m_ptr.

◆ SetDefault()

void PARAM_LIST< wxString >::SetDefault ( )
inlineoverridevirtualinherited

Implements PARAM_BASE.

Definition at line 436 of file parameters.h.

◆ Store()

void PARAM_PATH_LIST::Store ( JSON_SETTINGS aSettings) const
overridevirtual

Stores the value of this parameter to the given JSON_SETTINGS object.

Parameters
aSettingsis the JSON_SETTINGS object to store into.

Implements PARAM_BASE.

Definition at line 211 of file parameters.cpp.

References PARAM_BASE::m_path, PARAM_LIST< wxString >::m_ptr, JSON_SETTINGS::Set(), and toFileFormat().

◆ toFileFormat()

wxString PARAM_PATH_LIST::toFileFormat ( const wxString &  aString) const
inlineprivate

Definition at line 517 of file parameters.h.

Referenced by Store().

Member Data Documentation

◆ m_default

std::vector<wxString > PARAM_LIST< wxString >::m_default
protectedinherited

Definition at line 446 of file parameters.h.

◆ m_path

◆ m_ptr

std::vector<wxString >* PARAM_LIST< wxString >::m_ptr
protectedinherited

Definition at line 444 of file parameters.h.

◆ m_readOnly

bool PARAM_BASE::m_readOnly
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(), Load(), and PARAM_WXSTRING_MAP::Load().


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