From: Stefan Csomor Date: Fri, 3 Jul 2009 11:51:46 +0000 (+0000) Subject: bracket 10.5 only code X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/1034a6bbff7d4968ab8e273c0b94b49b0a2ae8e2 bracket 10.5 only code git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/osx/cocoa/utils.mm b/src/osx/cocoa/utils.mm index b8aa14190b..3fdecac375 100644 --- a/src/osx/cocoa/utils.mm +++ b/src/osx/cocoa/utils.mm @@ -298,15 +298,22 @@ wxBitmap wxWindowDCImpl::DoGetAsBitmap(const wxRect *subrect) const // called from OnPaint, even with the window's paint dc as source (see wxHTMLWindow) NSBitmapImageRep *rep = [[[NSBitmapImageRep alloc] initWithFocusedViewRect: [view bounds]] retain]; [view unlockFocus]; + + wxBitmap bitmap(width, height); + if ( [rep respondsToSelector:@selector(CGImage)] ) + { + CGImageRef cgImageRef = (CGImageRef)[rep CGImage]; - CGImageRef cgImageRef = (CGImageRef)[rep CGImage]; - - wxBitmap bitmap(CGImageGetWidth(cgImageRef) , CGImageGetHeight(cgImageRef) ); - CGRect r = CGRectMake( 0 , 0 , CGImageGetWidth(cgImageRef) , CGImageGetHeight(cgImageRef) ); - // since our context is upside down we dont use CGContextDrawImage - wxMacDrawCGImage( (CGContextRef) bitmap.GetHBITMAP() , &r, cgImageRef ) ; - CGImageRelease(cgImageRef); - cgImageRef = NULL; + CGRect r = CGRectMake( 0 , 0 , CGImageGetWidth(cgImageRef) , CGImageGetHeight(cgImageRef) ); + // since our context is upside down we dont use CGContextDrawImage + wxMacDrawCGImage( (CGContextRef) bitmap.GetHBITMAP() , &r, cgImageRef ) ; + CGImageRelease(cgImageRef); + cgImageRef = NULL; + } + else + { + // TODO for 10.4 in case we can support this for osx_cocoa + } [rep release]; return bitmap;