X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5815e95907dbecbac1e6d4d9cf3290f8d36eca48..eea4d01c65f9b29baa1193db762b4c6b8144af24:/src/osx/core/utilsexc_base.cpp diff --git a/src/osx/core/utilsexc_base.cpp b/src/osx/core/utilsexc_base.cpp index fe8b87c45e..84f8a0e3a3 100644 --- a/src/osx/core/utilsexc_base.cpp +++ b/src/osx/core/utilsexc_base.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: mac/corefoundation/utilsexc_base.cpp +// Name: src/osx/core/utilsexc_base.cpp // Purpose: wxMacLaunch // Author: Ryan Norton // Modified by: @@ -60,23 +60,36 @@ extern bool WXDLLEXPORT wxIsDebuggerRunning() return false; } -#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); @@ -85,7 +98,7 @@ wxOperatingSystemId wxGetOsVersion(int *majorVsn, int *minorVsn) if ( minorVsn != NULL ) *minorVsn = (theSystem & 0xFF); - +#endif return wxOS_MAC_OSX_DARWIN; } @@ -101,8 +114,6 @@ wxString wxGetOsDescription() wxString::FromAscii(name.machine).c_str()); } -#endif // wxOSX_USE_COCOA_OR_CARBON - //=========================================================================== // IMPLEMENTATION //=========================================================================== @@ -193,8 +204,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 @@ -246,12 +257,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 @@ -286,3 +297,4 @@ bool wxMacLaunch(char **argv) return true ; } +#endif // wxOSX_USE_COCOA_OR_CARBON