X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6ac1f4b386c464b5b610b5e72cfc0453333a806..a8ed16c999d02b871e7baad7af1962b0a6cbb326:/src/ribbon/art_aui.cpp diff --git a/src/ribbon/art_aui.cpp b/src/ribbon/art_aui.cpp index d127da85bc..37293f9078 100644 --- a/src/ribbon/art_aui.cpp +++ b/src/ribbon/art_aui.cpp @@ -864,7 +864,7 @@ void wxRibbonAUIArtProvider::DrawGalleryBackground( dc.SetPen(m_gallery_border_pen); dc.SetBrush(*wxTRANSPARENT_BRUSH); dc.DrawRectangle(rect.x, rect.y, rect.width, rect.height); - + DrawGalleryBackgroundCommon(dc, wnd, rect); } @@ -959,6 +959,13 @@ void wxRibbonAUIArtProvider::DrawButtonBarButton( const wxBitmap& bitmap_large, const wxBitmap& bitmap_small) { + if(kind == wxRIBBON_BUTTON_TOGGLE) + { + kind = wxRIBBON_BUTTON_NORMAL; + if(state & wxRIBBON_BUTTONBAR_BUTTON_TOGGLED) + state ^= wxRIBBON_BUTTONBAR_BUTTON_ACTIVE_MASK; + } + if(state & (wxRIBBON_BUTTONBAR_BUTTON_HOVER_MASK | wxRIBBON_BUTTONBAR_BUTTON_ACTIVE_MASK)) { @@ -1060,6 +1067,12 @@ void wxRibbonAUIArtProvider::DrawTool( wxRibbonButtonKind kind, long state) { + if(kind == wxRIBBON_BUTTON_TOGGLE) + { + if(state & wxRIBBON_TOOLBAR_TOOL_TOGGLED) + state ^= wxRIBBON_TOOLBAR_TOOL_ACTIVE_MASK; + } + wxRect bg_rect(rect); bg_rect.Deflate(1); if((state & wxRIBBON_TOOLBAR_TOOL_LAST) == 0) @@ -1117,12 +1130,12 @@ void wxRibbonAUIArtProvider::DrawTool( // Foreground int avail_width = bg_rect.GetWidth(); - if(kind != wxRIBBON_BUTTON_NORMAL) + if(kind & wxRIBBON_BUTTON_DROPDOWN) { avail_width -= 8; if(is_split_hybrid) { - dc.DrawLine(rect.x + avail_width + 1, rect.y, + dc.DrawLine(rect.x + avail_width + 1, rect.y, rect.x + avail_width + 1, rect.y + rect.height); } dc.DrawBitmap(m_toolbar_drop_bitmap, bg_rect.x + avail_width + 2,