- WindowRef windowref ;
- wxWindowMac* rootwindow ;
-
- Rect clipRect ;
- window->MacGetPortClientParams(&m_macLocalOrigin, &clipRect , &windowref , &rootwindow );
- CopyRgn( window->GetUpdateRegion().GetWXHRGN() , m_macBoundaryClipRgn ) ;
+ wxTopLevelWindowMac* rootwindow = window->MacGetTopLevelWindow() ;
+ WindowRef windowref = rootwindow->MacGetWindowRef() ;
+ wxPoint origin = window->GetClientAreaOrigin() ;
+ wxSize size = window->GetClientSize() ;
+ int x , y ;
+ x = origin.x ;
+ y = origin.y ;
+ window->MacWindowToRootWindow( &x , &y ) ;
+ m_macLocalOrigin.h = x ;
+ m_macLocalOrigin.v = y ;
+ SetRectRgn( m_macBoundaryClipRgn , origin.x , origin.y , origin.x + size.x , origin.y + size.y ) ;
+ SectRgn( m_macBoundaryClipRgn , window->MacGetVisibleRegion().GetWXHRGN() , m_macBoundaryClipRgn ) ;
+ OffsetRgn( m_macBoundaryClipRgn , -origin.x , -origin.y ) ;
+ SectRgn( m_macBoundaryClipRgn , window->GetUpdateRegion().GetWXHRGN() , m_macBoundaryClipRgn ) ;
+ OffsetRgn( m_macBoundaryClipRgn , m_macLocalOrigin.h , m_macLocalOrigin.v ) ;