X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/03647350fc7cd141953c72e0284e928847d30f44..f86190702bb433f139dc2c335e2c551755def81f:/src/osx/core/stdpaths_cf.cpp?ds=sidebyside diff --git a/src/osx/core/stdpaths_cf.cpp b/src/osx/core/stdpaths_cf.cpp index 8a1cee42a5..f5bf602b11 100644 --- a/src/osx/core/stdpaths_cf.cpp +++ b/src/osx/core/stdpaths_cf.cpp @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: mac/corefoundation/stdpaths.cpp +// Name: src/osx/core/stdpaths_cf.cpp // Purpose: wxStandardPaths implementation for CoreFoundation systems // Author: David Elliott // Modified by: @@ -49,14 +49,12 @@ wxStandardPathsCF::wxStandardPathsCF() : m_bundle(CFBundleGetMainBundle()) { CFRetain(m_bundle); - UseAppInfo(AppInfo_AppName | AppInfo_VendorName); } wxStandardPathsCF::wxStandardPathsCF(wxCFBundleRef bundle) : m_bundle(bundle) { CFRetain(m_bundle); - UseAppInfo(AppInfo_AppName | AppInfo_VendorName); } wxStandardPathsCF::~wxStandardPathsCF() @@ -85,7 +83,7 @@ static wxString BundleRelativeURLToPath(CFURLRef relativeURL) wxCHECK_MSG(absoluteURL, wxEmptyString, wxT("Failed to resolve relative URL to absolute URL")); CFStringRef cfStrPath = CFURLCopyFileSystemPath(absoluteURL,kDefaultPathStyle); CFRelease(absoluteURL); - return wxCFStringRef(cfStrPath).AsString(wxLocale::GetSystemEncoding()); + return wxCFStringRef::AsStringWithNormalizationFormC(cfStrPath); } wxString wxStandardPathsCF::GetFromFunc(wxCFURLRef (*func)(wxCFBundleRef)) const @@ -120,7 +118,7 @@ wxString wxStandardPathsCF::GetDocumentsDir() const wxString wxStandardPathsCF::GetConfigDir() const { #if defined( __WXMAC__ ) && wxOSX_USE_CARBON - return wxMacFindFolder((short)kLocalDomain, kPreferencesFolderType, kCreateFolder); + return wxMacFindFolderNoSeparator((short)kLocalDomain, kPreferencesFolderType, kCreateFolder); #else return wxT("/Library/Preferences"); #endif @@ -129,7 +127,7 @@ wxString wxStandardPathsCF::GetConfigDir() const wxString wxStandardPathsCF::GetUserConfigDir() const { #if defined( __WXMAC__ ) && wxOSX_USE_CARBON - return wxMacFindFolder((short)kUserDomain, kPreferencesFolderType, kCreateFolder); + return wxMacFindFolderNoSeparator((short)kUserDomain, kPreferencesFolderType, kCreateFolder); #else return wxFileName::GetHomeDir() + wxT("/Library/Preferences"); #endif @@ -143,36 +141,7 @@ wxString wxStandardPathsCF::GetDataDir() const wxString wxStandardPathsCF::GetExecutablePath() const { #ifdef __WXMAC__ -#if 1 - return GetFromFunc(CFBundleCopyBundleURL); -#else - // TODO remove if cf implementation ok - ProcessInfoRec processinfo; - ProcessSerialNumber procno ; -#ifdef __LP64__ - FSRef fsRef; -#else - FSSpec fsSpec; -#endif - - procno.highLongOfPSN = 0 ; - procno.lowLongOfPSN = kCurrentProcess ; - processinfo.processInfoLength = sizeof(ProcessInfoRec); - processinfo.processName = NULL; -#ifdef __LP64__ - processinfo.processAppRef = &fsRef; -#else - processinfo.processAppSpec = &fsSpec; -#endif - - GetProcessInformation( &procno , &processinfo ) ; -#ifdef __LP64__ - return wxMacFSRefToPath(&fsRef); -#else - return wxMacFSSpec2MacFilename(&fsSpec); -#endif -#endif - + return GetFromFunc(CFBundleCopyExecutableURL); #else return wxStandardPathsBase::GetExecutablePath(); #endif @@ -181,7 +150,7 @@ wxString wxStandardPathsCF::GetExecutablePath() const wxString wxStandardPathsCF::GetLocalDataDir() const { #if defined( __WXMAC__ ) && wxOSX_USE_CARBON - return AppendAppInfo(wxMacFindFolder((short)kLocalDomain, kApplicationSupportFolderType, kCreateFolder)); + return AppendAppInfo(wxMacFindFolderNoSeparator((short)kLocalDomain, kApplicationSupportFolderType, kCreateFolder)); #else return AppendAppInfo(wxT("/Library/Application Support")); #endif @@ -190,7 +159,7 @@ wxString wxStandardPathsCF::GetLocalDataDir() const wxString wxStandardPathsCF::GetUserDataDir() const { #if defined( __WXMAC__ ) && wxOSX_USE_CARBON - return AppendAppInfo(wxMacFindFolder((short)kUserDomain, kApplicationSupportFolderType, kCreateFolder)); + return AppendAppInfo(wxMacFindFolderNoSeparator((short)kUserDomain, kApplicationSupportFolderType, kCreateFolder)); #else return AppendAppInfo(wxFileName::GetHomeDir() + wxT("/Library/Application Support")); #endif