X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/382f12e41917abf78fb7f00d786c7ead112e4df4..7ca106e860dd06773f1b1d286cccfeb69d78468e:/interface/wx/renderer.h diff --git a/interface/wx/renderer.h b/interface/wx/renderer.h index 443169a16e..77d3d8e0e7 100644 --- a/interface/wx/renderer.h +++ b/interface/wx/renderer.h @@ -56,6 +56,18 @@ enum wxCONTROL_UNDETERMINED = wxCONTROL_CHECKABLE }; +/** + Title bar buttons supported by wxRendererNative::DrawTitleBarBitmap(). + */ +enum wxTitleBarButton +{ + wxTITLEBAR_BUTTON_CLOSE = 0x01000000, + wxTITLEBAR_BUTTON_MAXIMIZE = 0x02000000, + wxTITLEBAR_BUTTON_ICONIZE = 0x04000000, + wxTITLEBAR_BUTTON_RESTORE = 0x08000000, + wxTITLEBAR_BUTTON_HELP = 0x10000000 +}; + /** @struct wxSplitterRenderParams @@ -406,6 +418,50 @@ public: virtual void DrawTreeItemButton(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) = 0; + /** + Draw a native wxChoice + */ + virtual void DrawChoice(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) = 0; + + /** + Draw a native wxComboBox + */ + virtual void DrawComboBox(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) = 0; + + /** + Draw a native wxTextCtrl frame + */ + virtual void DrawTextCtrl(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) = 0; + + /** + Draw a native wxRadioButton bitmap. + */ + virtual void DrawRadioBitmap(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) = 0; + + /** + Draw a title bar button in the given state. + + This function is currently only available under MSW and OS X (and only + for wxTITLEBAR_BUTTON_CLOSE under the latter), its best replacement for + the other platforms is to use wxArtProvider to retrieve the bitmaps for + @c wxART_HELP and @c wxART_CLOSE (but not any other title bar buttons + and not for any state but normal, i.e. not pressed and not current one). + + The presence of this function is indicated by @c + wxHAS_DRAW_TITLE_BAR_BITMAP symbol being defined. + + Also notice that PNG handler must be enabled using wxImage::AddHandler() + to use this function under OS X currently as the bitmaps are embedded + in the library itself in PNG format. + + @since 2.9.1 + */ + virtual void DrawTitleBarBitmap(wxWindow *win, + wxDC& dc, + const wxRect& rect, + wxTitleBarButton button, + int flags = 0) = 0; + /** Return the currently used renderer. */ @@ -428,19 +484,19 @@ public: /** Returns the size of a check box. + The @a win parameter is not used currently and can be @NULL. */ virtual wxSize GetCheckBoxSize(wxWindow* win) = 0; /** Returns the height of a header button, either a fixed platform height if - available, or a - generic height based on the window's font. + available, or a generic height based on the @a win window's font. */ virtual int GetHeaderButtonHeight(wxWindow* win) = 0; /** - Get the splitter parameters, see - wxSplitterRenderParams. + Get the splitter parameters, see wxSplitterRenderParams. + The @a win parameter should be a wxSplitterWindow. */ virtual wxSplitterRenderParams GetSplitterParams(const wxWindow* win) = 0;