X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b27679518606c4739f1821fbb600687b17497dbf..6d2190fcb4ba8c0a297a90ac233e88ad0c5cd13f:/src/osx/core/utilsexc_base.cpp diff --git a/src/osx/core/utilsexc_base.cpp b/src/osx/core/utilsexc_base.cpp index 38fe12a12d..f510abc37a 100644 --- a/src/osx/core/utilsexc_base.cpp +++ b/src/osx/core/utilsexc_base.cpp @@ -1,10 +1,9 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: mac/corefoundation/utilsexc_base.cpp +// Name: src/osx/core/utilsexc_base.cpp // Purpose: wxMacLaunch // Author: Ryan Norton // Modified by: // Created: 2005-06-21 -// RCS-ID: $Id$ // Copyright: (c) Ryan Norton // Licence: wxWindows licence // Notes: Source was originally in utilsexc_cf.cpp,1.6 then moved @@ -45,29 +44,45 @@ // Default path style #define kDefaultPathStyle kCFURLPOSIXPathStyle -extern bool WXDLLEXPORT wxIsDebuggerRunning() -{ - // TODO : try to find out ... - return false; -} +#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 -#if wxOSX_USE_COCOA_OR_CARBON +#if ( !wxUSE_GUI && !wxOSX_USE_IPHONE ) || wxOSX_USE_COCOA_OR_CARBON // have a fast version for mac code that returns the version as a return value -long UMAGetSystemVersion() -{ +long UMAGetSystemVersion() +{ static SInt32 sUMASystemVersion = 0 ; if ( sUMASystemVersion == 0 ) { verify_noerr(Gestalt(gestaltSystemVersion, &sUMASystemVersion)); } - return sUMASystemVersion ; + return sUMASystemVersion ; } // our OS version is the same in non GUI and GUI cases wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) { + // This returns 10 and 6 for OS X 10.6, consistent with behaviour on + // other platforms. + SInt32 maj, min; + Gestalt(gestaltSystemVersionMajor, &maj); + Gestalt(gestaltSystemVersionMinor, &min); + + if ( majorVsn != NULL ) + *majorVsn = maj; + + if ( minorVsn != NULL ) + *minorVsn = min; + +#if 0 SInt32 theSystem; Gestalt(gestaltSystemVersion, &theSystem); @@ -76,7 +91,7 @@ wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) if ( minorVsn != NULL ) *minorVsn = (theSystem & 0xFF); - +#endif return wxOS_MAC_OSX_DARWIN; } @@ -86,14 +101,12 @@ wxString wxGetOsDescription() { struct utsname name; uname(&name); - return wxString::Format(_T("Mac OS X (%s %s %s)"), + 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()); } -#endif // wxOSX_USE_COCOA_OR_CARBON - //=========================================================================== // IMPLEMENTATION //=========================================================================== @@ -184,8 +197,8 @@ bool wxMacLaunch(char **argv) // Loop through command line arguments to the bundle, // turn them into CFURLs and then put them in cfaFiles // For use to launch services call - for( ; *argv != NULL ; ++argv) - { + for( ; *argv != NULL ; ++argv) + { // Check for '<' as this will ring true for // CFURLCreateWithString but is generally not considered // typical on mac but is usually passed here from wxExecute @@ -237,12 +250,12 @@ bool wxMacLaunch(char **argv) // Add the valid CFURL to the argument array and then // release it as the CFArray adds a ref count to it - CFArrayAppendValue( - cfaFiles, - cfurlCurrentFile - ); - CFRelease(cfurlCurrentFile); // array has retained it - } + CFArrayAppendValue( + cfaFiles, + cfurlCurrentFile + ); + CFRelease(cfurlCurrentFile); // array has retained it + } // Create a LSLaunchURLSpec for use with LSOpenFromURLSpec // Note that there are several flag options (launchFlags) such @@ -277,3 +290,4 @@ bool wxMacLaunch(char **argv) return true ; } +#endif // wxOSX_USE_COCOA_OR_CARBON