]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/dcmemory.cpp
Fix wxListCtrl background colour bug Part I
[wxWidgets.git] / src / mac / carbon / dcmemory.cpp
index 85f1af33c59bb32ffb2d5b12c143b77c447884bb..9985a00b9efa7286ca9e9496d1757f66c2798819 100644 (file)
@@ -14,6 +14,7 @@
 #endif
 
 #include "wx/dcmemory.h"
+#include "wx/mac/private.h"
 
 //-----------------------------------------------------------------------------
 // wxMemoryDC
@@ -43,7 +44,7 @@ wxMemoryDC::~wxMemoryDC()
 {
        if ( m_selected.Ok() )
        {
-               UnlockPixels( GetGWorldPixMap(m_selected.GetHBITMAP()) );
+               UnlockPixels( GetGWorldPixMap(MAC_WXHBITMAP(m_selected.GetHBITMAP())) );
        }
 };
 
@@ -51,7 +52,7 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap )
 {
        if ( m_selected.Ok() )
        {
-               UnlockPixels( GetGWorldPixMap(m_selected.GetHBITMAP()) );
+               UnlockPixels( GetGWorldPixMap(MAC_WXHBITMAP(m_selected.GetHBITMAP())) );
        }
     m_selected = bitmap;
     if (m_selected.Ok())
@@ -65,6 +66,8 @@ void wxMemoryDC::SelectObject( const wxBitmap& bitmap )
                        {
                                m_macMask = mask->GetMaskBitmap() ;
                        }
+               SetRectRgn( (RgnHandle) m_macBoundaryClipRgn , 0 , 0 , m_selected.GetWidth() , m_selected.GetHeight() ) ;
+               CopyRgn( (RgnHandle) m_macBoundaryClipRgn ,(RgnHandle)  m_macCurrentClipRgn ) ;
                        m_ok = TRUE ;
                }
                else