///////////////////////////////////////////////////////////////////////////////
-// Name: confbase.h
+// Name: wx/confbase.h
// Purpose: declaration of the base class of all config implementations
// (see also: fileconf.h and msw/regconf.h and iniconf.h)
// Author: Karsten Ballueder & Vadim Zeitlin
/// separates group and entry names (probably shouldn't be changed)
#ifndef wxCONFIG_PATH_SEPARATOR
- #define wxCONFIG_PATH_SEPARATOR _T('/')
+ #define wxCONFIG_PATH_SEPARATOR wxT('/')
#endif
/// introduces immutable entries
// (i.e. the ones which can't be changed from the local config file)
#ifndef wxCONFIG_IMMUTABLE_PREFIX
- #define wxCONFIG_IMMUTABLE_PREFIX _T('!')
+ #define wxCONFIG_IMMUTABLE_PREFIX wxT('!')
#endif
#if wxUSE_CONFIG
-#include "wx/string.h"
-
/// should we use registry instead of configuration files under Windows?
// (i.e. whether wxConfigBase::Create() will create a wxFileConfig (if it's
// false) or wxRegConfig (if it's true and we're under Win32))
// symbol if the template functions are available
#if (!defined(__VISUALC__) || __VISUALC__ > 1200) && \
!defined( __VMS ) && \
+ !(defined(__HP_aCC) && defined(__hppa)) && \
!defined (__DMC__)
#define wxHAS_CONFIG_TEMPLATE_RW
#endif
// abstract base class wxConfigBase which defines the interface for derived
// classes
//
-// wxConfig organizes the items in a tree-like structure (modeled after the
+// wxConfig organizes the items in a tree-like structure (modelled after the
// Unix/Dos filesystem). There are groups (directories) and keys (files).
// There is always one current group given by the current path.
//
bool Read(const wxString& key, double* val) const;
bool Read(const wxString& key, double* val, double defVal) const;
+ // read a float
+ bool Read(const wxString& key, float* val) const;
+ bool Read(const wxString& key, float* val, float defVal) const;
+
// read a bool
bool Read(const wxString& key, bool* val) const;
bool Read(const wxString& key, bool* val, bool defVal) const;
}
#endif // wxHAS_CONFIG_TEMPLATE_RW
- // convenience functions returning directly the value
+ // convenience functions returning directly the value
wxString Read(const wxString& key,
const wxString& defVal = wxEmptyString) const
{ wxString s; (void)Read(key, &s, defVal); return s; }
// template Read() would be used
wxString Read(const wxString& key, const char* defVal) const
{ return Read(key, wxString(defVal)); }
-#if wxUSE_WCHAR_T
wxString Read(const wxString& key, const wchar_t* defVal) const
{ return Read(key, wxString(defVal)); }
-#endif
long ReadLong(const wxString& key, long defVal) const
{ long l; (void)Read(key, &l, defVal); return l; }
{ return Write(key, wxString(value)); }
bool Write(const wxString& key, const unsigned char *value)
{ return Write(key, wxString(value)); }
-#if wxUSE_WCHAR_T
bool Write(const wxString& key, const wchar_t *value)
{ return Write(key, wxString(value)); }
-#endif
// we also have to provide specializations for other types which we want to