X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e9c4c02c19c11e6cd487e03e0a7b105d0281fd7e..5adad46628e545a6d4172ecf3a0cb848934f5cd0:/src/common/config.cpp?ds=sidebyside diff --git a/src/common/config.cpp b/src/common/config.cpp index be417c4243..05ca5af209 100644 --- a/src/common/config.cpp +++ b/src/common/config.cpp @@ -27,18 +27,17 @@ #define wxUSE_CONFIG_NATIVE 1 #endif +#include "wx/config.h" +#include "wx/intl.h" +#include "wx/log.h" + #if wxUSE_CONFIG && ((wxUSE_FILE && wxUSE_TEXTFILE) || wxUSE_CONFIG_NATIVE) #include "wx/app.h" #include "wx/file.h" -#include "wx/log.h" #include "wx/textfile.h" #include "wx/utils.h" -#include "wx/log.h" #include "wx/utils.h" -#include "wx/intl.h" - -#include "wx/config.h" #include #include @@ -132,10 +131,9 @@ bool wxConfigBase::Read(const wxString& key, long *pl, long defVal) const bool wxConfigBase::Read(const wxString& key, double* val) const { wxString str; - if (Read(key, & str)) + if ( Read(key, &str) ) { - *val = wxAtof(str); - return TRUE; + return str.ToDouble(val); } return FALSE; @@ -190,28 +188,29 @@ bool wxConfigBase::Read(const wxString& key, int *pi, int defVal) const { long l; bool ret = Read(key, &l, (long) defVal); - *pi = (int) l; + if (ret) + *pi = (int) l; return ret; } bool wxConfigBase::Write(const wxString& key, double val) { wxString str; - str.Printf(wxT("%f"), val); + str.Printf(wxT("%g"), val); return Write(key, str); } bool wxConfigBase::Write(const wxString& key, bool value) { - long l = (value ? 1 : 0); - return Write(key, l); + return Write(key, value ? 1l : 0l); } -bool wxConfigBase::Write( const wxString &key, const wxChar *text ) +bool wxConfigBase::Write(const wxString& key, const wxChar *value) { - wxString str( text ) ; - return Write( key, str ) ; + // explicit cast needed, otherwise value would have been converted to bool + return Write(key, wxString(value)); } + wxString wxConfigBase::ExpandEnvVars(const wxString& str) const { wxString tmp; // Required for BC++ @@ -266,6 +265,8 @@ wxConfigPathChanger::~wxConfigPathChanger() } } +#endif // wxUSE_CONFIG + // ---------------------------------------------------------------------------- // static & global functions // ---------------------------------------------------------------------------- @@ -381,6 +382,8 @@ wxString wxExpandEnvVars(const wxString& str) } // this function is used to properly interpret '..' in path +/// separates group and entry names (probably shouldn't be changed) + void wxSplitPath(wxArrayString& aParts, const wxChar *sz) { aParts.Empty(); @@ -418,5 +421,4 @@ void wxSplitPath(wxArrayString& aParts, const wxChar *sz) } } -#endif // wxUSE_CONFIG