]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/core/utilsexc_base.cpp
Applying patch #10784: eliminate gauge flicker
[wxWidgets.git] / src / osx / core / utilsexc_base.cpp
index 377b2464befe33949d425a92a56f3e2e391bee74..e3e9f996bc387f131cc45a9d1fb6f568e81dc0c2 100644 (file)
 
 // More WX Includes
 #include "wx/filename.h"
-#include "wx/mac/corefoundation/cfstring.h"
+#include "wx/osx/core/cfstring.h"
+#include "wx/osx/core/private.h"
 
 // Default path style
 #define kDefaultPathStyle kCFURLPOSIXPathStyle
 
+#if wxUSE_SOCKETS
+// global pointer which lives in the base library, set from the net one (see
+// sockosx.cpp) and used from the GUI code (see utilsexc_cf.cpp) -- ugly but
+// needed hack, see the above-mentioned files for more information
+class wxSocketManager;
+extern WXDLLIMPEXP_BASE wxSocketManager *wxOSXSocketManagerCF;
+wxSocketManager *wxOSXSocketManagerCF = NULL;
+#endif // wxUSE_SOCKETS
+
+extern bool WXDLLEXPORT wxIsDebuggerRunning()
+{
+    // TODO : try to find out ...
+    return false;
+}
+
+#if wxOSX_USE_COCOA_OR_CARBON
+
+// have a fast version for mac code that returns the version as a return value
+
+long UMAGetSystemVersion()
+{
+    static SInt32 sUMASystemVersion = 0 ;
+    if ( sUMASystemVersion == 0 )
+    {
+        verify_noerr(Gestalt(gestaltSystemVersion, &sUMASystemVersion));
+    }
+    return sUMASystemVersion ;
+}
+
+// our OS version is the same in non GUI and GUI cases
+wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn)
+{
+    SInt32 theSystem;
+    Gestalt(gestaltSystemVersion, &theSystem);
+
+    if ( majorVsn != NULL )
+        *majorVsn = (theSystem >> 8);
+
+    if ( minorVsn != NULL )
+        *minorVsn = (theSystem & 0xFF);
+
+    return wxOS_MAC_OSX_DARWIN;
+}
+
+#include <sys/utsname.h>
+
+wxString wxGetOsDescription()
+{
+    struct utsname name;
+    uname(&name);
+    return wxString::Format(wxT("Mac OS X (%s %s %s)"),
+            wxString::FromAscii(name.sysname).c_str(),
+            wxString::FromAscii(name.release).c_str(),
+            wxString::FromAscii(name.machine).c_str());
+}
+
 //===========================================================================
 //  IMPLEMENTATION
 //===========================================================================
@@ -227,3 +284,4 @@ bool wxMacLaunch(char **argv)
     return true ;
 }
 
+#endif // wxOSX_USE_COCOA_OR_CARBON