///////////////////////////////////////////////////////////////////////////////
-// Name: mac/corefoundation/stdpaths.cpp
+// Name: src/osx/core/stdpaths_cf.cpp
// Purpose: wxStandardPaths implementation for CoreFoundation systems
// Author: David Elliott
// Modified by:
// Created: 2004-10-27
-// RCS-ID: $Id$
// Copyright: (c) 2004 David Elliott <dfe@cox.net>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
: 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()
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
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
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
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
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
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