]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/intl.cpp
use wxPopupWindow for wxCombo (doesn't work yet)
[wxWidgets.git] / src / common / intl.cpp
index 3bc3f8b79f996130bf9e1d8b008f5b9743f8c781..9ebb5edcd56ef0253af98c22793b8cf2fb9ec82f 100644 (file)
@@ -1036,8 +1036,7 @@ wxString GetMsgCatalogSubdirs(const wxString& prefix, const wxString& lang)
     //    breaking apps after they are recompiled against the latest wx
     // b) it makes it possible to package app's support files in the same
     //    way on all target platforms
-    wxString pathPrefix;
-    pathPrefix << prefix << wxFILE_SEP_PATH << lang;
+    const wxString pathPrefix = wxFileName(prefix, lang).GetFullPath();
 
     wxString searchPath;
     searchPath.reserve(4*pathPrefix.length());
@@ -1935,18 +1934,14 @@ void wxLocale::AddCatalogLookupPathPrefix(const wxString& prefix)
     // first get the string identifying the language from the environment
     wxString langFull;
 #ifdef __WXMAC__
-    // as at the C-runtime level many OS X versions only have a "C" locale, therefore we use the CFLocale (ICU based)
     wxCFRef<CFLocaleRef> userLocaleRef(CFLocaleCopyCurrent());
     
     // because the locale identifier (kCFLocaleIdentifier) is formatted a little bit differently, eg 
     // az_Cyrl_AZ@calendar=buddhist;currency=JPY we just recreate the base info as expected by wx here
     
-    CFTypeRef cfstr = CFLocaleGetValue(userLocaleRef, kCFLocaleLanguageCode);
-    wxMacCFStringHolder str(CFStringCreateCopy(NULL, static_cast<CFStringRef>(cfstr)));
+    wxCFStringRef str(wxCFRetain((CFStringRef)CFLocaleGetValue(userLocaleRef, kCFLocaleLanguageCode)));
     langFull = str.AsString()+"_";
-        
-    cfstr = CFLocaleGetValue(userLocaleRef, kCFLocaleCountryCode);
-    str.Assign(CFStringCreateCopy(NULL, static_cast<CFStringRef>(cfstr)));
+    str.reset(wxCFRetain((CFStringRef)CFLocaleGetValue(userLocaleRef, kCFLocaleCountryCode)));
     langFull += str.AsString();
 #else
     if (!wxGetEnv(wxT("LC_ALL"), &langFull) &&
@@ -2653,7 +2648,7 @@ wxString wxLocale::GetInfo(wxLocaleInfo index, wxLocaleCategory WXUNUSED(cat))
             wxFAIL_MSG( "Unknown locale info" );
     }
 
-    wxMacCFStringHolder
+    wxCFStringRef
         str(CFStringCreateCopy(NULL, static_cast<CFStringRef>(cfstr)));
     return str.AsString();
 }