]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/dcclient.cpp
VC6 compilation fix: using access declaration can only be used with immediate base...
[wxWidgets.git] / src / gtk1 / dcclient.cpp
index 498f19623a16fed8e3c1c9b18397ac9f423e4265..9fa41bf7f469f4824b72bde1c7802a7c411b2c62 100644 (file)
@@ -1143,8 +1143,11 @@ bool wxWindowDCImpl::DoBlit( wxCoord xdest, wxCoord ydest,
     xsrc = source->LogicalToDeviceX(xsrc);
     ysrc = source->LogicalToDeviceY(ysrc);
 
-    wxClientDCImpl *srcDC = (wxClientDCImpl*)source->GetImpl();
-    wxMemoryDCImpl *memDC = (wxMemoryDCImpl*)source;
+    wxWindowDCImpl *srcDC = wxDynamicCast(source->GetImpl(), wxWindowDCImpl);
+    wxCHECK_MSG( srcDC, false, "source must be a window DC" );
+
+    // FIXME: this cast is not always valid, see the code using m_isMemDC
+    wxMemoryDCImpl *memDC = wx_static_cast(wxMemoryDCImpl *, srcDC);
 
     bool use_bitmap_method = false;
     bool is_mono = false;
@@ -2018,7 +2021,7 @@ void wxWindowDCImpl::DoSetClippingRegion( wxCoord x, wxCoord y, wxCoord width, w
     gdk_gc_set_clip_region( m_bgGC, m_currentClippingRegion.GetRegion() );
 }
 
-void wxWindowDCImpl::DoSetClippingRegionAsRegion( const wxRegion &region  )
+void wxWindowDCImpl::DoSetDeviceClippingRegion( const wxRegion &region  )
 {
     wxCHECK_RET( IsOk(), wxT("invalid window dc") );