X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2b030203c5926bd6af8bc310469c911f2143f7e1..5a969262e1de36b191f1e4b6c3de1b2c39ac1fb0:/src/cocoa/dcmemory.mm diff --git a/src/cocoa/dcmemory.mm b/src/cocoa/dcmemory.mm index 1596e33184..1c79b3ad67 100644 --- a/src/cocoa/dcmemory.mm +++ b/src/cocoa/dcmemory.mm @@ -6,7 +6,7 @@ // Created: 2003/03/16 // RCS-ID: $Id$ // Copyright: (c) 2002 David Elliott -// Licence: wxWindows licence +// Licence: wxWidgets licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" @@ -15,6 +15,8 @@ #include "wx/dcmemory.h" #endif //WX_PRECOMP +#include "wx/cocoa/autorelease.h" + #import #import #import @@ -67,6 +69,7 @@ bool wxMemoryDC::CocoaUnlockFocus() // instead copy the data to an offscreen window, then copy it back void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) { + wxAutoNSAutoreleasePool pool; if(m_selectedBitmap.Ok()) { CocoaTakeFocus(); @@ -89,10 +92,7 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap ) m_selectedBitmap.GetHeight())]; // Now copy the data - NSImage *nsimage = [[NSImage alloc] - initWithSize:NSMakeSize(m_selectedBitmap.GetWidth(), - m_selectedBitmap.GetHeight())]; - [nsimage addRepresentation: const_cast(m_selectedBitmap).GetNSBitmapImageRep()]; + NSImage *nsimage = [m_selectedBitmap.GetNSImage(false) retain]; [m_cocoaNSImage lockFocus]; [nsimage drawAtPoint: NSMakePoint(0,0) fromRect: NSMakeRect(0.0,0.0,m_selectedBitmap.GetWidth(),m_selectedBitmap.GetHeight()) @@ -138,7 +138,7 @@ bool wxMemoryDC::CocoaDoBlitOnFocusedDC(wxCoord xdest, wxCoord ydest, [transform concat]; [flipTransform concat]; - wxLogDebug(wxT("[m_cocoaNSImage isFlipped]=%d"), [m_cocoaNSImage isFlipped]); + wxLogTrace(wxTRACE_COCOA,wxT("[m_cocoaNSImage isFlipped]=%d"), [m_cocoaNSImage isFlipped]); [m_cocoaNSImage drawAtPoint: NSMakePoint(0,0) fromRect: NSMakeRect(xsrc, m_selectedBitmap.GetHeight()-height-ysrc,