implemented clipping using native regions

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2001-12-19 22:00:14 +00:00
parent 8dba8632c5
commit ffba56edb7
4 changed files with 122 additions and 46 deletions

View File

@@ -51,8 +51,9 @@ wxWindowDC::wxWindowDC(wxWindow *the_canvas)
wxWindowMac* rootwindow ;
// this time it is really the full window
the_canvas->MacGetPortParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
Rect clipRect ;
the_canvas->MacGetPortParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
SetRectRgn( m_macBoundaryClipRgn , clipRect.left , clipRect.top , clipRect.right , clipRect.bottom ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
m_minY = m_minX = 0;
wxSize size = the_canvas->GetSize() ;
@@ -80,7 +81,9 @@ wxClientDC::wxClientDC(wxWindow *window)
WindowRef windowref ;
wxWindowMac* rootwindow ;
window->MacGetPortClientParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
Rect clipRect ;
window->MacGetPortClientParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
SetRectRgn( m_macBoundaryClipRgn , clipRect.left , clipRect.top , clipRect.right , clipRect.bottom ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
m_minY = m_minX = 0;
wxSize size = window->GetSize() ;
@@ -108,8 +111,9 @@ wxPaintDC::wxPaintDC(wxWindow *window)
WindowRef windowref ;
wxWindowMac* rootwindow ;
window->MacGetPortClientParams(&m_macLocalOrigin, &m_macClipRect , &windowref , &rootwindow );
Rect clipRect ;
window->MacGetPortClientParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
CopyRgn( window->GetUpdateRegion().GetWXHRGN() , m_macBoundaryClipRgn ) ;
m_macPort = UMAGetWindowPort( windowref ) ;
m_ok = TRUE ;
/*