]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/corefoundation/stdpaths_cf.cpp
Fixed a confusion between window and client size that could lead to
[wxWidgets.git] / src / mac / corefoundation / stdpaths_cf.cpp
index 2b2cf9cba0061427f41435224d0a63663e71d045..925d220ecffb3e2e1342000bccc2be7cd2c5a25d 100644 (file)
@@ -31,7 +31,6 @@
 #include "wx/mac/private.h"
 #endif
 #include "wx/mac/corefoundation/cfstring.h"
-#include "wx/mac/private.h"
 
 #if defined(__DARWIN__)
 #include <CoreFoundation/CFBundle.h>
@@ -109,6 +108,7 @@ wxString wxStandardPathsCF::GetFromFunc(wxCFURLRef (*func)(wxCFBundleRef)) const
 
 wxString wxStandardPathsCF::GetDocumentsDir() const
 {
+#ifdef __WXMAC__
     return wxMacFindFolderNoSeparator
         (
 #if TARGET_API_MAC_OSX
@@ -119,6 +119,9 @@ wxString wxStandardPathsCF::GetDocumentsDir() const
         kDocumentsFolderType,
         kCreateFolder
         );
+#else
+    return wxFileName::GetHomeDir() + wxT("/Documents");
+#endif
 }
 
 // ----------------------------------------------------------------------------
@@ -148,6 +151,27 @@ wxString wxStandardPathsCF::GetDataDir() const
     return GetFromFunc(CFBundleCopySharedSupportURL);
 }
 
+// TODO: implement this using real CoreFoundation API instead of Carbon API
+wxString wxStandardPathsCF::GetExecutablePath() const
+{
+#ifdef __WXMAC__
+    ProcessInfoRec processinfo;
+    ProcessSerialNumber procno ;
+    FSSpec fsSpec;
+
+    procno.highLongOfPSN = 0 ;
+    procno.lowLongOfPSN = kCurrentProcess ;
+    processinfo.processInfoLength = sizeof(ProcessInfoRec);
+    processinfo.processName = NULL;
+    processinfo.processAppSpec = &fsSpec;
+
+    GetProcessInformation( &procno , &processinfo ) ;
+    return wxMacFSSpec2MacFilename(&fsSpec);
+#else
+    return wxStandardPathsBase::GetExecutablePath();
+#endif
+}
+
 wxString wxStandardPathsCF::GetLocalDataDir() const
 {
 #ifdef __WXMAC__