/**
@struct wxSplitterRenderParams
- @wxheader{renderer.h}
This is just a simple @c struct used as a return value of
wxRendererNative::GetSplitterParams().
/**
@struct wxHeaderButtonParams
- @wxheader{renderer.h}
This @c struct can optionally be used with
wxRendererNative::DrawHeaderButton() to specify custom values used to draw
/**
@class wxDelegateRendererNative
- @wxheader{renderer.h}
wxDelegateRendererNative allows reuse of renderers code by forwarding all the
wxRendererNative methods to the given object and
virtual void DrawCheckBox(wxWindow *win, wxDC& dc,
const wxRect& rect, int flags = 0 );
+ virtual wxSize GetCheckBoxSize(wxWindow *win);
+
virtual void DrawPushButton(wxWindow *win, wxDC& dc,
const wxRect& rect, int flags = 0 );
/**
@class wxRendererNative
- @wxheader{renderer.h}
First, a brief introduction to wxRendererNative and why it is needed.
/**
Virtual destructor as for any base class.
*/
- ~wxRendererNative();
+ virtual ~wxRendererNative();
/**
- Draw a check box (used by wxDataViewCtrl).
+ Draw a check box.
@a flags may have the @c wxCONTROL_CHECKED, @c wxCONTROL_CURRENT or
@c wxCONTROL_UNDETERMINED bit set, see @ref wxCONTROL_FLAGS.
The optimal width to contain the the unabreviated label text or
bitmap, the sort arrow if present, and internal margins.
*/
- virtual int DrawHeaderButton(wxWindow* win, wxDC& dc,
- const wxRect& rect, int flags = 0,
- wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE,
- wxHeaderButtonParams* params = NULL);
+ virtual int DrawHeaderButton(wxWindow* win, wxDC& dc, const wxRect& rect,
+ int flags = 0,
+ wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE, wxHeaderButtonParams* params = NULL) = 0;
/**
Draw the contents of a header control button (label, sort arrows,
The optimal width to contain the the unabreviated label text or
bitmap, the sort arrow if present, and internal margins.
*/
- virtual int DrawHeaderButtonContents(wxWindow *win, wxDC& dc,
+ virtual int DrawHeaderButtonContents(wxWindow* win, wxDC& dc,
const wxRect& rect, int flags = 0,
- wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE,
- wxHeaderButtonParams* params = NULL);
+ wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE, wxHeaderButtonParams* params = NULL) = 0;
/**
Draw a selection rectangle underneath the text as used e.g. in a
Draw a sash. The @a orient parameter defines whether the sash should be
vertical or horizontal and how the @a position should be interpreted.
*/
- virtual void DrawSplitterSash(wxWindow* win, wxDC& dc,
- const wxSize& size, wxCoord position,
- wxOrientation orient, int flags = 0);
+ virtual void DrawSplitterSash(wxWindow* win, wxDC& dc, const wxSize& size,
+ wxCoord position, wxOrientation orient,
+ int flags = 0) = 0;
/**
Draw the expanded/collapsed icon for a tree control item.
*/
static wxRendererNative GetGeneric();
+ /**
+ Returns the size of a check box.
+ */
+ 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.
*/
- virtual int GetHeaderButtonHeight(wxWindow* win);
+ virtual int GetHeaderButtonHeight(wxWindow* win) = 0;
/**
Get the splitter parameters, see
wxSplitterRenderParams.
*/
- virtual wxSplitterRenderParams GetSplitterParams(const wxWindow* win);
+ virtual wxSplitterRenderParams GetSplitterParams(const wxWindow* win) = 0;
/**
This function is used for version checking: Load()
but it has to be in the derived, not base, class, to detect mismatches between
the renderers versions and so you have to implement it anew in all renderers.
*/
- virtual wxRendererVersion GetVersion() const;
+ virtual wxRendererVersion GetVersion() const = 0;
/**
Load the renderer from the specified DLL, the returned pointer must be
/**
@struct wxRendererVersion
- @wxheader{renderer.h}
This simple struct represents the wxRendererNative
interface version and is only used as the return value of