1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: interface of wxAuiDockArt
4 // Author: wxWidgets team
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
13 enum wxAuiPaneDockArtSetting
15 wxAUI_DOCKART_SASH_SIZE
= 0,
16 wxAUI_DOCKART_CAPTION_SIZE
= 1,
17 wxAUI_DOCKART_GRIPPER_SIZE
= 2,
18 wxAUI_DOCKART_PANE_BORDER_SIZE
= 3,
19 wxAUI_DOCKART_PANE_BUTTON_SIZE
= 4,
20 wxAUI_DOCKART_BACKGROUND_COLOUR
= 5,
21 wxAUI_DOCKART_SASH_COLOUR
= 6,
22 wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR
= 7,
23 wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR
= 8,
24 wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR
= 9,
25 wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR
= 10,
26 wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR
= 11,
27 wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR
= 12,
28 wxAUI_DOCKART_BORDER_COLOUR
= 13,
29 wxAUI_DOCKART_GRIPPER_COLOUR
= 14,
30 wxAUI_DOCKART_CAPTION_FONT
= 15,
31 wxAUI_DOCKART_GRADIENT_TYPE
= 16
37 enum wxAuiPaneDockArtGradients
39 wxAUI_GRADIENT_NONE
= 0,
40 wxAUI_GRADIENT_VERTICAL
= 1,
41 wxAUI_GRADIENT_HORIZONTAL
= 2
47 enum wxAuiPaneButtonState
49 wxAUI_BUTTON_STATE_NORMAL
= 0,
50 wxAUI_BUTTON_STATE_HOVER
= 1,
51 wxAUI_BUTTON_STATE_PRESSED
= 2
59 wxAUI_BUTTON_CLOSE
= 101,
60 wxAUI_BUTTON_MAXIMIZE_RESTORE
= 102,
61 wxAUI_BUTTON_MINIMIZE
= 103,
62 wxAUI_BUTTON_PIN
= 104,
63 wxAUI_BUTTON_OPTIONS
= 105,
64 wxAUI_BUTTON_WINDOWLIST
= 106,
65 wxAUI_BUTTON_LEFT
= 107,
66 wxAUI_BUTTON_RIGHT
= 108,
67 wxAUI_BUTTON_UP
= 109,
68 wxAUI_BUTTON_DOWN
= 110,
69 wxAUI_BUTTON_CUSTOM1
= 201,
70 wxAUI_BUTTON_CUSTOM2
= 202,
71 wxAUI_BUTTON_CUSTOM3
= 203
77 wxAuiDockArt is part of the wxAUI class framework.
78 See also @ref overview_aui.
80 wxAuiDockArt is the art provider: provides all drawing functionality to the
81 wxAui dock manager. This allows the dock manager to have a plugable look-and-feel.
83 By default, a wxAuiManager uses an instance of this class called
84 wxAuiDefaultDockArt which provides bitmap art and a colour scheme that is
85 adapted to the major platforms' look. You can either derive from that class
86 to alter its behaviour or write a completely new dock art class.
87 Call wxAuiManager::SetArtProvider to force wxAUI to use your new dock art provider.
92 @see wxAuiManager, wxAuiPaneInfo
105 virtual ~wxAuiDockArt();
110 virtual void DrawBackground(wxDC
& dc
, wxWindow
* window
, int orientation
,
111 const wxRect
& rect
) = 0;
116 virtual void DrawBorder(wxDC
& dc
, wxWindow
* window
, const wxRect
& rect
,
117 wxAuiPaneInfo
& pane
) = 0;
122 virtual void DrawCaption(wxDC
& dc
, wxWindow
* window
, const wxString
& text
,
123 const wxRect
& rect
, wxAuiPaneInfo
& pane
) = 0;
128 virtual void DrawGripper(wxDC
& dc
, wxWindow
* window
, const wxRect
& rect
,
129 wxAuiPaneInfo
& pane
) = 0;
132 Draws a button in the pane's title bar.
133 @a button can be one of the values of @b wxAuiButtonId.
134 @a button_state can be one of the values of @b wxAuiPaneButtonState.
136 virtual void DrawPaneButton(wxDC
& dc
, wxWindow
* window
, int button
,
137 int button_state
, const wxRect
& rect
,
138 wxAuiPaneInfo
& pane
) = 0;
141 Draws a sash between two windows.
143 virtual void DrawSash(wxDC
& dc
, wxWindow
* window
, int orientation
,
144 const wxRect
& rect
) = 0;
146 Get the colour of a certain setting.
147 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
149 virtual wxColour
GetColour(int id
) = 0;
154 virtual wxFont
GetFont(int id
) = 0;
157 Get the value of a certain setting.
158 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
160 virtual int GetMetric(int id
) = 0;
163 Set a certain setting with the value @e colour.
164 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
166 virtual void SetColour(int id
, const wxColour
& colour
) = 0;
171 virtual void SetFont(int id
, const wxFont
& font
) = 0;
174 Set a certain setting with the value @e new_val.
175 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
177 virtual void SetMetric(int id
, int new_val
) = 0;