virtual void MacSetBackgroundBrush( const wxBrush &brush ) ;
const wxBrush& MacGetBackgroundBrush() const { return m_macBackgroundBrush ; }
+ // return the rectangle that would be visible of this control, regardless whether controls are hidden
+ // only taking into account clipping by parent windows
+ const wxRect& MacGetClippedClientRect() const ;
+ const wxRect& MacGetClippedRect() const ;
+ const wxRect& MacGetClippedRectWithOuterStructure() const ;
// returns the visible region of this control in window ie non-client coordinates
-
- wxRegion MacGetVisibleRegion( bool includeOuterStructures = false ) ;
+ const wxRegion& MacGetVisibleRegion( bool includeOuterStructures = false ) ;
// returns true if children have to clipped to the content area (eg scrolled window)
bool MacClipChildren() const { return m_clipChildren ; }
void MacSetClipChildren( bool clip ) { m_clipChildren = clip ; }
#if wxMAC_USE_CORE_GRAPHICS
void * m_cgContextRef ;
#endif
+ // cache the clipped rectangles within the window hierarchy
+ void MacUpdateClippedRects() const ;
+ mutable bool m_cachedClippedRectValid ;
+ mutable wxRect m_cachedClippedRectWithOuterStructure ;
+ mutable wxRect m_cachedClippedRect ;
+ mutable wxRect m_cachedClippedClientRect ;
+ mutable wxRegion m_cachedClippedRegionWithOuterStructure ;
+ mutable wxRegion m_cachedClippedRegion ;
+ mutable wxRegion m_cachedClippedClientRegion ;
// true if is is not a native control but a wxWindow control
bool m_macIsUserPane ;
wxBrush m_macBackgroundBrush ;
// it becomes the target window of a scrolled window it has to...
bool m_clipChildren ;
+ virtual bool MacIsChildOfClientArea( const wxWindow* child ) const ;
+
void MacCreateScrollBars( long style ) ;
void MacRepositionScrollBars() ;
void MacUpdateControlFont() ;