make sure a frozen control calls a native 'thaw' on the tlw during destruction, otherwise tlws might end up unresponsive, see #16011

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2014-02-23 19:02:58 +00:00
parent 5dc209b6eb
commit 21aa2122f4
2 changed files with 16 additions and 0 deletions

View File

@@ -33,7 +33,9 @@ OSStatus WXDLLIMPEXP_CORE wxMacDrawCGImage(
const CGRect * inBounds,
CGImageRef inImage) ;
WX_NSImage WXDLLIMPEXP_CORE wxOSXGetNSImageFromCGImage( CGImageRef image, double scale = 1.0 );
WX_NSImage WXDLLIMPEXP_CORE wxOSXGetNSImageFromIconRef( WXHICON iconref );
CGImageRef WXDLLIMPEXP_CORE wxOSXCreateCGImageFromNSImage( WX_NSImage nsimage, double *scale = NULL );
CGImageRef WXDLLIMPEXP_CORE wxOSXGetCGImageFromNSImage( const WX_NSImage nsimage, CGRect* r, CGContextRef cg);
CGContextRef WXDLLIMPEXP_CORE wxOSXCreateBitmapContextFromNSImage( WX_NSImage nsimage);
wxBitmap WXDLLIMPEXP_CORE wxOSXCreateSystemBitmap(const wxString& id, const wxString &client, const wxSize& size);

View File

@@ -447,6 +447,20 @@ WX_NSImage wxOSXGetNSImageFromCGImage( CGImageRef image, double scaleFactor )
return( newImage );
}
WX_NSImage WXDLLIMPEXP_CORE wxOSXGetNSImageFromIconRef( WXHICON iconref )
{
NSImage *newImage = [[NSImage alloc] initWithIconRef:iconref];
[newImage autorelease];
return( newImage );
}
CGImageRef WXDLLIMPEXP_CORE wxOSXGetCGImageFromNSImage( WX_NSImage nsimage, CGRect* r, CGContextRef cg)
{
return [nsimage CGImageForProposedRect:r
context:[NSGraphicsContext graphicsContextWithGraphicsPort:cg flipped:NO]
hints:nil];
}
CGContextRef WXDLLIMPEXP_CORE wxOSXCreateBitmapContextFromNSImage( WX_NSImage nsimage)
{
// based on http://www.mail-archive.com/cocoa-dev@lists.apple.com/msg18065.html