X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..d240dea1999ee1465e53db8279130612df692d77:/include/wx/renderer.h diff --git a/include/wx/renderer.h b/include/wx/renderer.h index 453baf801a..8a8076c484 100644 --- a/include/wx/renderer.h +++ b/include/wx/renderer.h @@ -54,6 +54,7 @@ enum wxCONTROL_SELECTED = 0x00000020, // selected item in e.g. listbox wxCONTROL_CHECKED = 0x00000040, // (check/radio button) is checked wxCONTROL_CHECKABLE = 0x00000080, // (menu) item can be checked + wxCONTROL_UNDETERMINED = wxCONTROL_CHECKABLE, // (check) undetermined state wxCONTROL_FLAGS_MASK = 0x000000ff, @@ -153,7 +154,31 @@ public: wxOrientation orient, int flags = 0) = 0; + // draw a combobox dropdown button + // + // flags may use wxCONTROL_PRESSED and wxCONTROL_CURRENT + virtual void DrawComboBoxDropButton(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0) = 0; + + // draw a dropdown arrow + // + // flags may use wxCONTROL_PRESSED and wxCONTROL_CURRENT + virtual void DrawDropArrow(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0) = 0; + + // draw check button + // + // flags may use wxCONTROL_CHECKED, wxCONTROL_UNDETERMINED and wxCONTROL_CURRENT + virtual void DrawCheckButton(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0) = 0; + // geometry functions // ------------------ @@ -244,7 +269,24 @@ public: { m_rendererNative.DrawSplitterSash(win, dc, size, position, orient, flags); } - + virtual void DrawComboBoxDropButton(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0) + { m_rendererNative.DrawComboBoxDropButton(win, dc, rect, flags); } + + virtual void DrawDropArrow(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0) + { m_rendererNative.DrawDropArrow(win, dc, rect, flags); } + + virtual void DrawCheckButton(wxWindow *win, + wxDC& dc, + const wxRect& rect, + int flags = 0 ) + { m_rendererNative.DrawCheckButton( win, dc, rect, flags ); } + virtual wxSplitterRenderParams GetSplitterParams(const wxWindow *win) { return m_rendererNative.GetSplitterParams(win); }