X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/726b98e9a1a796783e835b24caef03558527e85b..c5d99d7b5c4afa4fba509d751937d5e6cb7b2703:/src/mac/corefoundation/stdpaths_cf.cpp?ds=sidebyside diff --git a/src/mac/corefoundation/stdpaths_cf.cpp b/src/mac/corefoundation/stdpaths_cf.cpp index f38c5a7210..07bfaaa111 100644 --- a/src/mac/corefoundation/stdpaths_cf.cpp +++ b/src/mac/corefoundation/stdpaths_cf.cpp @@ -18,12 +18,12 @@ #include "wx/filename.h" #include "wx/mac/corefoundation/cfstring.h" +#if defined(__DARWIN__) #include #include - -// See comment in include/wx/mac/corefoundation/stdpaths.h -#ifndef wxStandardPaths -#warning "wxStandardPaths should be defined to wxStandardPathsCF when compiling this file." +#else +#include +#include #endif #if defined(__WXCOCOA__) || defined(__WXMAC_OSX__) @@ -41,50 +41,43 @@ static wxString BundleRelativeURLToPath(CFURLRef relativeURL) return wxMacCFStringHolder(cfStrPath).AsString(wxLocale::GetSystemEncoding()); } - -static wxStandardPaths gs_stdPaths; -/* static */ wxStandardPaths& wxStandardPaths::Get() -{ - return gs_stdPaths; -} - -wxStandardPaths::wxStandardPaths() +wxStandardPathsCF::wxStandardPathsCF() : m_bundle(CFBundleGetMainBundle()) { CFRetain(m_bundle); } -wxStandardPaths::wxStandardPaths(struct __CFBundle *bundle) +wxStandardPathsCF::wxStandardPathsCF(struct __CFBundle *bundle) : m_bundle(bundle) { CFRetain(m_bundle); } -wxStandardPaths::~wxStandardPaths() +wxStandardPathsCF::~wxStandardPathsCF() { CFRelease(m_bundle); } -void wxStandardPaths::SetBundle(struct __CFBundle *bundle) +void wxStandardPathsCF::SetBundle(struct __CFBundle *bundle) { CFRetain(bundle); CFRelease(m_bundle); m_bundle = bundle; } -wxString wxStandardPaths::GetConfigDir() const +wxString wxStandardPathsCF::GetConfigDir() const { // TODO: What do we do for pure Carbon? return wxT("/Library/Preferences"); } -wxString wxStandardPaths::GetUserConfigDir() const +wxString wxStandardPathsCF::GetUserConfigDir() const { // TODO: What do we do for pure Carbon? return wxFileName::GetHomeDir() + wxT("/Library/Preferences"); } -wxString wxStandardPaths::GetDataDir() const +wxString wxStandardPathsCF::GetDataDir() const { wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps")); CFURLRef relativeURL = CFBundleCopySharedSupportURL(m_bundle); @@ -94,17 +87,17 @@ wxString wxStandardPaths::GetDataDir() const return ret; } -wxString wxStandardPaths::GetLocalDataDir() const +wxString wxStandardPathsCF::GetLocalDataDir() const { return AppendAppName(wxT("/Library/Application Support")); } -wxString wxStandardPaths::GetUserDataDir() const +wxString wxStandardPathsCF::GetUserDataDir() const { return AppendAppName(wxFileName::GetHomeDir() + _T("/Library/Application Support")); } -wxString wxStandardPaths::GetPluginsDir() const +wxString wxStandardPathsCF::GetPluginsDir() const { wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps")); CFURLRef relativeURL = CFBundleCopyBuiltInPlugInsURL(m_bundle);