@@ -3063,6 +3063,23 @@ void SetSubviewsNeedDisplay( NSView *view )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetSubviewsNeedDisplay( NSView *view, NSRect rect )
|
||||||
|
{
|
||||||
|
for ( NSView *sub in view.subviews )
|
||||||
|
{
|
||||||
|
if ( sub.isHidden )
|
||||||
|
continue;
|
||||||
|
|
||||||
|
NSRect intersect = NSIntersectionRect(sub.frame, rect);
|
||||||
|
if ( !NSIsEmptyRect(intersect) )
|
||||||
|
{
|
||||||
|
intersect = [view convertRect:intersect toView:sub];
|
||||||
|
[sub setNeedsDisplayInRect:intersect];
|
||||||
|
SetSubviewsNeedDisplay(sub, intersect);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -3081,7 +3098,12 @@ void wxWidgetCocoaImpl::SetNeedsDisplay( const wxRect* where )
|
|||||||
// do it manually here:
|
// do it manually here:
|
||||||
#if __MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_14
|
#if __MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_14
|
||||||
if ( WX_IS_MACOS_AVAILABLE(10, 14 ) )
|
if ( WX_IS_MACOS_AVAILABLE(10, 14 ) )
|
||||||
|
{
|
||||||
|
if ( where )
|
||||||
|
SetSubviewsNeedDisplay(m_osxView, wxToNSRect(m_osxView, *where ));
|
||||||
|
else
|
||||||
SetSubviewsNeedDisplay(m_osxView);
|
SetSubviewsNeedDisplay(m_osxView);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user