]> git.saurik.com Git - wxWidgets.git/blob - interface/aui/dockart.h
more utils.h fixes
[wxWidgets.git] / interface / aui / dockart.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: aui/dockart.h
3 // Purpose: interface of wxAuiDockArt
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9
10 /**
11 @todo TOWRITE
12 */
13 enum 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 */
37 enum wxAuiPaneDockArtGradients
38 {
39 wxAUI_GRADIENT_NONE = 0,
40 wxAUI_GRADIENT_VERTICAL = 1,
41 wxAUI_GRADIENT_HORIZONTAL = 2
42 };
43
44 /**
45 @todo TOWRITE
46 */
47 enum 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 */
57 enum 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
74 /**
75 @class wxAuiDockArt
76 @headerfile dockart.h wx/aui/dockart.h
77
78 wxAuiDockArt is part of the wxAUI class framework.
79 See also @ref overview_aui.
80
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.
83
84 By default, a wxAuiManager uses an instance of this class called
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.
89
90 @library{wxaui}
91 @category{aui}
92
93 @see wxAuiManager, wxAuiPaneInfo
94 */
95 class wxAuiDockArt
96 {
97 public:
98 /**
99 Constructor.
100 */
101 wxAuiDockArt();
102
103 /**
104 Destructor.
105 */
106 ~wxAuiDockArt();
107
108 /**
109 Draws a background.
110 */
111 virtual void DrawBackground(wxDC& dc, wxWindow* window,
112 int orientation,
113 const wxRect& rect);
114
115 /**
116 Draws a border.
117 */
118 virtual void DrawBorder(wxDC& dc, wxWindow* window,
119 const wxRect& rect,
120 wxAuiPaneInfo& pane);
121
122 /**
123 Draws a caption.
124 */
125 virtual void DrawCaption(wxDC& dc, wxWindow* window,
126 const wxString& text,
127 const wxRect& rect,
128 wxAuiPaneInfo& pane);
129
130 /**
131 Draws a gripper.
132 */
133 virtual void DrawGripper(wxDC& dc, wxWindow* window,
134 const wxRect& rect,
135 wxAuiPaneInfo& pane);
136
137 /**
138 Draws a button in the pane's title bar.
139 @a button can be one of the values of @b wxAuiButtonId.
140 @a button_state can be one of the values of @b wxAuiPaneButtonState.
141 */
142 virtual void DrawPaneButton(wxDC& dc, wxWindow* window,
143 int button,
144 int button_state,
145 const wxRect& rect,
146 wxAuiPaneInfo& pane);
147
148 /**
149 Draws a sash between two windows.
150 */
151 virtual void DrawSash(wxDC& dc, wxWindow* window,
152 int orientation,
153 const wxRect& rect);
154
155 /**
156 The same as GetColour().
157 */
158 virtual wxColour GetColor(int id);
159
160 /**
161 Get the colour of a certain setting.
162 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
163 */
164 virtual wxColour GetColour(int id);
165
166 /**
167 Get a font setting.
168 */
169 virtual wxFont GetFont(int id);
170
171 /**
172 Get the value of a certain setting.
173 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
174 */
175 virtual int GetMetric(int id);
176
177 /**
178 The same as SetColour().
179 */
180 virtual void SetColor(int id, const wxColour& color);
181
182 /**
183 Set a certain setting with the value @e colour.
184 @a id can be one of the colour values of @b wxAuiPaneDockArtSetting.
185 */
186 virtual void SetColour(int id, const wxColor& colour);
187
188 /**
189 Set a font setting.
190 */
191 virtual void SetFont(int id, const wxFont& font);
192
193 /**
194 Set a certain setting with the value @e new_val.
195 @a id can be one of the size values of @b wxAuiPaneDockArtSetting.
196 */
197 virtual void SetMetric(int id, int new_val);
198 };
199