]> git.saurik.com Git - wxWidgets.git/blame - interface/aui/dockart.h
Generalized wxScrolledWindow into wxScrolled<T> that can derive from
[wxWidgets.git] / interface / aui / dockart.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: aui/dockart.h
e54c96f1 3// Purpose: interface of wxAuiDockArt
23324ae1
FM
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
47d602c1
FM
9
10/**
11 @todo TOWRITE
12*/
13enum wxAuiPaneDockArtSetting
14{
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
32};
33
34/**
35 @todo TOWRITE
36*/
37enum wxAuiPaneDockArtGradients
38{
39 wxAUI_GRADIENT_NONE = 0,
40 wxAUI_GRADIENT_VERTICAL = 1,
41 wxAUI_GRADIENT_HORIZONTAL = 2
42};
43
44/**
45 @todo TOWRITE
46*/
47enum wxAuiPaneButtonState
48{
49 wxAUI_BUTTON_STATE_NORMAL = 0,
50 wxAUI_BUTTON_STATE_HOVER = 1,
51 wxAUI_BUTTON_STATE_PRESSED = 2
52};
53
54/**
55 @todo TOWRITE
56*/
57enum wxAuiButtonId
58{
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
72};
73
23324ae1
FM
74/**
75 @class wxAuiDockArt
76 @headerfile dockart.h wx/aui/dockart.h
7c913512 77
23324ae1 78 wxAuiDockArt is part of the wxAUI class framework.
47d602c1 79 See also @ref overview_aui.
7c913512 80
47d602c1
FM
81 wxAuiDockArt is the art provider: provides all drawing functionality to the
82 wxAui dock manager. This allows the dock manager to have a plugable look-and-feel.
7c913512 83
e4f1d811 84 By default, a wxAuiManager uses an instance of this class called
47d602c1
FM
85 wxAuiDefaultDockArt which provides bitmap art and a colour scheme that is
86 adapted to the major platforms' look. You can either derive from that class
87 to alter its behaviour or write a completely new dock art class.
88 Call wxAuiManager::SetArtProvider to force wxAUI to use your new dock art provider.
7c913512 89
23324ae1
FM
90 @library{wxaui}
91 @category{aui}
7c913512 92
e54c96f1 93 @see wxAuiManager, wxAuiPaneInfo
23324ae1 94*/
7c913512 95class wxAuiDockArt
23324ae1
FM
96{
97public:
98 /**
99 Constructor.
100 */
101 wxAuiDockArt();
102
103 /**
104 Destructor.
105 */
e4f1d811 106 virtual ~wxAuiDockArt();
23324ae1
FM
107
108 /**
109 Draws a background.
110 */
1d497b99
FM
111 virtual void DrawBackground(wxDC& dc, wxWindow* window, int orientation,
112 const wxRect& rect) = 0;
23324ae1
FM
113
114 /**
115 Draws a border.
116 */
1d497b99
FM
117 virtual void DrawBorder(wxDC& dc, wxWindow* window, const wxRect& rect,
118 wxAuiPaneInfo& pane) = 0;
23324ae1
FM
119
120 /**
121 Draws a caption.
122 */
1d497b99
FM
123 virtual void DrawCaption(wxDC& dc, wxWindow* window, const wxString& text,
124 const wxRect& rect, wxAuiPaneInfo& pane) = 0;
23324ae1
FM
125
126 /**
127 Draws a gripper.
128 */
1d497b99
FM
129 virtual void DrawGripper(wxDC& dc, wxWindow* window, const wxRect& rect,
130 wxAuiPaneInfo& pane) = 0;
23324ae1
FM
131
132 /**
133 Draws a button in the pane's title bar.
4cc4bfaf
FM
134 @a button can be one of the values of @b wxAuiButtonId.
135 @a button_state can be one of the values of @b wxAuiPaneButtonState.
23324ae1 136 */
1d497b99
FM
137 virtual void DrawPaneButton(wxDC& dc, wxWindow* window, int button,
138 int button_state, const wxRect& rect,
139 wxAuiPaneInfo& pane) = 0;
23324ae1
FM
140
141 /**
142 Draws a sash between two windows.
143 */
1d497b99
FM
144 virtual void DrawSash(wxDC& dc, wxWindow* window, int orientation,
145 const wxRect& rect) = 0;
23324ae1
FM
146 /**
147 Get the colour of a certain setting.
4cc4bfaf 148 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
23324ae1 149 */
e4f1d811 150 virtual wxColour GetColour(int id) = 0;
23324ae1
FM
151
152 /**
153 Get a font setting.
154 */
d2aa927a 155 virtual wxFont GetFont(int id) = 0;
23324ae1
FM
156
157 /**
158 Get the value of a certain setting.
4cc4bfaf 159 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
23324ae1 160 */
d2aa927a 161 virtual int GetMetric(int id) = 0;
23324ae1 162
23324ae1
FM
163 /**
164 Set a certain setting with the value @e colour.
4cc4bfaf 165 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
23324ae1 166 */
d2aa927a 167 virtual void SetColour(int id, const wxColour& colour) = 0;
23324ae1
FM
168
169 /**
170 Set a font setting.
171 */
d2aa927a 172 virtual void SetFont(int id, const wxFont& font) = 0;
23324ae1
FM
173
174 /**
175 Set a certain setting with the value @e new_val.
4cc4bfaf 176 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
23324ae1 177 */
d2aa927a 178 virtual void SetMetric(int id, int new_val) = 0;
23324ae1 179};
e54c96f1 180