X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b8c0528db3989dcfbc32e034f4a3e059021f28e7..0b187670897ab1a29e609b581f44344d367c55d6:/src/mgl/dcclient.cpp diff --git a/src/mgl/dcclient.cpp b/src/mgl/dcclient.cpp index 54ade252ff..d238dbc95c 100644 --- a/src/mgl/dcclient.cpp +++ b/src/mgl/dcclient.cpp @@ -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 @@ -32,6 +32,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxPaintDC, wxClientDC) wxWindowDC::wxWindowDC(wxWindow *win) : m_wnd(win) { MGLDevCtx *dc = win->GetPaintMGLDC(); + if ( dc ) { m_inPaintHandler = TRUE; @@ -42,7 +43,7 @@ wxWindowDC::wxWindowDC(wxWindow *win) : m_wnd(win) else { m_inPaintHandler = FALSE; - + dc = new MGLDevCtx(MGL_wmBeginPaint(win->GetHandle())); MGLRegion clip; @@ -68,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); }