X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/61ba49f2b62b7ef9e871b75866836d1d9db06fb0..1dd521517c6a7047dce77302cd35a7f07ee2f595:/include/wx/confbase.h diff --git a/include/wx/confbase.h b/include/wx/confbase.h index e849917ffb..46336d3d65 100644 --- a/include/wx/confbase.h +++ b/include/wx/confbase.h @@ -53,24 +53,12 @@ #endif // Style flags for constructor style parameter -#define wxCONFIG_USE_LOCAL_FILE 1 -#define wxCONFIG_USE_GLOBAL_FILE 2 - -// ---------------------------------------------------------------------------- -// various helper global functions -// ---------------------------------------------------------------------------- - -/* - Replace environment variables ($SOMETHING) with their values. The format is - $VARNAME or ${VARNAME} where VARNAME contains alphanumeric characters and - '_' only. '$' must be escaped ('\$') in order to be taken literally. - */ -extern wxString wxExpandEnvVars(const wxString &sz); - -/* - Split path into parts removing '..' in progress - */ -extern void wxSplitPath(wxArrayString& aParts, const char *sz); +enum +{ + wxCONFIG_USE_LOCAL_FILE = 1, + wxCONFIG_USE_GLOBAL_FILE = 2, + wxCONFIG_USE_RELATIVE_PATH = 4 +}; // ---------------------------------------------------------------------------- // abstract base class wxConfigBase which defines the interface for derived @@ -81,7 +69,7 @@ extern void wxSplitPath(wxArrayString& aParts, const char *sz); // There is always one current group given by the current path. // // Keys are pairs "key_name = value" where value may be of string or integer -// (long) type (@@@ doubles and other types such as wxDate coming soon). +// (long) type (TODO doubles and other types such as wxDate coming soon). // ---------------------------------------------------------------------------- class WXDLLEXPORT wxConfigBase { @@ -111,7 +99,9 @@ public: // should Get() try to create a new log object if the current one is NULL? static void DontCreateOnDemand() { ms_bAutoCreate = FALSE; } - // ctors & virtual dtor + // ctor & virtual dtor + // ctor (can be used as default ctor too) + // // Not all args will always be used by derived classes, but including // them all in each class ensures compatibility. If appName is empty, // uses wxApp name @@ -196,6 +186,7 @@ public: // Convenience functions virtual bool Write(const wxString& key, double value); virtual bool Write(const wxString& key, bool value); + virtual bool Write(const wxString& key, const wxChar *text ) ; // permanently writes all changes virtual bool Flush(bool bCurrentOnly = FALSE) = 0; @@ -235,21 +226,12 @@ public: wxString GetAppName() const { return m_appName; } wxString GetVendorName() const { return m_vendorName; } - virtual void SetAppName(const wxString& appName) - { m_appName = appName; } - virtual void SetVendorName(const wxString& vendorName) - { m_vendorName = vendorName; } - void SetStyle(long style) { m_style = style; } long GetStyle() const { return m_style; } protected: static bool IsImmutable(const wxString& key) - #ifndef __WXMAC__ - { return !key.IsEmpty() && key[0u] == wxCONFIG_IMMUTABLE_PREFIX; } - #else - { return !key.IsEmpty() && key[0ul] == wxCONFIG_IMMUTABLE_PREFIX; } - #endif + { return !key.IsEmpty() && key[0] == wxCONFIG_IMMUTABLE_PREFIX; } private: // are we doing automatic environment variable expansion? @@ -310,9 +292,23 @@ private: #define sm_classwxConfig sm_classwxFileConfig #endif -#endif +#endif // wxUSE_CONFIG + +// ---------------------------------------------------------------------------- +// various helper global functions (defined even if !wxUSE_CONFIG) +// ---------------------------------------------------------------------------- + +/* + Replace environment variables ($SOMETHING) with their values. The format is + $VARNAME or ${VARNAME} where VARNAME contains alphanumeric characters and + '_' only. '$' must be escaped ('\$') in order to be taken literally. + */ +extern wxString wxExpandEnvVars(const wxString &sz); - // wxUSE_CONFIG +/* + Split path into parts removing '..' in progress + */ +extern void wxSplitPath(wxArrayString& aParts, const wxChar *sz); #endif // _WX_CONFIG_H_