added wxRendererNative to be used by the generic controls for rendering platfomr-specific parts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -18,7 +18,11 @@
|
||||
renderers and provide the functionality which is often similar or identical
|
||||
in all renderers (using inheritance here would be more restrictive as the
|
||||
given concrete renderer may need an arbitrary subset of the base class
|
||||
methods)
|
||||
methods).
|
||||
|
||||
Finally note that wxRenderer supersedes wxRendererNative in wxUniv build and
|
||||
includes the latters functionality (which it may delegate to the generic
|
||||
implementation of the latter or reimplement itself).
|
||||
*/
|
||||
|
||||
#ifdef __GNUG__
|
||||
@@ -28,6 +32,8 @@
|
||||
#ifndef _WX_UNIV_RENDERER_H_
|
||||
#define _WX_UNIV_RENDERER_H_
|
||||
|
||||
#include "wx/renderer.h"
|
||||
|
||||
class WXDLLEXPORT wxDC;
|
||||
class WXDLLEXPORT wxCheckListBox;
|
||||
class WXDLLEXPORT wxListBox;
|
||||
@@ -59,7 +65,7 @@ public:
|
||||
// wxRenderer: abstract renderers interface
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class WXDLLEXPORT wxRenderer
|
||||
class WXDLLEXPORT wxRenderer : public wxDelegateRendererNative
|
||||
{
|
||||
public:
|
||||
// drawing functions
|
||||
@@ -458,6 +464,7 @@ public:
|
||||
// virtual dtor for any base class
|
||||
virtual ~wxRenderer();
|
||||
|
||||
|
||||
protected:
|
||||
// draw a frame around rectFrame rectangle but not touching the rectLabel
|
||||
// one: this is used by DrawFrame()
|
||||
@@ -821,6 +828,17 @@ public:
|
||||
int flags) const
|
||||
{ return m_renderer->HitTestFrame(rect, pt, flags); }
|
||||
|
||||
virtual void DrawHeaderButton(wxWindow *win,
|
||||
wxDC& dc,
|
||||
const wxRect& rect,
|
||||
int flags = 0)
|
||||
{ m_renderer->DrawHeaderButton(win, dc, rect, flags); }
|
||||
virtual void DrawTreeItemButton(wxWindow *win,
|
||||
wxDC& dc,
|
||||
const wxRect& rect,
|
||||
int flags = 0)
|
||||
{ m_renderer->DrawTreeItemButton(win, dc, rect, flags); }
|
||||
|
||||
protected:
|
||||
wxRenderer *m_renderer;
|
||||
};
|
||||
|
@@ -27,30 +27,6 @@ class WXDLLEXPORT wxMenuBar;
|
||||
class WXDLLEXPORT wxRenderer;
|
||||
class WXDLLEXPORT wxScrollBar;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// constants
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// control state flags used in wxRenderer and wxColourScheme
|
||||
enum
|
||||
{
|
||||
wxCONTROL_DISABLED = 0x00000001, // control is disabled
|
||||
wxCONTROL_FOCUSED = 0x00000002, // currently has keyboard focus
|
||||
wxCONTROL_PRESSED = 0x00000004, // (button) is pressed
|
||||
wxCONTROL_ISDEFAULT = 0x00000008, // only applies to the buttons
|
||||
wxCONTROL_ISSUBMENU = wxCONTROL_ISDEFAULT, // only for menu items
|
||||
wxCONTROL_CURRENT = 0x00000010, // mouse is currently over the control
|
||||
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_FLAGS_MASK = 0x000000ff,
|
||||
|
||||
// this is a pseudo flag not used directly by wxRenderer but rather by some
|
||||
// controls internally
|
||||
wxCONTROL_DIRTY = 0x80000000
|
||||
};
|
||||
|
||||
#ifdef __WXX11__
|
||||
#define wxUSE_TWO_WINDOWS 1
|
||||
#else
|
||||
|
Reference in New Issue
Block a user