X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b5dbe15d0bacde245539f54c4d97af6b4696f01f..86ac84b8ce086e6bbda58f422d41f84268606e35:/include/wx/univ/renderer.h diff --git a/include/wx/univ/renderer.h b/include/wx/univ/renderer.h index 940b3bc286..ddbf384e5a 100644 --- a/include/wx/univ/renderer.h +++ b/include/wx/univ/renderer.h @@ -58,7 +58,7 @@ class WXDLLIMPEXP_FWD_CORE wxScrollBar; #include "wx/icon.h" // helper class used by wxMenu-related functions -class WXDLLEXPORT wxMenuGeometryInfo +class WXDLLIMPEXP_CORE wxMenuGeometryInfo { public: // get the total size of the menu @@ -71,7 +71,7 @@ public: // wxRenderer: abstract renderers interface // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxRenderer : public wxDelegateRendererNative +class WXDLLIMPEXP_CORE wxRenderer : public wxDelegateRendererNative { public: // drawing functions @@ -90,12 +90,6 @@ public: const wxRect& rect, int flags) = 0; - - // draw the focus rectangle around the label contained in the given rect - // - // only wxCONTROL_SELECTED makes sense in flags here - virtual void DrawFocusRect(wxDC& dc, const wxRect& rect, int flags = 0) = 0; - // draw the label inside the given rectangle with the specified alignment // and optionally emphasize the character with the given index virtual void DrawLabel(wxDC& dc, @@ -123,7 +117,7 @@ public: wxBorder border, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) = 0; + wxRect *rectIn = NULL) = 0; // draw text control border (I hate to have a separate method for this but // it is needed to accommodate GTK+) @@ -131,13 +125,13 @@ public: wxBorder border, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) = 0; + wxRect *rectIn = NULL) = 0; // draw push button border and return the rectangle left for the label virtual void DrawButtonBorder(wxDC& dc, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) = 0; + wxRect *rectIn = NULL) = 0; // draw a horizontal line virtual void DrawHorizontalLine(wxDC& dc, @@ -214,6 +208,13 @@ public: wxAlignment align = wxALIGN_LEFT, int indexAccel = -1) = 0; + // draw a radio button sans label or bitmap, for wxRenderer API compat. + virtual void DrawRadioButton(wxDC& dc, + const wxRect& rect, + int flags = 0, + wxAlignment align = wxALIGN_LEFT) + { DrawRadioButton(dc, wxEmptyString, wxNullBitmap, rect, flags, align); } + #if wxUSE_TOOLBAR // draw a toolbar button (label may be empty, bitmap may be invalid, if // both conditions are true this function draws a separator) @@ -499,7 +500,7 @@ public: // will be left to the original renderer // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxDelegateRenderer : public wxRenderer +class WXDLLIMPEXP_CORE wxDelegateRenderer : public wxRenderer { public: wxDelegateRenderer(wxRenderer *renderer) : m_renderer(renderer) { } @@ -515,8 +516,8 @@ public: const wxRect& rect, int flags) { m_renderer->DrawButtonSurface(dc, col, rect, flags); } - virtual void DrawFocusRect(wxDC& dc, const wxRect& rect, int flags = 0) - { m_renderer->DrawFocusRect(dc, rect, flags); } + virtual void DrawFocusRect(wxWindow* win, wxDC& dc, const wxRect& rect, int flags = 0) + { m_renderer->DrawFocusRect(win, dc, rect, flags); } virtual void DrawLabel(wxDC& dc, const wxString& label, const wxRect& rect, @@ -540,18 +541,18 @@ public: wxBorder border, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) + wxRect *rectIn = NULL) { m_renderer->DrawBorder(dc, border, rect, flags, rectIn); } virtual void DrawTextBorder(wxDC& dc, wxBorder border, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) + wxRect *rectIn = NULL) { m_renderer->DrawTextBorder(dc, border, rect, flags, rectIn); } virtual void DrawButtonBorder(wxDC& dc, const wxRect& rect, int flags = 0, - wxRect *rectIn = (wxRect *)NULL) + wxRect *rectIn = NULL) { m_renderer->DrawButtonBorder(dc, rect, flags, rectIn); } virtual void DrawFrame(wxDC& dc, const wxString& label, @@ -869,7 +870,7 @@ protected: // OnPaint() // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxControlRenderer +class WXDLLIMPEXP_CORE wxControlRenderer { public: // create a renderer for this dc with this "fundamental" renderer