]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dcmemory.cpp
derive wxSTC from wxTextAreaBase to provide wxTextCtrl-like methods (see #9114)
[wxWidgets.git] / src / msw / dcmemory.cpp
index 37605f4750d2702adbffbbc3844ff3410f56e930..6869e6f4e4b2f6873ede578fd7c176a7f0ad394e 100644 (file)
@@ -80,9 +80,9 @@ void wxMemoryDCImpl::Init()
 
 bool wxMemoryDCImpl::CreateCompatible(wxDC *dc)
 {
-    wxDCImpl *impl = dc->GetImpl();
+    wxDCImpl *impl = dc ? dc->GetImpl() : NULL ;
     wxMSWDCImpl *msw_impl = wxDynamicCast( impl, wxMSWDCImpl );
-    if (!msw_impl)
+    if ( dc && !msw_impl)
     {
         m_ok = false;
         return false;
@@ -115,7 +115,7 @@ void wxMemoryDCImpl::DoSelect( const wxBitmap& bitmap )
 
     // check for whether the bitmap is already selected into a device context
     wxASSERT_MSG( !bitmap.GetSelectedInto() ||
-                  (bitmap.GetSelectedInto() == this),
+                  (bitmap.GetSelectedInto() == GetOwner()),
                   wxT("Bitmap is selected in another wxMemoryDC, delete the first wxMemoryDC or use SelectObject(NULL)") );
 
     m_selectedBitmap = bitmap;
@@ -124,7 +124,7 @@ void wxMemoryDCImpl::DoSelect( const wxBitmap& bitmap )
         return;
 
 #ifdef __WXDEBUG__
-    m_selectedBitmap.SetSelectedInto(this);
+    m_selectedBitmap.SetSelectedInto(GetOwner());
 #endif
     hBmp = (WXHBITMAP)::SelectObject(GetHdc(), (HBITMAP)hBmp);