X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/03647350fc7cd141953c72e0284e928847d30f44..6c894d4e65ce963a524fb25daba28f584c686da8:/src/osx/carbon/dcscreen.cpp diff --git a/src/osx/carbon/dcscreen.cpp b/src/osx/carbon/dcscreen.cpp index 6bb57f78b3..cbd90382e9 100644 --- a/src/osx/carbon/dcscreen.cpp +++ b/src/osx/carbon/dcscreen.cpp @@ -56,14 +56,18 @@ wxScreenDCImpl::wxScreenDCImpl( wxDC *owner ) : wxScreenDCImpl::~wxScreenDCImpl() { - delete m_graphicContext; - m_graphicContext = NULL; + wxDELETE(m_graphicContext); #if wxOSX_USE_COCOA_OR_IPHONE #else DisposeWindow((WindowRef) m_overlayWindow ); #endif } +#if wxOSX_USE_IPHONE +// Apple has allowed usage of this API as of 15th Dec 2009w +extern CGImageRef UIGetScreenImage(); +#endif + // TODO Switch to CGWindowListCreateImage for 10.5 and above wxBitmap wxScreenDCImpl::DoGetAsBitmap(const wxRect *subrect) const @@ -91,7 +95,11 @@ wxBitmap wxScreenDCImpl::DoGetAsBitmap(const wxRect *subrect) const CGContextDrawImage(context, srcRect, image); + CGImageRelease(image); + CGContextRestoreGState(context); +#else + // TODO implement using UIGetScreenImage, CGImageCreateWithImageInRect, CGContextDrawImage #endif return bmp; }