From: Václav Slavík Date: Thu, 1 Mar 2007 20:03:50 +0000 (+0000) Subject: allow using both char* and wchar_t* in wxFileConfig and wxConfigBase, too X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/1c8c91463fcd1749ad285017397ef2edbf2ca6ec allow using both char* and wchar_t* in wxFileConfig and wxConfigBase, too git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/confbase.h b/include/wx/confbase.h index d764bbbd48..698e94b895 100644 --- a/include/wx/confbase.h +++ b/include/wx/confbase.h @@ -203,8 +203,12 @@ public: // we have to provide a separate version for C strings as otherwise they // would be converted to bool and not to wxString as expected! - bool Write(const wxString& key, const wxChar *value) + bool Write(const wxString& key, const 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 // permanently writes all changes virtual bool Flush(bool bCurrentOnly = false) = 0; diff --git a/include/wx/fileconf.h b/include/wx/fileconf.h index 140b707157..0c42cfe4cf 100644 --- a/include/wx/fileconf.h +++ b/include/wx/fileconf.h @@ -111,8 +111,8 @@ public: // // where file is the basename of szFile, ext is its extension // or .conf (Unix) or .ini (Win) if it has none - static wxString GetGlobalFileName(const wxChar *szFile); - static wxString GetLocalFileName(const wxChar *szFile); + static wxString GetGlobalFileName(const wxString& file); + static wxString GetLocalFileName(const wxString& file); // ctor & dtor // New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or diff --git a/src/common/fileconf.cpp b/src/common/fileconf.cpp index 6352e8cdfb..7207637f63 100644 --- a/src/common/fileconf.cpp +++ b/src/common/fileconf.cpp @@ -328,12 +328,12 @@ wxString wxFileConfig::GetLocalDir() return strDir; } -wxString wxFileConfig::GetGlobalFileName(const wxChar *szFile) +wxString wxFileConfig::GetGlobalFileName(const wxString& file) { wxString str = GetGlobalDir(); - str << szFile; + str << file; - if ( wxStrchr(szFile, wxT('.')) == NULL ) + if ( wxStrchr(file, wxT('.')) == NULL ) #if defined( __WXMAC__ ) str << wxT(" Preferences") ; #elif defined( __UNIX__ ) @@ -345,7 +345,7 @@ wxString wxFileConfig::GetGlobalFileName(const wxChar *szFile) return str; } -wxString wxFileConfig::GetLocalFileName(const wxChar *szFile) +wxString wxFileConfig::GetLocalFileName(const wxString& file) { #ifdef __VMS__ // On VMS I saw the problem that the home directory was appended @@ -360,10 +360,10 @@ wxString wxFileConfig::GetLocalFileName(const wxChar *szFile) str << wxT('.'); #endif - str << szFile; + str << file; #if defined(__WINDOWS__) || defined(__DOS__) - if ( wxStrchr(szFile, wxT('.')) == NULL ) + if ( wxStrchr(file, wxT('.')) == NULL ) str << wxT(".ini"); #endif