]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mgl/dcclient.cpp
don't use strcpy to copy between overlapping strings, it's undefined operation
[wxWidgets.git] / src / mgl / dcclient.cpp
index e5b507cc92115a1373dff6c1be5e2a167d5b98e6..d238dbc95cb9d8edf207b11d994b0db4bf4fa724 100644 (file)
@@ -3,11 +3,11 @@
 // Purpose:
 // Author:      Vaclav Slavik
 // RCS-ID:      $Id$
-// Copyright:   (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
+// Copyright:   (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma implementation "dcclient.h"
 #endif
 
@@ -44,10 +44,6 @@ wxWindowDC::wxWindowDC(wxWindow *win) : m_wnd(win)
     {
         m_inPaintHandler = FALSE;
         
-        // VS: we have to update here so that screen's content is up-to-date
-        //     and blitting from wxWindowDC works as expected
-        win->Update();
-
         dc = new MGLDevCtx(MGL_wmBeginPaint(win->GetHandle()));
 
         MGLRegion clip;
@@ -73,5 +69,6 @@ wxClientDC::wxClientDC(wxWindow *win) : wxWindowDC(win)
 {
     wxRect r = m_wnd->GetClientRect();
     m_globalClippingRegion.Intersect(r);
+    SetClippingRegion(m_globalClippingRegion);
     SetDeviceOrigin(r.x, r.y);
 }