X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c3ead1d1513a5eb79091a604f4e42b45d1bdf5d..7344108e8a129a3f9b4df5ab0f98a1713db03b89:/include/wx/ribbon/art.h diff --git a/include/wx/ribbon/art.h b/include/wx/ribbon/art.h index f0cc1596e7..e2f9177b98 100644 --- a/include/wx/ribbon/art.h +++ b/include/wx/ribbon/art.h @@ -16,8 +16,14 @@ #if wxUSE_RIBBON -#include -#include +#include "wx/brush.h" +#include "wx/colour.h" +#include "wx/font.h" +#include "wx/pen.h" +#include "wx/bitmap.h" + +class WXDLLIMPEXP_FWD_CORE wxDC; +class WXDLLIMPEXP_FWD_CORE wxWindow; enum wxRibbonArtSetting { @@ -95,6 +101,8 @@ enum wxRibbonArtSetting wxRIBBON_ART_PANEL_ACTIVE_BACKGROUND_TOP_GRADIENT_COLOUR, wxRIBBON_ART_PANEL_ACTIVE_BACKGROUND_COLOUR, wxRIBBON_ART_PANEL_ACTIVE_BACKGROUND_GRADIENT_COLOUR, + wxRIBBON_ART_PANEL_BUTTON_FACE_COLOUR, + wxRIBBON_ART_PANEL_BUTTON_HOVER_FACE_COLOUR, wxRIBBON_ART_PAGE_BORDER_COLOUR, wxRIBBON_ART_PAGE_BACKGROUND_TOP_COLOUR, wxRIBBON_ART_PAGE_BACKGROUND_TOP_GRADIENT_COLOUR, @@ -118,7 +126,7 @@ enum wxRibbonArtSetting wxRIBBON_ART_TOOL_ACTIVE_BACKGROUND_TOP_COLOUR, wxRIBBON_ART_TOOL_ACTIVE_BACKGROUND_TOP_GRADIENT_COLOUR, wxRIBBON_ART_TOOL_ACTIVE_BACKGROUND_COLOUR, - wxRIBBON_ART_TOOL_ACTIVE_BACKGROUND_GRADIENT_COLOUR, + wxRIBBON_ART_TOOL_ACTIVE_BACKGROUND_GRADIENT_COLOUR }; enum wxRibbonScrollButtonStyle @@ -140,7 +148,7 @@ enum wxRibbonScrollButtonStyle wxRIBBON_SCROLL_BTN_FOR_TABS = 16, wxRIBBON_SCROLL_BTN_FOR_PAGE = 32, - wxRIBBON_SCROLL_BTN_FOR_MASK = 48, + wxRIBBON_SCROLL_BTN_FOR_MASK = 48 }; enum wxRibbonButtonKind @@ -148,6 +156,7 @@ enum wxRibbonButtonKind wxRIBBON_BUTTON_NORMAL = 1 << 0, wxRIBBON_BUTTON_DROPDOWN = 1 << 1, wxRIBBON_BUTTON_HYBRID = wxRIBBON_BUTTON_NORMAL | wxRIBBON_BUTTON_DROPDOWN, + wxRIBBON_BUTTON_TOGGLE = 1 << 2 }; enum wxRibbonButtonBarButtonState @@ -164,7 +173,8 @@ enum wxRibbonButtonBarButtonState wxRIBBON_BUTTONBAR_BUTTON_DROPDOWN_ACTIVE = 1 << 6, wxRIBBON_BUTTONBAR_BUTTON_ACTIVE_MASK = wxRIBBON_BUTTONBAR_BUTTON_NORMAL_ACTIVE | wxRIBBON_BUTTONBAR_BUTTON_DROPDOWN_ACTIVE, wxRIBBON_BUTTONBAR_BUTTON_DISABLED = 1 << 7, - wxRIBBON_BUTTONBAR_BUTTON_STATE_MASK = 0xF8, + wxRIBBON_BUTTONBAR_BUTTON_TOGGLED = 1 << 8, + wxRIBBON_BUTTONBAR_BUTTON_STATE_MASK = 0x1F8 }; enum wxRibbonGalleryButtonState @@ -172,7 +182,7 @@ enum wxRibbonGalleryButtonState wxRIBBON_GALLERY_BUTTON_NORMAL, wxRIBBON_GALLERY_BUTTON_HOVERED, wxRIBBON_GALLERY_BUTTON_ACTIVE, - wxRIBBON_GALLERY_BUTTON_DISABLED, + wxRIBBON_GALLERY_BUTTON_DISABLED }; class wxRibbonPage; @@ -319,6 +329,11 @@ public: wxSize size, wxPoint* client_offset) = 0; + virtual wxRect GetPanelExtButtonArea( + wxDC& dc, + const wxRibbonPanel* wnd, + wxRect rect) = 0; + virtual wxSize GetGallerySize( wxDC& dc, const wxRibbonGallery* wnd, @@ -503,6 +518,11 @@ public: wxSize size, wxPoint* client_offset); + wxRect GetPanelExtButtonArea( + wxDC& dc, + const wxRibbonPanel* wnd, + wxRect rect); + wxSize GetGallerySize( wxDC& dc, const wxRibbonGallery* wnd, @@ -584,6 +604,7 @@ protected: wxBitmap m_gallery_down_bitmap[4]; wxBitmap m_gallery_extension_bitmap[4]; wxBitmap m_toolbar_drop_bitmap; + wxBitmap m_panel_extension_bitmap[2]; wxColour m_primary_scheme_colour; wxColour m_secondary_scheme_colour; @@ -606,6 +627,8 @@ protected: wxColour m_panel_active_background_gradient_colour; wxColour m_panel_active_background_top_colour; wxColour m_panel_active_background_top_gradient_colour; + wxColour m_panel_button_face_colour; + wxColour m_panel_button_hover_face_colour; wxColour m_page_background_colour; wxColour m_page_background_gradient_colour; wxColour m_page_background_top_colour; @@ -623,7 +646,7 @@ protected: wxColour m_button_bar_active_background_top_colour; wxColour m_button_bar_active_background_top_gradient_colour; wxColour m_gallery_button_background_colour; - wxColour m_gallery_button_background_gradient_colour; + wxColour m_gallery_button_background_gradient_colour; wxColour m_gallery_button_hover_background_colour; wxColour m_gallery_button_hover_background_gradient_colour; wxColour m_gallery_button_active_background_colour; @@ -652,6 +675,7 @@ protected: wxBrush m_tab_ctrl_background_brush; wxBrush m_panel_label_background_brush; wxBrush m_panel_hover_label_background_brush; + wxBrush m_panel_hover_button_background_brush; wxBrush m_gallery_hover_background_brush; wxBrush m_gallery_button_background_top_brush; wxBrush m_gallery_button_hover_background_top_brush; @@ -667,6 +691,7 @@ protected: wxPen m_panel_border_gradient_pen; wxPen m_panel_minimised_border_pen; wxPen m_panel_minimised_border_gradient_pen; + wxPen m_panel_hover_button_border_pen; wxPen m_tab_border_pen; wxPen m_button_bar_hover_border_pen; wxPen m_button_bar_active_border_pen; @@ -729,6 +754,11 @@ public: wxSize size, wxPoint* client_offset); + wxRect GetPanelExtButtonArea( + wxDC& dc, + const wxRibbonPanel* wnd, + wxRect rect); + void DrawTabCtrlBackground( wxDC& dc, wxWindow* wnd,