]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/treectrl.tex
fixed Write() signature
[wxWidgets.git] / docs / latex / wx / treectrl.tex
CommitLineData
a660d684
KB
1\section{\class{wxTreeCtrl}}\label{wxtreectrl}
2
3A tree control presents information as a hierarchy, with items that may be expanded
2b5f62a0
VZ
4to show further items. Items in a tree control are referenced by wxTreeItemId handles,
5which may be tested for validity by calling wxTreeItemId::IsOk.
a660d684
KB
6
7To intercept events from a tree control, use the event table macros described in \helpref{wxTreeEvent}{wxtreeevent}.
8
9\wxheading{Derived from}
10
11\helpref{wxControl}{wxcontrol}\\
12\helpref{wxWindow}{wxwindow}\\
13\helpref{wxEvtHandler}{wxevthandler}\\
14\helpref{wxObject}{wxobject}
15
954b8ae6
JS
16\wxheading{Include files}
17
18<wx/treectrl.h>
19
a660d684
KB
20\wxheading{Window styles}
21
22\twocolwidtha{5cm}
23\begin{twocollist}\itemsep=0pt
ea91314f
VS
24\twocolitem{\windowstyle{wxTR\_EDIT\_LABELS}}{Use this style
25if you wish the user to be able to edit labels in the tree control.}
26\twocolitem{\windowstyle{wxTR\_NO\_BUTTONS}}{For convenience
27to document that no buttons are to be drawn.}
28\twocolitem{\windowstyle{wxTR\_HAS\_BUTTONS}}{Use this style
29to show + and - buttons to the left of parent items.}
ea91314f
VS
30\twocolitem{\windowstyle{wxTR\_NO\_LINES}}{Use this style
31to hide vertical level connectors.}
c6f4913a
VS
32\twocolitem{\windowstyle{wxTR\_FULL\_ROW\_HIGHLIGHT}}{Use this style to have the background
33colour and the selection highlight extend over the entire horizontal
34row of the tree control window. (This flag is ignored under Windows unless you
63969272 35specify wxTR\_NO\_LINES as well.) }
ea91314f
VS
36\twocolitem{\windowstyle{wxTR\_LINES\_AT\_ROOT}}{Use this style
37to show lines between root nodes.
38Only applicable if wxTR\_HIDE\_ROOT is set and wxTR\_NO\_LINES is not set.}
39\twocolitem{\windowstyle{wxTR\_HIDE\_ROOT}}{Use this style
40to suppress the display of the root node,
41effectively causing the first-level nodes
f6ed3823 42to appear as a series of root nodes.}
ea91314f
VS
43\twocolitem{\windowstyle{wxTR\_ROW\_LINES}}{Use this style
44to draw a contrasting border between displayed rows.}
45\twocolitem{\windowstyle{wxTR\_HAS\_VARIABLE\_ROW\_HEIGHT}}{Use this style
46to cause row heights to be just big enough to fit the content.
47If not set, all rows use the largest row height.
48The default is that this flag is unset.
49Generic only.}
50\twocolitem{\windowstyle{wxTR\_SINGLE}}{For convenience
51to document that only one item may be selected at a time.
52Selecting another item causes the current selection, if any,
53to be deselected. This is the default.}
54\twocolitem{\windowstyle{wxTR\_MULTIPLE}}{Use this style
55to allow a range of items to be selected.
56If a second range is selected, the current range, if any, is deselected.}
57\twocolitem{\windowstyle{wxTR\_EXTENDED}}{Use this style
58to allow disjoint items to be selected. (Only partially implemented; may not work in all cases.)}
59\twocolitem{\windowstyle{wxTR\_DEFAULT\_STYLE}}{The set of flags that are
60closest to the defaults for the native control for a particular toolkit.}
a660d684
KB
61\end{twocollist}
62
63See also \helpref{window styles overview}{windowstyles}.
64
5de76427
JS
65\wxheading{Event handling}
66
67To process input from a tree control, use these event handler macros to direct input to member
68functions that take a \helpref{wxTreeEvent}{wxtreeevent} argument.
69
70\twocolwidtha{7cm}
71\begin{twocollist}\itemsep=0pt
72\twocolitem{{\bf EVT\_TREE\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
73\twocolitem{{\bf EVT\_TREE\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
01a01d10 74\twocolitem{{\bf EVT\_TREE\_END\_DRAG(id, func)}}{End dragging with the left or right mouse button.}
fd128b0c
RR
75\twocolitem{{\bf EVT\_TREE\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
76\twocolitem{{\bf EVT\_TREE\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
5de76427
JS
77\twocolitem{{\bf EVT\_TREE\_DELETE\_ITEM(id, func)}}{Delete an item.}
78\twocolitem{{\bf EVT\_TREE\_GET\_INFO(id, func)}}{Request information from the application.}
79\twocolitem{{\bf EVT\_TREE\_SET\_INFO(id, func)}}{Information is being supplied.}
9711961c 80\twocolitem{{\bf EVT\_TREE\_ITEM\_ACTIVATED(id, func)}}{The item has been activated, i.e. chosen by double clicking it with mouse or from keyboard}
fb96bc75
VZ
81\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSED(id, func)}}{The item has been collapsed.}
82\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSING(id, func)}}{The item is being collapsed. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
83\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDED(id, func)}}{The item has been expanded.}
84\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDING(id, func)}}{The item is being expanded. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
f525dc54
JS
85\twocolitem{{\bf EVT\_TREE\_ITEM\_RIGHT\_CLICK(id, func)}}{The user has clicked the item with the right mouse button.}
86\twocolitem{{\bf EVT\_TREE\_ITEM\_MIDDLE\_CLICK(id, func)}}{The user has clicked the item with the middle mouse button.}
5de76427 87\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGED(id, func)}}{Selection has changed.}
fd128b0c 88\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGING(id, func)}}{Selection is changing. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
5de76427 89\twocolitem{{\bf EVT\_TREE\_KEY\_DOWN(id, func)}}{A key has been pressed.}
156194e1
JS
90\twocolitem{{\bf EVT\_TREE\_ITEM\_GETTOOLTIP(id, func)}}{The opportunity to set the item tooltip
91is being given to the application (call wxTreeEvent::SetToolTip). Windows only.}
6eb7ee61 92\twocolitem{{\bf EVT\_TREE\_ITEM\_MENU(id, func)}}{The context menu for the selected item has been requested, either by a right click or by using the menu key.}
6bce9756
KH
93\twocolitem{{\bf EVT\_TREE\_STATE\_IMAGE\_CLICK(id, func)}}{The state image has been clicked. Windows only.}
94\end{twocollist}
95
a660d684
KB
96\wxheading{See also}
97
4fabb575 98\helpref{wxTreeItemData}{wxtreeitemdata}, \helpref{wxTreeCtrl overview}{wxtreectrloverview}, \helpref{wxListBox}{wxlistbox}, \helpref{wxListCtrl}{wxlistctrl},\rtfsp
a660d684
KB
99\helpref{wxImageList}{wximagelist}, \helpref{wxTreeEvent}{wxtreeevent}
100
61714c23
VZ
101\wxheading{Win32 notes}
102
103wxTreeCtrl class uses the standard common treeview control under Win32
104implemented in the system library {\tt comctl32.dll}. Some versions of this
105library are known to have bugs with handling the tree control colours: the
106usual symptom is that the expanded items leave black (or otherwise incorrectly
107coloured) background behind them, especially for the controls using non
f6bcfd97 108default background colour. The recommended solution is to upgrade the {\tt comctl32.dll}
d2c2afc9 109to a newer version: see
ad4a6192 110\urlref{http://www.microsoft.com/downloads/release.asp?ReleaseID=11916}{http://www.microsoft.com/downloads/release.asp?ReleaseID=11916}.
61714c23 111
a660d684
KB
112\latexignore{\rtfignore{\wxheading{Members}}}
113
3e9af289 114
a660d684
KB
115\membersection{wxTreeCtrl::wxTreeCtrl}\label{wxtreectrlconstr}
116
117\func{}{wxTreeCtrl}{\void}
118
119Default constructor.
120
eaaa6a06 121\func{}{wxTreeCtrl}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 122\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 123\param{long}{ style = wxTR\_HAS\_BUTTONS}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
124
125Constructor, creating and showing a tree control.
126
127\wxheading{Parameters}
128
513e0cea 129\docparam{parent}{Parent window. Must not be {\tt NULL}.}
a660d684
KB
130
131\docparam{id}{Window identifier. A value of -1 indicates a default value.}
132
133\docparam{pos}{Window position.}
134
135\docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized
136appropriately.}
137
138\docparam{style}{Window style. See \helpref{wxTreeCtrl}{wxtreectrl}.}
139
140\docparam{validator}{Window validator.}
141
142\docparam{name}{Window name.}
143
144\wxheading{See also}
145
146\helpref{wxTreeCtrl::Create}{wxtreectrlcreate}, \helpref{wxValidator}{wxvalidator}
147
3e9af289 148
6d06e061 149\membersection{wxTreeCtrl::\destruct{wxTreeCtrl}}\label{wxtreectrldtor}
a660d684
KB
150
151\func{void}{\destruct{wxTreeCtrl}}{\void}
152
153Destructor, destroying the list control.
154
3e9af289 155
4fabb575
JS
156\membersection{wxTreeCtrl::AddRoot}\label{wxtreectrladdroot}
157
158\func{wxTreeItemId}{AddRoot}{\param{const wxString\&}{ text},
513e0cea 159 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
4fabb575
JS
160
161Adds the root node to the tree, returning the new item.
162
ea91314f
VS
163The {\it image} and {\it selImage} parameters are an index within
164the normal image list specifying the image to use for unselected and
165selected items, respectively.
4fabb575
JS
166If {\it image} > -1 and {\it selImage} is -1, the same image is used for
167both selected and unselected items.
168
3e9af289 169
4fabb575
JS
170\membersection{wxTreeCtrl::AppendItem}\label{wxtreectrlappenditem}
171
172\func{wxTreeItemId}{AppendItem}{\param{const wxTreeItemId\& }{parent}, \param{const wxString\&}{ text},
513e0cea 173 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
4fabb575
JS
174
175Appends an item to the end of the branch identified by {\it parent}, return a new item id.
176
ea91314f
VS
177The {\it image} and {\it selImage} parameters are an index within
178the normal image list specifying the image to use for unselected and
179selected items, respectively.
4fabb575
JS
180If {\it image} > -1 and {\it selImage} is -1, the same image is used for
181both selected and unselected items.
182
3e9af289 183
ea91314f
VS
184\membersection{wxTreeCtrl::AssignButtonsImageList}\label{wxtreectrlassignbuttonsimagelist}
185
186\func{void}{AssignButtonsImageList}{\param{wxImageList*}{ imageList}}
187
188Sets the buttons image list. The button images assigned with this method will
189be automatically deleted by wxTreeCtrl as appropriate
190(i.e. it takes ownership of the list).
191
192Setting or assigning the button image list enables the display of image buttons.
193Once enabled, the only way to disable the display of button images is to set
513e0cea 194the button image list to {\tt NULL}.
ea91314f
VS
195
196This function is only available in the generic version.
197
198See also \helpref{SetButtonsImageList}{wxtreectrlsetbuttonsimagelist}.
199
3e9af289 200
46cd520d
VS
201\membersection{wxTreeCtrl::AssignImageList}\label{wxtreectrlassignimagelist}
202
203\func{void}{AssignImageList}{\param{wxImageList*}{ imageList}}
204
205Sets the normal image list. Image list assigned with this method will
ea91314f
VS
206be automatically deleted by wxTreeCtrl as appropriate
207(i.e. it takes ownership of the list).
46cd520d
VS
208
209See also \helpref{SetImageList}{wxtreectrlsetimagelist}.
210
3e9af289 211
46cd520d
VS
212\membersection{wxTreeCtrl::AssignStateImageList}\label{wxtreectrlassignstateimagelist}
213
214\func{void}{AssignStateImageList}{\param{wxImageList*}{ imageList}}
215
216Sets the state image list. Image list assigned with this method will
ea91314f
VS
217be automatically deleted by wxTreeCtrl as appropriate
218(i.e. it takes ownership of the list).
46cd520d
VS
219
220See also \helpref{SetStateImageList}{wxtreectrlsetstateimagelist}.
221
222
3e9af289 223
4fabb575
JS
224\membersection{wxTreeCtrl::Collapse}\label{wxtreectrlcollapse}
225
226\func{void}{Collapse}{\param{const wxTreeItemId\&}{ item}}
227
228Collapses the given item.
229
3e9af289 230
4fabb575
JS
231\membersection{wxTreeCtrl::CollapseAndReset}\label{wxtreectrlcollapseandreset}
232
233\func{void}{CollapseAndReset}{\param{const wxTreeItemId\&}{ item}}
234
235Collapses the given item and removes all children.
236
3e9af289 237
a660d684
KB
238\membersection{wxTreeCtrl::Create}\label{wxtreectrlcreate}
239
eaaa6a06 240\func{bool}{wxTreeCtrl}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 241\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 242\param{long}{ style = wxTR\_HAS\_BUTTONS}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
243
244Creates the tree control. See \helpref{wxTreeCtrl::wxTreeCtrl}{wxtreectrlconstr} for further details.
245
3e9af289 246
4fabb575 247\membersection{wxTreeCtrl::Delete}\label{wxtreectrldelete}
a660d684 248
4fabb575 249\func{void}{Delete}{\param{const wxTreeItemId\&}{ item}}
a660d684 250
2b5f62a0
VZ
251Deletes the specified item. A {\tt EVT\_TREE\_DELETE\_ITEM} event will be
252generated.
a660d684 253
2f930c85
JS
254This function may cause a subsequent call to GetNextChild to fail.
255
3e9af289 256
4fabb575 257\membersection{wxTreeCtrl::DeleteAllItems}\label{wxtreectrldeleteallitems}
a660d684 258
4fabb575 259\func{void}{DeleteAllItems}{\void}
a660d684 260
64f590ea
VZ
261Deletes all the items in the control. Note that this may not generate
262{\tt EVT\_TREE\_DELETE\_ITEM} events under some Windows versions although
263normally such event is generated for each removed item.
2b5f62a0 264
3e9af289 265
2b5f62a0
VZ
266\membersection{wxTreeCtrl::DeleteChildren}\label{wxtreectrldeletechildren}
267
268\func{void}{DeleteChildren}{\param{const wxTreeItemId\& }{item}}
269
270Deletes all children of the given item (but not the item itself). Note that
271this will {\bf not} generate any events unlike
272\helpref{Delete}{wxtreectrldelete} method.
a660d684 273
2f930c85
JS
274If you have called \helpref{wxTreeCtrl::SetItemHasChildren}{wxtreectrlsetitemhaschildren}, you
275may need to call it again since {\it DeleteChildren} does not automatically
276clear the setting.
277
3e9af289 278
bbcdf8bc 279\membersection{wxTreeCtrl::EditLabel}\label{wxtreectrleditlabel}
a660d684 280
fd128b0c 281\func{void}{EditLabel}{\param{const wxTreeItemId\&}{ item}}
a660d684 282
fd128b0c
RR
283Starts editing the label of the given item. This function generates a
284EVT\_TREE\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
285text control will appear for in-place editing.
a660d684 286
fd128b0c 287If the user changed the label (i.e. s/he does not press ESC or leave
76e1c2de 288the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event
fd128b0c 289will be sent which can be vetoed as well.
bbcdf8bc
JS
290
291\wxheading{See also}
292
f6bcfd97 293\helpref{wxTreeCtrl::EndEditLabel}{wxtreectrlendeditlabel},
86f975a8 294\helpref{wxTreeEvent}{wxtreeevent}
bbcdf8bc 295
3e9af289 296
bbcdf8bc
JS
297\membersection{wxTreeCtrl::EndEditLabel}\label{wxtreectrlendeditlabel}
298
4fabb575 299\func{void}{EndEditLabel}{\param{bool }{cancelEdit}}
bbcdf8bc 300
cc81d32f 301Ends label editing. If {\it cancelEdit} is {\tt true}, the edit will be cancelled.
bbcdf8bc
JS
302
303This function is currently supported under Windows only.
304
305\wxheading{See also}
306
307\helpref{wxTreeCtrl::EditLabel}{wxtreectrleditlabel}
308
3e9af289 309
a660d684
KB
310\membersection{wxTreeCtrl::EnsureVisible}\label{wxtreectrlensurevisible}
311
4fabb575 312\func{void}{EnsureVisible}{\param{const wxTreeItemId\&}{ item}}
a660d684
KB
313
314Scrolls and/or expands items to ensure that the given item is visible.
315
3e9af289 316
4fabb575 317\membersection{wxTreeCtrl::Expand}\label{wxtreectrlexpand}
a660d684 318
4fabb575 319\func{void}{Expand}{\param{const wxTreeItemId\&}{ item}}
a660d684
KB
320
321Expands the given item.
322
3e9af289 323
4fabb575 324\membersection{wxTreeCtrl::GetBoundingRect}\label{wxtreectrlgetitemrect}
a660d684 325
cc81d32f 326\constfunc{bool}{GetBoundingRect}{\param{const wxTreeItemId\&}{ item}, \param{wxRect\& }{rect}, \param{bool }{textOnly = {\tt false}}}
4fabb575 327
cc81d32f 328Retrieves the rectangle bounding the {\it item}. If {\it textOnly} is {\tt true},
ea91314f
VS
329only the rectangle around the item's label will be returned, otherwise the
330item's image is also taken into account.
296ec7d3 331
cc81d32f 332The return value is {\tt true} if the rectangle was successfully retrieved or {\tt false}
296ec7d3
VZ
333if it was not (in this case {\it rect} is not changed) - for example, if the
334item is currently invisible.
a660d684 335
76e1c2de 336\pythonnote{The wxPython version of this method requires only the
c9110876
VS
337{\tt item} and {\tt textOnly} parameters. The return value is either a
338{\tt wxRect} object or {\tt None}.}
76e1c2de 339
f3539882
VZ
340\perlnote{In wxPerl this method only takes the parameters {\tt item} and
341 {\tt textOnly}, and returns a Wx::Rect ( or undef ).}
342
3e9af289 343
ea91314f
VS
344\membersection{wxTreeCtrl::GetButtonsImageList}\label{wxtreectrlgetbuttonsimagelist}
345
346\constfunc{wxImageList*}{GetButtonsImageList}{\void}
347
348Returns the buttons image list (from which application-defined button images are taken).
349
350This function is only available in the generic version.
351
3e9af289 352
4fabb575 353\membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount}
a660d684 354
cc81d32f 355\constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = {\tt true}}}
a660d684 356
cc81d32f 357Returns the number of items in the branch. If {\it recursively} is {\tt true}, returns the total number
4fabb575 358of descendants, otherwise only one level of children is counted.
a660d684 359
3e9af289 360
a660d684
KB
361\membersection{wxTreeCtrl::GetCount}\label{wxtreectrlgetcount}
362
363\constfunc{int}{GetCount}{\void}
364
365Returns the number of items in the control.
366
3e9af289 367
a660d684
KB
368\membersection{wxTreeCtrl::GetEditControl}\label{wxtreectrlgeteditcontrol}
369
513e0cea 370\constfunc{wxTextCtrl *}{GetEditControl}{\void}
a660d684 371
513e0cea
VZ
372Returns the edit control being currently used to edit a label. Returns {\tt NULL}
373if no label is being edited.
374
375{\bf NB:} It is currently only implemented for wxMSW.
a660d684 376
3e9af289 377
4fabb575
JS
378\membersection{wxTreeCtrl::GetFirstChild}\label{wxtreectrlgetfirstchild}
379
2f7b6734 380\constfunc{wxTreeItemId}{GetFirstChild}{\param{const wxTreeItemId\&}{ item}, \param{wxTreeItemIdValue \& }{cookie}}
4fabb575
JS
381
382Returns the first child; call \helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild} for the next child.
383
384For this enumeration function you must pass in a `cookie' parameter
385which is opaque for the application but is necessary for the library
386to make these functions reentrant (i.e. allow more than one
387enumeration on one and the same object simultaneously). The cookie passed to
2b5f62a0 388GetFirstChild and GetNextChild should be the same variable.
4fabb575 389
3980000c 390Returns an invalid tree item (i.e. IsOk() returns {\tt false}) if there are no further children.
4fabb575
JS
391
392\wxheading{See also}
393
2b5f62a0
VZ
394\helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild},
395\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling}
4fabb575 396
f899db6d
RD
397\pythonnote{In wxPython the returned wxTreeItemId and the new cookie
398value are both returned as a tuple containing the two values.}
399
f3539882 400\perlnote{In wxPerl this method only takes the {\tt item} parameter, and
9722642d 401 returns a 2-element list {\tt ( item, cookie )}.}
f3539882 402
3e9af289 403
a660d684
KB
404\membersection{wxTreeCtrl::GetFirstVisibleItem}\label{wxtreectrlgetfirstvisibleitem}
405
4fabb575 406\constfunc{wxTreeItemId}{GetFirstVisibleItem}{\void}
a660d684
KB
407
408Returns the first visible item.
409
3e9af289 410
a660d684
KB
411\membersection{wxTreeCtrl::GetImageList}\label{wxtreectrlgetimagelist}
412
e2b34251 413\constfunc{wxImageList*}{GetImageList}{\void}
a660d684 414
e2b34251 415Returns the normal image list.
a660d684 416
3e9af289 417
a660d684
KB
418\membersection{wxTreeCtrl::GetIndent}\label{wxtreectrlgetindent}
419
420\constfunc{int}{GetIndent}{\void}
421
422Returns the current tree control indentation.
423
3e9af289 424
2b5f62a0
VZ
425\membersection{wxTreeCtrl::GetItemBackgroundColour}\label{wxtreectrlgetitembackgroundcolour}
426
427\constfunc{wxColour}{GetItemBackgroundColour}{\param{const wxTreeItemId\&}{ item}}
428
429Returns the background colour of the item.
430
3e9af289 431
4fabb575 432\membersection{wxTreeCtrl::GetItemData}\label{wxtreectrlgetitemdata}
a660d684 433
4fabb575 434\constfunc{wxTreeItemData*}{GetItemData}{\param{const wxTreeItemId\&}{ item}}
a660d684 435
4fabb575 436Returns the tree item data associated with the item.
a660d684 437
4fabb575 438\wxheading{See also}
a660d684 439
4fabb575 440\helpref{wxTreeItemData}{wxtreeitemdata}
a660d684 441
ecf527c0
JS
442\pythonnote{wxPython provides the following shortcut method:
443
444\indented{2cm}{\begin{twocollist}\itemsep=0pt
c9110876 445\twocolitem{{\bf GetPyData(item)}}{Returns the Python Object
f899db6d
RD
446associated with the wxTreeItemData for the given item Id.}
447\end{twocollist}}
d2c2afc9 448}%
f899db6d 449
f3539882
VZ
450\perlnote{wxPerl provides the following shortcut method:
451\indented{2cm}{
452\begin{twocollist}\itemsep=0pt
453\twocolitem{{\bf GetPlData( item )}}{Returns the Perl data
d2c2afc9
JS
454associated with the Wx::TreeItemData. It is just the same as
455tree->GetItemData(item)->GetData().}
f3539882 456\end{twocollist}}
d2c2afc9 457}%
3e9af289 458
2b5f62a0
VZ
459\membersection{wxTreeCtrl::GetItemFont}\label{wxtreectrlgetitemfont}
460
461\constfunc{wxFont}{GetItemFont}{\param{const wxTreeItemId\&}{ item}}
462
463Returns the font of the item label.
464
3e9af289 465
4fabb575 466\membersection{wxTreeCtrl::GetItemImage}\label{wxtreectrlgetitemimage}
a660d684 467
74b31181 468\constfunc{int}{GetItemImage}{\param{const wxTreeItemId\& }{item},
ecf527c0 469 \param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
74b31181
VZ
470
471Gets the specified item image. The value of {\it which} may be:
ecf527c0 472
74b31181
VZ
473\begin{itemize}\itemsep=0pt
474\item{wxTreeItemIcon\_Normal} to get the normal item image
475\item{wxTreeItemIcon\_Selected} to get the selected item image (i.e. the image
476which is shown when the item is currently selected)
477\item{wxTreeItemIcon\_Expanded} to get the expanded image (this only
478makes sense for items which have children - then this image is shown when the
479item is expanded and the normal image is shown when it is collapsed)
480\item{wxTreeItemIcon\_SelectedExpanded} to get the selected expanded image
481(which is shown when an expanded item is currently selected)
482\end{itemize}
a660d684 483
3e9af289 484
4fabb575 485\membersection{wxTreeCtrl::GetItemText}\label{wxtreectrlgetitemtext}
a660d684 486
4fabb575 487\constfunc{wxString}{GetItemText}{\param{const wxTreeItemId\&}{ item}}
a660d684 488
4fabb575 489Returns the item label.
a660d684 490
3e9af289 491
2b5f62a0
VZ
492\membersection{wxTreeCtrl::GetItemTextColour}\label{wxtreectrlgetitemtextcolour}
493
494\constfunc{wxColour}{GetItemTextColour}{\param{const wxTreeItemId\&}{ item}}
495
496Returns the colour of the item label.
497
3e9af289 498
978f38c2
VZ
499\membersection{wxTreeCtrl::GetLastChild}\label{wxtreectrlgetlastchild}
500
501\constfunc{wxTreeItemId}{GetLastChild}{\param{const wxTreeItemId\&}{ item}}
502
ed93168b 503Returns the last child of the item (or an invalid tree item if this item has no children).
978f38c2
VZ
504
505\wxheading{See also}
506
f6bcfd97 507\helpref{GetFirstChild}{wxtreectrlgetfirstchild},
2b5f62a0 508\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling},
978f38c2
VZ
509\helpref{GetLastChild}{wxtreectrlgetlastchild}
510
3e9af289 511
4fabb575 512\membersection{wxTreeCtrl::GetNextChild}\label{wxtreectrlgetnextchild}
a660d684 513
2f7b6734 514\constfunc{wxTreeItemId}{GetNextChild}{\param{const wxTreeItemId\&}{ item}, \param{wxTreeItemIdValue \& }{cookie}}
a660d684 515
4fabb575 516Returns the next child; call \helpref{wxTreeCtrl::GetFirstChild}{wxtreectrlgetfirstchild} for the first child.
a660d684 517
4fabb575
JS
518For this enumeration function you must pass in a `cookie' parameter
519which is opaque for the application but is necessary for the library
520to make these functions reentrant (i.e. allow more than one
521enumeration on one and the same object simultaneously). The cookie passed to
522GetFirstChild and GetNextChild should be the same.
a660d684 523
ed93168b 524Returns an invalid tree item if there are no further children.
a660d684 525
4fabb575 526\wxheading{See also}
a660d684 527
4fabb575 528\helpref{wxTreeCtrl::GetFirstChild}{wxtreectrlgetfirstchild}
a660d684 529
f899db6d
RD
530\pythonnote{In wxPython the returned wxTreeItemId and the new cookie
531value are both returned as a tuple containing the two values.}
532
f3539882 533\perlnote{In wxPerl this method returns a 2-element list
9722642d 534 {\tt ( item, cookie )}, instead of modifying its parameters.}
f3539882 535
3e9af289 536
4fabb575 537\membersection{wxTreeCtrl::GetNextSibling}\label{wxtreectrlgetnextsibling}
a660d684 538
4fabb575 539\constfunc{wxTreeItemId}{GetNextSibling}{\param{const wxTreeItemId\&}{ item}}
a660d684 540
4fabb575 541Returns the next sibling of the specified item; call \helpref{wxTreeCtrl::GetPrevSibling}{wxtreectrlgetprevsibling} for the previous sibling.
a660d684 542
ed93168b 543Returns an invalid tree item if there are no further siblings.
a660d684 544
4fabb575
JS
545\wxheading{See also}
546
547\helpref{wxTreeCtrl::GetPrevSibling}{wxtreectrlgetprevsibling}
548
3e9af289 549
4fabb575
JS
550\membersection{wxTreeCtrl::GetNextVisible}\label{wxtreectrlgetnextvisible}
551
552\constfunc{wxTreeItemId}{GetNextVisible}{\param{const wxTreeItemId\&}{ item}}
a660d684
KB
553
554Returns the next visible item.
555
3e9af289 556
99006e44
RL
557\membersection{wxTreeCtrl::GetItemParent}\label{wxtreectrlgetitemparent}
558
559\constfunc{wxTreeItemId}{GetItemParent}{\param{const wxTreeItemId\&}{ item}}
560
561Returns the item's parent.
562
3e9af289 563
a660d684
KB
564\membersection{wxTreeCtrl::GetParent}\label{wxtreectrlgetparent}
565
4fabb575 566\constfunc{wxTreeItemId}{GetParent}{\param{const wxTreeItemId\&}{ item}}
a660d684 567
99006e44
RL
568{\bf NOTE:} This function is deprecated and will only work if {\tt WXWIN\_COMPATIBILITY\_2\_2}
569is defined. Use \helpref{wxTreeCtrl::GetItemParent}{wxtreectrlgetitemparent} instead.
570
a660d684
KB
571Returns the item's parent.
572
c9110876 573\pythonnote{This method is named {\tt GetItemParent} to avoid a name
874a1686
RD
574clash with wxWindow::GetParent.}
575
3e9af289 576
4fabb575
JS
577\membersection{wxTreeCtrl::GetPrevSibling}\label{wxtreectrlgetprevsibling}
578
579\constfunc{wxTreeItemId}{GetPrevSibling}{\param{const wxTreeItemId\&}{ item}}
580
581Returns the previous sibling of the specified item; call \helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling} for the next sibling.
582
ed93168b 583Returns an invalid tree item if there are no further children.
4fabb575
JS
584
585\wxheading{See also}
586
587\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling}
588
3e9af289 589
4fabb575
JS
590\membersection{wxTreeCtrl::GetPrevVisible}\label{wxtreectrlgetprevvisible}
591
592\constfunc{wxTreeItemId}{GetPrevVisible}{\param{const wxTreeItemId\&}{ item}}
593
594Returns the previous visible item.
595
3e9af289 596
a660d684
KB
597\membersection{wxTreeCtrl::GetRootItem}\label{wxtreectrlgetrootitem}
598
4fabb575 599\constfunc{wxTreeItemId}{GetRootItem}{\void}
a660d684
KB
600
601Returns the root item for the tree control.
602
3e9af289 603
ed93168b 604\membersection{wxTreeCtrl::GetItemSelectedImage}\label{wxtreectrlgetitemselectedimage}
4fabb575 605
ed93168b 606\constfunc{int}{GetItemSelectedImage}{\param{const wxTreeItemId\& }{item}}
4fabb575 607
f6bcfd97 608Gets the selected item image (this function is obsolete, use
b2cf617c 609{\tt GetItemImage(item, wxTreeItemIcon\_Selected}) instead).
4fabb575 610
3e9af289 611
a660d684
KB
612\membersection{wxTreeCtrl::GetSelection}\label{wxtreectrlgetselection}
613
4fabb575 614\constfunc{wxTreeItemId}{GetSelection}{\void}
a660d684 615
ed93168b 616Returns the selection, or an invalid item if there is no selection.
f6bcfd97 617This function only works with the controls without wxTR\_MULTIPLE style, use
9dfbf520
VZ
618\helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have
619this style.
620
3e9af289 621
9dfbf520
VZ
622\membersection{wxTreeCtrl::GetSelections}\label{wxtreectrlgetselections}
623
624\constfunc{size\_t}{GetSelections}{\param{wxArrayTreeItemIds\& }{selection}}
625
626Fills the array of tree items passed in with the currently selected items. This
627function can be called only if the control has the wxTR\_MULTIPLE style.
628
629Returns the number of selected items.
a660d684 630
76e1c2de 631\pythonnote{The wxPython version of this method accepts no parameters
ecf527c0 632and returns a Python list of {\tt wxTreeItemId}s.}
76e1c2de 633
f3539882
VZ
634\perlnote{In wxPerl this method takes no parameters and returns a list of
635 {\tt Wx::TreeItemId}s.}
636
3e9af289 637
e2b34251
JS
638\membersection{wxTreeCtrl::GetStateImageList}\label{wxtreectrlgetstateimagelist}
639
640\constfunc{wxImageList*}{GetStateImageList}{\void}
641
642Returns the state image list (from which application-defined state images are taken).
643
3e9af289 644
a660d684
KB
645\membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest}
646
aa9fb2be 647\func{wxTreeItemId}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}}
a660d684 648
f6bcfd97
BP
649Calculates which (if any) item is under the given point, returning the tree item
650id at this point plus extra information {\it flags}. {\it flags} is a bitlist of the following:
a660d684
KB
651
652\twocolwidtha{5cm}
653\begin{twocollist}\itemsep=0pt
654\twocolitem{wxTREE\_HITTEST\_ABOVE}{Above the client area.}
655\twocolitem{wxTREE\_HITTEST\_BELOW}{Below the client area.}
656\twocolitem{wxTREE\_HITTEST\_NOWHERE}{In the client area but below the last item.}
657\twocolitem{wxTREE\_HITTEST\_ONITEMBUTTON}{On the button associated with an item.}
658\twocolitem{wxTREE\_HITTEST\_ONITEMICON}{On the bitmap associated with an item.}
659\twocolitem{wxTREE\_HITTEST\_ONITEMINDENT}{In the indentation associated with an item.}
660\twocolitem{wxTREE\_HITTEST\_ONITEMLABEL}{On the label (string) associated with an item.}
661\twocolitem{wxTREE\_HITTEST\_ONITEMRIGHT}{In the area to the right of an item.}
662\twocolitem{wxTREE\_HITTEST\_ONITEMSTATEICON}{On the state icon for a tree view item that is in a user-defined state.}
663\twocolitem{wxTREE\_HITTEST\_TOLEFT}{To the right of the client area.}
664\twocolitem{wxTREE\_HITTEST\_TORIGHT}{To the left of the client area.}
665\end{twocollist}
666
aa9fb2be
RD
667\pythonnote{in wxPython both the wxTreeItemId and the flags are
668returned as a tuple.}
669
f3539882 670\perlnote{In wxPerl this method only takes the {\tt point} parameter
9722642d 671 and returns a 2-element list {\tt ( item, flags )}.}
f3539882 672
3e9af289 673
a660d684
KB
674\membersection{wxTreeCtrl::InsertItem}\label{wxtreectrlinsertitem}
675
4fabb575 676\func{wxTreeItemId}{InsertItem}{\param{const wxTreeItemId\& }{parent}, \param{const wxTreeItemId\& }{previous}, \param{const wxString\&}{ text},
513e0cea 677 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
a660d684 678
f2593d0d 679\func{wxTreeItemId}{InsertItem}{\param{const wxTreeItemId\& }{parent}, \param{size\_t}{ before}, \param{const wxString\&}{ text},
513e0cea 680 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
f2593d0d
RR
681
682Inserts an item after a given one ({\it previous}) or before one identified by its position ({\it before}).
2f930c85 683{\it before} must be less than the number of children.
a660d684 684
ea91314f
VS
685The {\it image} and {\it selImage} parameters are an index within
686the normal image list specifying the image to use for unselected and
687selected items, respectively.
a660d684
KB
688If {\it image} > -1 and {\it selImage} is -1, the same image is used for
689both selected and unselected items.
690
f6bcfd97 691\pythonnote{The second form of this method is called
7af3ca16 692{\tt InsertItemBefore} in wxPython.}
f6bcfd97 693
3e9af289 694
ed93168b
VZ
695\membersection{wxTreeCtrl::IsBold}\label{wxtreectrlisbold}
696
697\constfunc{bool}{IsBold}{\param{const wxTreeItemId\& }{item}}
698
cc81d32f 699Returns {\tt true} if the given item is in bold state.
ed93168b
VZ
700
701See also: \helpref{SetItemBold}{wxtreectrlsetitembold}
702
3e9af289 703
4fabb575
JS
704\membersection{wxTreeCtrl::IsExpanded}\label{wxtreectrlisexpanded}
705
706\constfunc{bool}{IsExpanded}{\param{const wxTreeItemId\&}{ item}}
707
cc81d32f 708Returns {\tt true} if the item is expanded (only makes sense if it has children).
4fabb575 709
3e9af289 710
4fabb575
JS
711\membersection{wxTreeCtrl::IsSelected}\label{wxtreectrlisselected}
712
713\constfunc{bool}{IsSelected}{\param{const wxTreeItemId\&}{ item}}
714
cc81d32f 715Returns {\tt true} if the item is selected.
4fabb575 716
3e9af289 717
4fabb575
JS
718\membersection{wxTreeCtrl::IsVisible}\label{wxtreectrlisvisible}
719
720\constfunc{bool}{IsVisible}{\param{const wxTreeItemId\&}{ item}}
721
cc81d32f 722Returns {\tt true} if the item is visible (it might be outside the view, or not expanded).
4fabb575 723
3e9af289 724
a660d684
KB
725\membersection{wxTreeCtrl::ItemHasChildren}\label{wxtreectrlitemhaschildren}
726
4fabb575 727\constfunc{bool}{ItemHasChildren}{\param{const wxTreeItemId\&}{ item}}
a660d684 728
cc81d32f 729Returns {\tt true} if the item has children.
a660d684 730
3e9af289 731
ed93168b
VZ
732\membersection{wxTreeCtrl::OnCompareItems}\label{wxtreectrloncompareitems}
733
734\func{int}{OnCompareItems}{\param{const wxTreeItemId\& }{item1}, \param{const wxTreeItemId\& }{item2}}
735
736Override this function in the derived class to change the sort order of the
737items in the tree control. The function should return a negative, zero or
738positive value if the first item is less than, equal to or greater than the
739second one.
740
741The base class version compares items alphabetically.
742
743See also: \helpref{SortChildren}{wxtreectrlsortchildren}
744
3e9af289 745
4fabb575
JS
746\membersection{wxTreeCtrl::PrependItem}\label{wxtreectrlprependitem}
747
748\func{wxTreeItemId}{PrependItem}{\param{const wxTreeItemId\& }{parent}, \param{const wxString\&}{ text},
513e0cea 749 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
4fabb575
JS
750
751Appends an item as the first child of {\it parent}, return a new item id.
752
ea91314f
VS
753The {\it image} and {\it selImage} parameters are an index within
754the normal image list specifying the image to use for unselected and
755selected items, respectively.
4fabb575
JS
756If {\it image} > -1 and {\it selImage} is -1, the same image is used for
757both selected and unselected items.
758
3e9af289 759
a660d684
KB
760\membersection{wxTreeCtrl::ScrollTo}\label{wxtreectrlscrollto}
761
4fabb575 762\func{void}{ScrollTo}{\param{const wxTreeItemId\&}{ item}}
a660d684 763
4fabb575 764Scrolls the specified item into view.
a660d684 765
3e9af289 766
a660d684
KB
767\membersection{wxTreeCtrl::SelectItem}\label{wxtreectrlselectitem}
768
3e9af289
VZ
769\func{bool}{SelectItem}{\param{const wxTreeItemId\&}{ item}, \param{bool }{select = \true}}
770
771Selects the given item. In multiple selection controls, can be also used to
772deselect a currently selected item if the value of \arg{select} is false.
a660d684 773
a660d684 774
ea91314f
VS
775\membersection{wxTreeCtrl::SetButtonsImageList}\label{wxtreectrlsetbuttonsimagelist}
776
777\func{void}{SetButtonsImageList}{\param{wxImageList*}{ imageList}}
778
779Sets the buttons image list (from which application-defined button images are taken).
780The button images assigned with this method will
781{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself.
782
783Setting or assigning the button image list enables the display of image buttons.
784Once enabled, the only way to disable the display of button images is to set
513e0cea 785the button image list to {\tt NULL}.
ea91314f
VS
786
787This function is only available in the generic version.
788
789See also \helpref{AssignButtonsImageList}{wxtreectrlassignbuttonsimagelist}.
790
3e9af289 791
a660d684
KB
792\membersection{wxTreeCtrl::SetIndent}\label{wxtreectrlsetindent}
793
794\func{void}{SetIndent}{\param{int }{indent}}
795
796Sets the indentation for the tree control.
797
3e9af289 798
a660d684
KB
799\membersection{wxTreeCtrl::SetImageList}\label{wxtreectrlsetimagelist}
800
e2b34251 801\func{void}{SetImageList}{\param{wxImageList*}{ imageList}}
a660d684 802
46cd520d
VS
803Sets the normal image list. Image list assigned with this method will
804{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself.
805
806See also \helpref{AssignImageList}{wxtreectrlassignimagelist}.
807
a660d684 808
3e9af289 809
9ec64fa7
VZ
810\membersection{wxTreeCtrl::SetItemBackgroundColour}\label{wxtreectrlsetitembackgroundcolour}
811
812\func{void}{SetItemBackgroundColour}{\param{const wxTreeItemId\&}{ item}, \param{const wxColour\& }{col}}
813
ea91314f 814Sets the colour of the item's background.
9ec64fa7 815
3e9af289 816
ed93168b
VZ
817\membersection{wxTreeCtrl::SetItemBold}\label{wxtreectrlsetitembold}
818
cc81d32f 819\func{void}{SetItemBold}{\param{const wxTreeItemId\& }{item}, \param{bool}{ bold = {\tt true}}}
ed93168b 820
cc81d32f 821Makes item appear in bold font if {\it bold} parameter is {\tt true} or resets it to
ed93168b
VZ
822the normal state.
823
824See also: \helpref{IsBold}{wxtreectrlisbold}
825
3e9af289 826
4fabb575 827\membersection{wxTreeCtrl::SetItemData}\label{wxtreectrlsetitemdata}
a660d684 828
4fabb575 829\func{void}{SetItemData}{\param{const wxTreeItemId\&}{ item}, \param{wxTreeItemData* }{data}}
a660d684 830
4fabb575 831Sets the item client data.
a660d684 832
f899db6d 833\pythonnote{wxPython provides the following shortcut method:\par
ecf527c0 834\indented{2cm}{\begin{twocollist}\itemsep=0pt
c9110876 835\twocolitem{{\bf SetPyData(item, obj)}}{Associate the given Python
f899db6d
RD
836Object with the wxTreeItemData for the given item Id.}
837\end{twocollist}}
d2c2afc9 838}%
f899db6d 839
f3539882
VZ
840\perlnote{wxPerl provides the following shortcut method:
841\indented{2cm}{
842\begin{twocollist}\itemsep=0pt
843\twocolitem{{\bf SetPlData( item, data )}}{Sets the Perl data
d2c2afc9
JS
844associated with the Wx::TreeItemData. It is just the same as
845tree->GetItemData(item)->SetData(data).}
f3539882 846\end{twocollist}}
d2c2afc9 847}%
3e9af289 848
bee44427 849\membersection{wxTreeCtrl::SetItemDropHighlight}\label{wxtreectrlsetitemdrophighlight}
18832389
RR
850
851\func{void}{SetItemDropHighlight}{\param{const wxTreeItemId\&}{ item}, \param{bool}{highlight = {\tt true}}}
852
853Gives the item the visual feedback for Drag'n'Drop actions, which is
854useful if something is dragged from the outside onto the tree control
855(as opposed to a DnD operation within the tree control, which already
856is implemented internally).
857
9ec64fa7
VZ
858\membersection{wxTreeCtrl::SetItemFont}\label{wxtreectrlsetitemfont}
859
860\func{void}{SetItemFont}{\param{const wxTreeItemId\&}{ item}, \param{const wxFont\& }{font}}
861
ea91314f 862Sets the item's font. All items in the tree should have the same height to avoid
9ec64fa7
VZ
863text clipping, so the fonts height should be the same for all of them,
864although font attributes may vary.
865
866\wxheading{See also}
867
868\helpref{SetItemBold}{wxtreectrlsetitembold}
869
3e9af289 870
4fabb575 871\membersection{wxTreeCtrl::SetItemHasChildren}\label{wxtreectrlsetitemhaschildren}
a660d684 872
cc81d32f 873\func{void}{SetItemHasChildren}{\param{const wxTreeItemId\&}{ item}, \param{bool }{hasChildren = {\tt true}}}
a660d684 874
4fabb575
JS
875Force appearance of the button next to the item. This is useful to
876allow the user to expand the items which don't have any children now,
877but instead adding them only when needed, thus minimizing memory
878usage and loading time.
a660d684 879
3e9af289 880
a660d684
KB
881\membersection{wxTreeCtrl::SetItemImage}\label{wxtreectrlsetitemimage}
882
74b31181 883\func{void}{SetItemImage}{\param{const wxTreeItemId\&}{ item},
ecf527c0 884 \param{int }{image}, \param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
a660d684 885
f6bcfd97 886Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage}
b2cf617c 887for the description of the {\it which} parameter.
a660d684 888
3e9af289 889
4fabb575 890\membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage}
a660d684 891
4fabb575 892\func{void}{SetItemSelectedImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{selImage}}
a660d684 893
b2cf617c 894Sets the selected item image (this function is obsolete, use {\tt SetItemImage(item, wxTreeItemIcon\_Selected}) instead).
a660d684 895
3e9af289 896
a660d684
KB
897\membersection{wxTreeCtrl::SetItemText}\label{wxtreectrlsetitemtext}
898
4fabb575 899\func{void}{SetItemText}{\param{const wxTreeItemId\&}{ item}, \param{const wxString\& }{text}}
a660d684
KB
900
901Sets the item label.
902
3e9af289 903
9ec64fa7
VZ
904\membersection{wxTreeCtrl::SetItemTextColour}\label{wxtreectrlsetitemtextcolour}
905
906\func{void}{SetItemTextColour}{\param{const wxTreeItemId\&}{ item}, \param{const wxColour\& }{col}}
907
ea91314f 908Sets the colour of the item's text.
9ec64fa7 909
3e9af289 910
e2b34251
JS
911\membersection{wxTreeCtrl::SetStateImageList}\label{wxtreectrlsetstateimagelist}
912
913\func{void}{SetStateImageList}{\param{wxImageList*}{ imageList}}
914
915Sets the state image list (from which application-defined state images are taken).
46cd520d
VS
916Image list assigned with this method will
917{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself.
918
919See also \helpref{AssignStateImageList}{wxtreectrlassignstateimagelist}.
e2b34251 920
d2c2afc9
JS
921\membersection{wxTreeCtrl::SetWindowStyle}\label{wxtreectrlsetwindowstyle}
922
ea91314f
VS
923\func{void}{SetWindowStyle}{\param{long}{styles}}
924
925Sets the mode flags associated with the display of the tree control.
926The new mode takes effect immediately.
927(Generic only; MSW ignores changes.)
928
3e9af289 929
4fabb575 930\membersection{wxTreeCtrl::SortChildren}\label{wxtreectrlsortchildren}
a660d684 931
ed93168b 932\func{void}{SortChildren}{\param{const wxTreeItemId\&}{ item}}
a660d684 933
f6bcfd97 934Sorts the children of the given item using
ed93168b 935\helpref{OnCompareItems}{wxtreectrloncompareitems} method of wxTreeCtrl. You
b2cf617c 936should override that method to change the sort order (the default is ascending
2f930c85 937case-sensitive alphabetical order).
4fabb575
JS
938
939\wxheading{See also}
940
ed93168b 941\helpref{wxTreeItemData}{wxtreeitemdata}, \helpref{OnCompareItems}{wxtreectrloncompareitems}
4fabb575 942
3e9af289 943
4fabb575
JS
944\membersection{wxTreeCtrl::Toggle}\label{wxtreectrltoggle}
945
946\func{void}{Toggle}{\param{const wxTreeItemId\&}{ item}}
947
948Toggles the given item between collapsed and expanded states.
949
3e9af289
VZ
950
951\membersection{wxTreeCtrl::ToggleItemSelection}\label{wxtreectrltoggleitemselection}
952
953\func{void}{ToggleItemSelection}{\param{const wxTreeItemId\&}{ item}}
954
955Toggles the given item between selected and unselected states. For
956multiselection controls only.
957
958
4fabb575
JS
959\membersection{wxTreeCtrl::Unselect}\label{wxtreectrlunselect}
960
961\func{void}{Unselect}{\void}
962
963Removes the selection from the currently selected item (if any).
964
3e9af289 965
9dfbf520
VZ
966\membersection{wxTreeCtrl::UnselectAll}\label{wxtreectrlunselectall}
967
968\func{void}{UnselectAll}{\void}
969
f6bcfd97 970This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect}
9dfbf520
VZ
971if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from
972all items if it does have this style.
973
3e9af289
VZ
974
975\membersection{wxTreeCtrl::UnselectItem}\label{wxtreectrlunselectitem}
976
977\func{void}{UnselectItem}{\param{const wxTreeItemId\& }{item}}
978
979Unselects the given item. This works in multiselection controls only.
980
981