29void wxConfigLoadParams( wxConfigBase* aCfg,
const std::vector<std::unique_ptr<PARAM_CFG>>& aList,
30 const wxString& aGroup )
34 for(
const auto& param : aList )
36 if( !!param->m_Group )
37 aCfg->SetPath( param->m_Group );
39 aCfg->SetPath( aGroup );
44 param->ReadParam( aCfg );
49void wxConfigLoadSetups( wxConfigBase* aCfg,
const std::vector<std::unique_ptr<PARAM_CFG>>& aList )
53 for(
const auto& param : aList )
58 param->ReadParam( aCfg );
63void wxConfigSaveParams( wxConfigBase* aCfg,
const std::vector<std::unique_ptr<PARAM_CFG>>& aList,
64 const wxString& aGroup )
68 for(
const auto& param : aList )
70 if( !!param->m_Group )
71 aCfg->SetPath( param->m_Group );
73 aCfg->SetPath( aGroup );
80 if( !!param->m_Ident )
81 aCfg->DeleteGroup( param->m_Ident );
85 param->SaveParam( aCfg );
91void wxConfigSaveSetups( wxConfigBase* aCfg,
const std::vector<std::unique_ptr<PARAM_CFG>>& aList )
95 for(
const auto& param : aList )
102 if( !!param->m_Ident )
103 aCfg->DeleteGroup( param->m_Ident );
107 param->SaveParam( aCfg );
119 wxString tnumber = wxString::Format( wxT(
"%.16g" ), aValue );
121 aConfig->Write( aKey, tnumber );
126 const wxChar*
group,
const wxString& legacy )
138 int min,
int max,
const wxChar*
group,
const wxString& legacy ) :
149 int min,
int max,
const wxChar*
group,
const wxString& legacy ) :
187 int default_val,
int min,
int max,
188 const wxChar*
group,
double aBiu2cfgunit,
189 const wxString& legacy_ident ) :
198 int default_val,
int min,
int max,
199 const wxChar*
group,
double aBiu2cfgunit,
200 const wxString& legacy_ident ) :
240 double default_val,
double min,
double max,
241 const wxChar*
group ) :
252 const wxString& ident,
257 const wxChar*
group ) :
274 aConfig->Read(
m_Ident, &dtmp );
297 const wxChar*
group,
const wxString& legacy ) :
306 int default_val,
const wxChar*
group,
const wxString& legacy ) :
339 const wxChar*
group ) :
347 const wxString& default_val,
const wxChar*
group ) :
375 const wxChar*
group ) :
383 std::set<wxString>* ptparam,
const wxChar*
group ) :
396 for(
int i = 1;
true; ++i )
402 data = aConfig->Read( key, wxT(
"" ) );
426 aConfig->Write( key, str );
433 const wxChar*
group ) :
445 wxString prm = aConfig->Read(
m_Ident );
450 prm.Replace( wxT(
"/" ), wxT(
"\\" ) );
464 prm.Replace( wxT(
"\\" ), wxT(
"/" ) );
465 aConfig->Write(
m_Ident, prm );
470 wxArrayString* ptparam,
471 const wxChar*
group ) :
485 wxString libname, id_lib;
493 libname = aConfig->Read( id_lib, wxT(
"" ) );
495 if( libname.IsEmpty() )
502 libname.Replace( wxT(
"/" ), wxT(
"\\" ) );
504 libname_list->Add( libname );
519 for(
unsigned indexlib = 0; indexlib < libname_list->GetCount(); indexlib++ )
524 configkey << ( indexlib + 1 );
525 libname = libname_list->Item( indexlib );
528 libname.Replace( wxT(
"\\" ), wxT(
"/" ) );
529 aConfig->Write( configkey, libname );
constexpr BOX2I KiROUND(const BOX2D &aBoxD)
Instantiate the current locale within a scope in which you are expecting exceptions to be thrown.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
bool * m_Pt_param
Pointer to the parameter value.
PARAM_CFG_BOOL(const wxString &ident, bool *ptparam, int default_val=false, const wxChar *group=nullptr, const wxString &legacy_ident=wxEmptyString)
int m_Default
The default value of the parameter.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
double m_Max
Minimum and maximum values of the param type.
PARAM_CFG_DOUBLE(const wxString &ident, double *ptparam, double default_val=0.0, double min=0.0, double max=10000.0, const wxChar *group=nullptr)
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
double * m_Pt_param
Pointer to the parameter value.
double m_Default
The default value of the parameter.
wxString * m_Pt_param
Pointer to the parameter value.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
PARAM_CFG_FILENAME(const wxString &ident, wxString *ptparam, const wxChar *group=nullptr)
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
PARAM_CFG_INT_WITH_SCALE(const wxString &ident, int *ptparam, int default_val=0, int min=std::numeric_limits< int >::min(), int max=std::numeric_limits< int >::max(), const wxChar *group=nullptr, double aBiu2cfgunit=1.0, const wxString &legacy_ident=wxEmptyString)
double m_BIU_to_cfgunit
the factor to convert the saved value in internal value
int m_Max
Minimum and maximum values of the param type.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
PARAM_CFG_INT(const wxString &ident, int *ptparam, int default_val=0, int min=std::numeric_limits< int >::min(), int max=std::numeric_limits< int >::max(), const wxChar *group=nullptr, const wxString &legacy_ident=wxEmptyString)
int m_Default
The default value of the parameter.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
int * m_Pt_param
Pointer to the parameter value.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
wxArrayString * m_Pt_param
Pointer to the parameter value.
PARAM_CFG_LIBNAME_LIST(const wxChar *ident, wxArrayString *ptparam, const wxChar *group=nullptr)
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
std::set< wxString > * m_Pt_param
Pointer to the parameter value.
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
PARAM_CFG_WXSTRING_SET(const wxString &ident, std::set< wxString > *ptparam, const wxChar *group=nullptr)
virtual void ReadParam(wxConfigBase *aConfig) const override
Read the value of the parameter stored in aConfig.
wxString * m_Pt_param
Pointer to the parameter value.
virtual void SaveParam(wxConfigBase *aConfig) const override
Save the value of the parameter stored in aConfig.
PARAM_CFG_WXSTRING(const wxString &ident, wxString *ptparam, const wxChar *group=nullptr)
wxString m_default
The default value of the parameter.
paramcfg_id m_Type
Type of parameter.
wxString m_Ident
Keyword in config data.
wxString m_Group
Group name (this is like a path in the config data)
PARAM_CFG(const wxString &ident, const paramcfg_id type, const wxChar *group=nullptr, const wxString &legacy_ident=wxEmptyString)
bool m_Setup
Install or Project based parameter, true == install.
void wxConfigLoadSetups(wxConfigBase *aCfg, const std::vector< std::unique_ptr< PARAM_CFG > > &aList)
Use aList of PARAM_CFG object to load configuration values from aCfg.
void wxConfigSaveParams(wxConfigBase *aCfg, const std::vector< std::unique_ptr< PARAM_CFG > > &aList, const wxString &aGroup)
Write aList of PARAM_CFG objects aCfg.
void wxConfigSaveSetups(wxConfigBase *aCfg, const std::vector< std::unique_ptr< PARAM_CFG > > &aList)
Writes aList of PARAM_CFG objects to aCfg.
void ConfigBaseWriteDouble(wxConfigBase *aConfig, const wxString &aKey, double aValue)
A helper function to write doubles in configuration file.
void wxConfigLoadParams(wxConfigBase *aCfg, const std::vector< std::unique_ptr< PARAM_CFG > > &aList, const wxString &aGroup)
Use aList of PARAM_CFG objects to load configuration values from aCfg.
KICOMMON_API void ConfigBaseWriteDouble(wxConfigBase *aConfig, const wxString &aKey, double aValue)
A helper function to write doubles in configuration file.
paramcfg_id
Type of parameter in the configuration file.