adding NSImage to CGImageRef conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -46,6 +46,7 @@ OSStatus WXDLLIMPEXP_CORE wxMacDrawCGImage(
|
|||||||
const CGRect * inBounds,
|
const CGRect * inBounds,
|
||||||
CGImageRef inImage) ;
|
CGImageRef inImage) ;
|
||||||
WX_NSImage WXDLLIMPEXP_CORE wxOSXCreateNSImageFromCGImage( CGImageRef image );
|
WX_NSImage WXDLLIMPEXP_CORE wxOSXCreateNSImageFromCGImage( CGImageRef image );
|
||||||
|
CGImageRef WXDLLIMPEXP_CORE wxOSXCreateCGImageFromNSSImage( WX_NSImage nsimage );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
long UMAGetSystemVersion() ;
|
long UMAGetSystemVersion() ;
|
||||||
|
@@ -313,6 +313,25 @@ WX_NSImage wxOSXCreateNSImageFromCGImage( CGImageRef image )
|
|||||||
return( newImage );
|
return( newImage );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CGImageRef wxOSXCreateCGImageFromNSSImage( WX_NSImage nsimage )
|
||||||
|
{
|
||||||
|
// based on http://www.mail-archive.com/cocoa-dev@lists.apple.com/msg18065.html
|
||||||
|
|
||||||
|
NSSize imageSize = [nsimage size];
|
||||||
|
CGColorSpaceRef genericRGB = CGColorSpaceCreateWithName(kCGColorSpaceGenericRGB);
|
||||||
|
CGContextRef context = CGBitmapContextCreate(NULL, imageSize.width, imageSize.height, 8, 0, genericRGB, kCGImageAlphaPremultipliedFirst);
|
||||||
|
NSGraphicsContext *nsGraphicsContext = [NSGraphicsContext graphicsContextWithGraphicsPort:context flipped:NO];
|
||||||
|
[NSGraphicsContext saveGraphicsState];
|
||||||
|
[NSGraphicsContext setCurrentContext:nsGraphicsContext];
|
||||||
|
[[NSColor yellowColor] setFill];
|
||||||
|
NSRectFill(NSMakeRect(0.0, 0.0, imageSize.width, imageSize.height));
|
||||||
|
[nsimage drawAtPoint:NSZeroPoint fromRect:NSZeroRect operation:NSCompositeCopy fraction:1.0];
|
||||||
|
[NSGraphicsContext setCurrentContext:nsGraphicsContext];
|
||||||
|
CGImageRef image = CGBitmapContextCreateImage(context);
|
||||||
|
CFRelease(context);
|
||||||
|
return image;
|
||||||
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// NSCursor Utils
|
// NSCursor Utils
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user