correct placard under toolbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -690,12 +690,30 @@ bool wxToolBar::DoDeleteTool(size_t WXUNUSED(pos), wxToolBarToolBase *tool)
|
|||||||
void wxToolBar::OnPaint(wxPaintEvent& event)
|
void wxToolBar::OnPaint(wxPaintEvent& event)
|
||||||
{
|
{
|
||||||
wxPaintDC dc(this) ;
|
wxPaintDC dc(this) ;
|
||||||
#if wxMAC_USE_CORE_GRAPHICS
|
|
||||||
// leave the background as it is (striped or metal)
|
|
||||||
#else
|
|
||||||
wxMacPortSetter helper(&dc) ;
|
|
||||||
int w, h ;
|
int w, h ;
|
||||||
GetSize( &w , &h ) ;
|
GetSize( &w , &h ) ;
|
||||||
|
#if wxMAC_USE_CORE_GRAPHICS && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
|
||||||
|
if ( !MacGetTopLevelWindow()->MacGetMetalAppearance() )
|
||||||
|
{
|
||||||
|
if ( UMAGetSystemVersion() >= 0x1030 )
|
||||||
|
{
|
||||||
|
HIThemePlacardDrawInfo info ;
|
||||||
|
memset( &info, 0 , sizeof( info ) ) ;
|
||||||
|
info.version = 0 ;
|
||||||
|
info.state = IsEnabled() ? kThemeStateActive : kThemeStateInactive ;
|
||||||
|
|
||||||
|
CGContextRef cgContext = (CGContextRef) MacGetCGContextRef() ;
|
||||||
|
HIRect rect = CGRectMake( 0 , 0 , w , h ) ;
|
||||||
|
HIThemeDrawPlacard( &rect , & info , cgContext, kHIThemeOrientationNormal) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// leave the background as it is (striped or metal)
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
wxMacPortSetter helper(&dc) ;
|
||||||
|
|
||||||
Rect toolbarrect = { dc.YLOG2DEVMAC(0) , dc.XLOG2DEVMAC(0) ,
|
Rect toolbarrect = { dc.YLOG2DEVMAC(0) , dc.XLOG2DEVMAC(0) ,
|
||||||
dc.YLOG2DEVMAC(h) , dc.XLOG2DEVMAC(w) } ;
|
dc.YLOG2DEVMAC(h) , dc.XLOG2DEVMAC(w) } ;
|
||||||
|
Reference in New Issue
Block a user