X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b50d93d1dae385443f0ca4a57736cb5a57a3e7fe..986a59561ab32013ae67a243a02099e64f0a4ae1:/include/wx/renderer.h diff --git a/include/wx/renderer.h b/include/wx/renderer.h index 3512e8f3e8..6a0116d75a 100644 --- a/include/wx/renderer.h +++ b/include/wx/renderer.h @@ -41,8 +41,8 @@ class WXDLLIMPEXP_FWD_CORE wxWindow; #undef wxHAS_NATIVE_RENDERER #endif -// only MSW currently provides DrawTitleBarBitmap() method -#if defined(__WXMSW__) +// only MSW and OS X currently provides DrawTitleBarBitmap() method +#if defined(__WXMSW__) || (defined(__WXMAC__) && wxUSE_LIBPNG && wxUSE_IMAGE) #define wxHAS_DRAW_TITLE_BAR_BITMAP #endif @@ -83,7 +83,7 @@ enum wxTitleBarButton { wxTITLEBAR_BUTTON_CLOSE = 0x01000000, wxTITLEBAR_BUTTON_MAXIMIZE = 0x02000000, - wxTITLEBAR_BUTTON_ICONIZE = 0x04000000, + wxTITLEBAR_BUTTON_ICONIZE = 0x04000000, wxTITLEBAR_BUTTON_RESTORE = 0x08000000, wxTITLEBAR_BUTTON_HELP = 0x10000000 }; @@ -200,6 +200,9 @@ public: // height if available, or a generic height based on the window's font. virtual int GetHeaderButtonHeight(wxWindow *win) = 0; + // Returns the margin on left and right sides of header button's label + virtual int GetHeaderButtonMargin(wxWindow *win) = 0; + // draw the expanded/collapsed icon for a tree control item virtual void DrawTreeItemButton(wxWindow *win, @@ -304,10 +307,13 @@ public: #ifdef wxHAS_DRAW_TITLE_BAR_BITMAP // Draw one of the standard title bar buttons // - // This is currently implemented only for MSW because there is no way to - // render standard title bar buttons under the other platforms, the best - // can be done is to use normal (only) images which wxArtProvider provides - // for wxART_HELP and wxART_CLOSE (but not any other title bar buttons) + // This is currently implemented only for MSW and OS X (for the close + // button only) because there is no way to render standard title bar + // buttons under the other platforms, the best can be done is to use normal + // (only) images which wxArtProvider provides for wxART_HELP and + // wxART_CLOSE (but not any other title bar buttons) + // + // NB: make sure PNG handler is enabled if using this function under OS X virtual void DrawTitleBarBitmap(wxWindow *win, wxDC& dc, const wxRect& rect, @@ -398,6 +404,9 @@ public: virtual int GetHeaderButtonHeight(wxWindow *win) { return m_rendererNative.GetHeaderButtonHeight(win); } + virtual int GetHeaderButtonMargin(wxWindow *win) + { return m_rendererNative.GetHeaderButtonMargin(win); } + virtual void DrawTreeItemButton(wxWindow *win, wxDC& dc, const wxRect& rect,