]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/treectrl.tex
Added wxDC::GetPartialTextExtents
[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.}
30\twocolitem{\windowstyle{wxTR\_TWIST\_BUTTONS}}{Use this style
31to show Mac-style twister buttons to the left of parent items.
32If both wxTR\_HAS\_BUTTONS and wxTR\_TWIST\_BUTTONS are given,
33twister buttons are generated. Generic only.}
34\twocolitem{\windowstyle{wxTR\_NO\_LINES}}{Use this style
35to hide vertical level connectors.}
c6f4913a
VS
36\twocolitem{\windowstyle{wxTR\_FULL\_ROW\_HIGHLIGHT}}{Use this style to have the background
37colour and the selection highlight extend over the entire horizontal
38row of the tree control window. (This flag is ignored under Windows unless you
63969272 39specify wxTR\_NO\_LINES as well.) }
ea91314f
VS
40\twocolitem{\windowstyle{wxTR\_LINES\_AT\_ROOT}}{Use this style
41to show lines between root nodes.
42Only applicable if wxTR\_HIDE\_ROOT is set and wxTR\_NO\_LINES is not set.}
43\twocolitem{\windowstyle{wxTR\_HIDE\_ROOT}}{Use this style
44to suppress the display of the root node,
45effectively causing the first-level nodes
f6ed3823 46to appear as a series of root nodes.}
ea91314f
VS
47\twocolitem{\windowstyle{wxTR\_ROW\_LINES}}{Use this style
48to draw a contrasting border between displayed rows.}
49\twocolitem{\windowstyle{wxTR\_HAS\_VARIABLE\_ROW\_HEIGHT}}{Use this style
50to cause row heights to be just big enough to fit the content.
51If not set, all rows use the largest row height.
52The default is that this flag is unset.
53Generic only.}
54\twocolitem{\windowstyle{wxTR\_SINGLE}}{For convenience
55to document that only one item may be selected at a time.
56Selecting another item causes the current selection, if any,
57to be deselected. This is the default.}
58\twocolitem{\windowstyle{wxTR\_MULTIPLE}}{Use this style
59to allow a range of items to be selected.
60If a second range is selected, the current range, if any, is deselected.}
61\twocolitem{\windowstyle{wxTR\_EXTENDED}}{Use this style
62to allow disjoint items to be selected. (Only partially implemented; may not work in all cases.)}
63\twocolitem{\windowstyle{wxTR\_DEFAULT\_STYLE}}{The set of flags that are
64closest to the defaults for the native control for a particular toolkit.}
a660d684
KB
65\end{twocollist}
66
67See also \helpref{window styles overview}{windowstyles}.
68
5de76427
JS
69\wxheading{Event handling}
70
71To process input from a tree control, use these event handler macros to direct input to member
72functions that take a \helpref{wxTreeEvent}{wxtreeevent} argument.
73
74\twocolwidtha{7cm}
75\begin{twocollist}\itemsep=0pt
76\twocolitem{{\bf EVT\_TREE\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
77\twocolitem{{\bf EVT\_TREE\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
fd128b0c
RR
78\twocolitem{{\bf EVT\_TREE\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
79\twocolitem{{\bf EVT\_TREE\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
5de76427
JS
80\twocolitem{{\bf EVT\_TREE\_DELETE\_ITEM(id, func)}}{Delete an item.}
81\twocolitem{{\bf EVT\_TREE\_GET\_INFO(id, func)}}{Request information from the application.}
82\twocolitem{{\bf EVT\_TREE\_SET\_INFO(id, func)}}{Information is being supplied.}
9711961c 83\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
84\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSED(id, func)}}{The item has been collapsed.}
85\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSING(id, func)}}{The item is being collapsed. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
86\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDED(id, func)}}{The item has been expanded.}
87\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDING(id, func)}}{The item is being expanded. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
5de76427 88\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGED(id, func)}}{Selection has changed.}
fd128b0c 89\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGING(id, func)}}{Selection is changing. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
5de76427 90\twocolitem{{\bf EVT\_TREE\_KEY\_DOWN(id, func)}}{A key has been pressed.}
156194e1
JS
91\twocolitem{{\bf EVT\_TREE\_ITEM\_GETTOOLTIP(id, func)}}{The opportunity to set the item tooltip
92is being given to the application (call wxTreeEvent::SetToolTip). Windows only.}
c721300b 93\end{twocollist}
5de76427 94
a660d684
KB
95\wxheading{See also}
96
4fabb575 97\helpref{wxTreeItemData}{wxtreeitemdata}, \helpref{wxTreeCtrl overview}{wxtreectrloverview}, \helpref{wxListBox}{wxlistbox}, \helpref{wxListCtrl}{wxlistctrl},\rtfsp
a660d684
KB
98\helpref{wxImageList}{wximagelist}, \helpref{wxTreeEvent}{wxtreeevent}
99
61714c23
VZ
100\wxheading{Win32 notes}
101
102wxTreeCtrl class uses the standard common treeview control under Win32
103implemented in the system library {\tt comctl32.dll}. Some versions of this
104library are known to have bugs with handling the tree control colours: the
105usual symptom is that the expanded items leave black (or otherwise incorrectly
106coloured) background behind them, especially for the controls using non
f6bcfd97
BP
107default background colour. The recommended solution is to upgrade the {\tt comctl32.dll}
108to a newer version: see
61714c23
VZ
109\urlref{http://www.microsoft.com/msdownload/ieplatform/ie/comctrlx86.asp}{http://www.microsoft.com/msdownload/ieplatform/ie/comctrlx86.asp}.
110
a660d684
KB
111\latexignore{\rtfignore{\wxheading{Members}}}
112
3e9af289 113
a660d684
KB
114\membersection{wxTreeCtrl::wxTreeCtrl}\label{wxtreectrlconstr}
115
116\func{}{wxTreeCtrl}{\void}
117
118Default constructor.
119
eaaa6a06 120\func{}{wxTreeCtrl}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 121\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 122\param{long}{ style = wxTR\_HAS\_BUTTONS}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
123
124Constructor, creating and showing a tree control.
125
126\wxheading{Parameters}
127
513e0cea 128\docparam{parent}{Parent window. Must not be {\tt NULL}.}
a660d684
KB
129
130\docparam{id}{Window identifier. A value of -1 indicates a default value.}
131
132\docparam{pos}{Window position.}
133
134\docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized
135appropriately.}
136
137\docparam{style}{Window style. See \helpref{wxTreeCtrl}{wxtreectrl}.}
138
139\docparam{validator}{Window validator.}
140
141\docparam{name}{Window name.}
142
143\wxheading{See also}
144
145\helpref{wxTreeCtrl::Create}{wxtreectrlcreate}, \helpref{wxValidator}{wxvalidator}
146
3e9af289 147
a660d684
KB
148\membersection{wxTreeCtrl::\destruct{wxTreeCtrl}}
149
150\func{void}{\destruct{wxTreeCtrl}}{\void}
151
152Destructor, destroying the list control.
153
3e9af289 154
4fabb575
JS
155\membersection{wxTreeCtrl::AddRoot}\label{wxtreectrladdroot}
156
157\func{wxTreeItemId}{AddRoot}{\param{const wxString\&}{ text},
513e0cea 158 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
4fabb575
JS
159
160Adds the root node to the tree, returning the new item.
161
ea91314f
VS
162The {\it image} and {\it selImage} parameters are an index within
163the normal image list specifying the image to use for unselected and
164selected items, respectively.
4fabb575
JS
165If {\it image} > -1 and {\it selImage} is -1, the same image is used for
166both selected and unselected items.
167
3e9af289 168
4fabb575
JS
169\membersection{wxTreeCtrl::AppendItem}\label{wxtreectrlappenditem}
170
171\func{wxTreeItemId}{AppendItem}{\param{const wxTreeItemId\& }{parent}, \param{const wxString\&}{ text},
513e0cea 172 \param{int}{ image = -1}, \param{int}{ selImage = -1}, \param{wxTreeItemData*}{ data = {\tt NULL}}}
4fabb575
JS
173
174Appends an item to the end of the branch identified by {\it parent}, return a new item id.
175
ea91314f
VS
176The {\it image} and {\it selImage} parameters are an index within
177the normal image list specifying the image to use for unselected and
178selected items, respectively.
4fabb575
JS
179If {\it image} > -1 and {\it selImage} is -1, the same image is used for
180both selected and unselected items.
181
3e9af289 182
ea91314f
VS
183\membersection{wxTreeCtrl::AssignButtonsImageList}\label{wxtreectrlassignbuttonsimagelist}
184
185\func{void}{AssignButtonsImageList}{\param{wxImageList*}{ imageList}}
186
187Sets the buttons image list. The button images assigned with this method will
188be automatically deleted by wxTreeCtrl as appropriate
189(i.e. it takes ownership of the list).
190
191Setting or assigning the button image list enables the display of image buttons.
192Once enabled, the only way to disable the display of button images is to set
513e0cea 193the button image list to {\tt NULL}.
ea91314f
VS
194
195This function is only available in the generic version.
196
197See also \helpref{SetButtonsImageList}{wxtreectrlsetbuttonsimagelist}.
198
3e9af289 199
46cd520d
VS
200\membersection{wxTreeCtrl::AssignImageList}\label{wxtreectrlassignimagelist}
201
202\func{void}{AssignImageList}{\param{wxImageList*}{ imageList}}
203
204Sets the normal image list. Image list assigned with this method will
ea91314f
VS
205be automatically deleted by wxTreeCtrl as appropriate
206(i.e. it takes ownership of the list).
46cd520d
VS
207
208See also \helpref{SetImageList}{wxtreectrlsetimagelist}.
209
3e9af289 210
46cd520d
VS
211\membersection{wxTreeCtrl::AssignStateImageList}\label{wxtreectrlassignstateimagelist}
212
213\func{void}{AssignStateImageList}{\param{wxImageList*}{ imageList}}
214
215Sets the state image list. Image list assigned with this method will
ea91314f
VS
216be automatically deleted by wxTreeCtrl as appropriate
217(i.e. it takes ownership of the list).
46cd520d
VS
218
219See also \helpref{SetStateImageList}{wxtreectrlsetstateimagelist}.
220
221
3e9af289 222
4fabb575
JS
223\membersection{wxTreeCtrl::Collapse}\label{wxtreectrlcollapse}
224
225\func{void}{Collapse}{\param{const wxTreeItemId\&}{ item}}
226
227Collapses the given item.
228
3e9af289 229
4fabb575
JS
230\membersection{wxTreeCtrl::CollapseAndReset}\label{wxtreectrlcollapseandreset}
231
232\func{void}{CollapseAndReset}{\param{const wxTreeItemId\&}{ item}}
233
234Collapses the given item and removes all children.
235
3e9af289 236
a660d684
KB
237\membersection{wxTreeCtrl::Create}\label{wxtreectrlcreate}
238
eaaa6a06 239\func{bool}{wxTreeCtrl}{\param{wxWindow*}{ parent}, \param{wxWindowID}{ id},\rtfsp
a660d684 240\param{const wxPoint\&}{ pos = wxDefaultPosition}, \param{const wxSize\&}{ size = wxDefaultSize},\rtfsp
eaaa6a06 241\param{long}{ style = wxTR\_HAS\_BUTTONS}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = ``listCtrl"}}
a660d684
KB
242
243Creates the tree control. See \helpref{wxTreeCtrl::wxTreeCtrl}{wxtreectrlconstr} for further details.
244
3e9af289 245
4fabb575 246\membersection{wxTreeCtrl::Delete}\label{wxtreectrldelete}
a660d684 247
4fabb575 248\func{void}{Delete}{\param{const wxTreeItemId\&}{ item}}
a660d684 249
2b5f62a0
VZ
250Deletes the specified item. A {\tt EVT\_TREE\_DELETE\_ITEM} event will be
251generated.
a660d684 252
2f930c85
JS
253This function may cause a subsequent call to GetNextChild to fail.
254
3e9af289 255
4fabb575 256\membersection{wxTreeCtrl::DeleteAllItems}\label{wxtreectrldeleteallitems}
a660d684 257
4fabb575 258\func{void}{DeleteAllItems}{\void}
a660d684 259
64f590ea
VZ
260Deletes all the items in the control. Note that this may not generate
261{\tt EVT\_TREE\_DELETE\_ITEM} events under some Windows versions although
262normally such event is generated for each removed item.
2b5f62a0 263
3e9af289 264
2b5f62a0
VZ
265\membersection{wxTreeCtrl::DeleteChildren}\label{wxtreectrldeletechildren}
266
267\func{void}{DeleteChildren}{\param{const wxTreeItemId\& }{item}}
268
269Deletes all children of the given item (but not the item itself). Note that
270this will {\bf not} generate any events unlike
271\helpref{Delete}{wxtreectrldelete} method.
a660d684 272
2f930c85
JS
273If you have called \helpref{wxTreeCtrl::SetItemHasChildren}{wxtreectrlsetitemhaschildren}, you
274may need to call it again since {\it DeleteChildren} does not automatically
275clear the setting.
276
3e9af289 277
bbcdf8bc 278\membersection{wxTreeCtrl::EditLabel}\label{wxtreectrleditlabel}
a660d684 279
fd128b0c 280\func{void}{EditLabel}{\param{const wxTreeItemId\&}{ item}}
a660d684 281
fd128b0c
RR
282Starts editing the label of the given item. This function generates a
283EVT\_TREE\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
284text control will appear for in-place editing.
a660d684 285
fd128b0c 286If the user changed the label (i.e. s/he does not press ESC or leave
76e1c2de 287the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event
fd128b0c 288will be sent which can be vetoed as well.
bbcdf8bc
JS
289
290\wxheading{See also}
291
f6bcfd97 292\helpref{wxTreeCtrl::EndEditLabel}{wxtreectrlendeditlabel},
86f975a8 293\helpref{wxTreeEvent}{wxtreeevent}
bbcdf8bc 294
3e9af289 295
bbcdf8bc
JS
296\membersection{wxTreeCtrl::EndEditLabel}\label{wxtreectrlendeditlabel}
297
4fabb575 298\func{void}{EndEditLabel}{\param{bool }{cancelEdit}}
bbcdf8bc 299
cc81d32f 300Ends label editing. If {\it cancelEdit} is {\tt true}, the edit will be cancelled.
bbcdf8bc
JS
301
302This function is currently supported under Windows only.
303
304\wxheading{See also}
305
306\helpref{wxTreeCtrl::EditLabel}{wxtreectrleditlabel}
307
3e9af289 308
a660d684
KB
309\membersection{wxTreeCtrl::EnsureVisible}\label{wxtreectrlensurevisible}
310
4fabb575 311\func{void}{EnsureVisible}{\param{const wxTreeItemId\&}{ item}}
a660d684
KB
312
313Scrolls and/or expands items to ensure that the given item is visible.
314
3e9af289 315
4fabb575 316\membersection{wxTreeCtrl::Expand}\label{wxtreectrlexpand}
a660d684 317
4fabb575 318\func{void}{Expand}{\param{const wxTreeItemId\&}{ item}}
a660d684
KB
319
320Expands the given item.
321
3e9af289 322
4fabb575 323\membersection{wxTreeCtrl::GetBoundingRect}\label{wxtreectrlgetitemrect}
a660d684 324
cc81d32f 325\constfunc{bool}{GetBoundingRect}{\param{const wxTreeItemId\&}{ item}, \param{wxRect\& }{rect}, \param{bool }{textOnly = {\tt false}}}
4fabb575 326
cc81d32f 327Retrieves the rectangle bounding the {\it item}. If {\it textOnly} is {\tt true},
ea91314f
VS
328only the rectangle around the item's label will be returned, otherwise the
329item's image is also taken into account.
296ec7d3 330
cc81d32f 331The return value is {\tt true} if the rectangle was successfully retrieved or {\tt false}
296ec7d3
VZ
332if it was not (in this case {\it rect} is not changed) - for example, if the
333item is currently invisible.
a660d684 334
76e1c2de 335\pythonnote{The wxPython version of this method requires only the
c9110876
VS
336{\tt item} and {\tt textOnly} parameters. The return value is either a
337{\tt wxRect} object or {\tt None}.}
76e1c2de 338
f3539882
VZ
339\perlnote{In wxPerl this method only takes the parameters {\tt item} and
340 {\tt textOnly}, and returns a Wx::Rect ( or undef ).}
341
3e9af289 342
ea91314f
VS
343\membersection{wxTreeCtrl::GetButtonsImageList}\label{wxtreectrlgetbuttonsimagelist}
344
345\constfunc{wxImageList*}{GetButtonsImageList}{\void}
346
347Returns the buttons image list (from which application-defined button images are taken).
348
349This function is only available in the generic version.
350
3e9af289 351
4fabb575 352\membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount}
a660d684 353
cc81d32f 354\constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = {\tt true}}}
a660d684 355
cc81d32f 356Returns the number of items in the branch. If {\it recursively} is {\tt true}, returns the total number
4fabb575 357of descendants, otherwise only one level of children is counted.
a660d684 358
3e9af289 359
a660d684
KB
360\membersection{wxTreeCtrl::GetCount}\label{wxtreectrlgetcount}
361
362\constfunc{int}{GetCount}{\void}
363
364Returns the number of items in the control.
365
3e9af289 366
a660d684
KB
367\membersection{wxTreeCtrl::GetEditControl}\label{wxtreectrlgeteditcontrol}
368
513e0cea 369\constfunc{wxTextCtrl *}{GetEditControl}{\void}
a660d684 370
513e0cea
VZ
371Returns the edit control being currently used to edit a label. Returns {\tt NULL}
372if no label is being edited.
373
374{\bf NB:} It is currently only implemented for wxMSW.
a660d684 375
3e9af289 376
4fabb575
JS
377\membersection{wxTreeCtrl::GetFirstChild}\label{wxtreectrlgetfirstchild}
378
2f7b6734 379\constfunc{wxTreeItemId}{GetFirstChild}{\param{const wxTreeItemId\&}{ item}, \param{wxTreeItemIdValue \& }{cookie}}
4fabb575
JS
380
381Returns the first child; call \helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild} for the next child.
382
383For this enumeration function you must pass in a `cookie' parameter
384which is opaque for the application but is necessary for the library
385to make these functions reentrant (i.e. allow more than one
386enumeration on one and the same object simultaneously). The cookie passed to
2b5f62a0 387GetFirstChild and GetNextChild should be the same variable.
4fabb575 388
ed93168b 389Returns an invalid tree item if there are no further children.
4fabb575
JS
390
391\wxheading{See also}
392
2b5f62a0
VZ
393\helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild},
394\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling}
4fabb575 395
f899db6d
RD
396\pythonnote{In wxPython the returned wxTreeItemId and the new cookie
397value are both returned as a tuple containing the two values.}
398
f3539882 399\perlnote{In wxPerl this method only takes the {\tt item} parameter, and
9722642d 400 returns a 2-element list {\tt ( item, cookie )}.}
f3539882 401
3e9af289 402
a660d684
KB
403\membersection{wxTreeCtrl::GetFirstVisibleItem}\label{wxtreectrlgetfirstvisibleitem}
404
4fabb575 405\constfunc{wxTreeItemId}{GetFirstVisibleItem}{\void}
a660d684
KB
406
407Returns the first visible item.
408
3e9af289 409
a660d684
KB
410\membersection{wxTreeCtrl::GetImageList}\label{wxtreectrlgetimagelist}
411
e2b34251 412\constfunc{wxImageList*}{GetImageList}{\void}
a660d684 413
e2b34251 414Returns the normal image list.
a660d684 415
3e9af289 416
a660d684
KB
417\membersection{wxTreeCtrl::GetIndent}\label{wxtreectrlgetindent}
418
419\constfunc{int}{GetIndent}{\void}
420
421Returns the current tree control indentation.
422
3e9af289 423
2b5f62a0
VZ
424\membersection{wxTreeCtrl::GetItemBackgroundColour}\label{wxtreectrlgetitembackgroundcolour}
425
426\constfunc{wxColour}{GetItemBackgroundColour}{\param{const wxTreeItemId\&}{ item}}
427
428Returns the background colour of the item.
429
3e9af289 430
4fabb575 431\membersection{wxTreeCtrl::GetItemData}\label{wxtreectrlgetitemdata}
a660d684 432
4fabb575 433\constfunc{wxTreeItemData*}{GetItemData}{\param{const wxTreeItemId\&}{ item}}
a660d684 434
4fabb575 435Returns the tree item data associated with the item.
a660d684 436
4fabb575 437\wxheading{See also}
a660d684 438
4fabb575 439\helpref{wxTreeItemData}{wxtreeitemdata}
a660d684 440
ecf527c0
JS
441\pythonnote{wxPython provides the following shortcut method:
442
443\indented{2cm}{\begin{twocollist}\itemsep=0pt
c9110876 444\twocolitem{{\bf GetPyData(item)}}{Returns the Python Object
f899db6d
RD
445associated with the wxTreeItemData for the given item Id.}
446\end{twocollist}}
447}
448
f3539882
VZ
449\perlnote{wxPerl provides the following shortcut method:
450\indented{2cm}{
451\begin{twocollist}\itemsep=0pt
452\twocolitem{{\bf GetPlData( item )}}{Returns the Perl data
453associated with the Wx::TreeItemData ( it is just the same as
454tree->GetItemData( item )->GetData(); ).}
455\end{twocollist}}
456}
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}}
838}
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
844associated with the Wx::TreeItemData ( it is just the same as
845tree->GetItemData( item )->SetData( data ); ).}
846\end{twocollist}}
847}
848
3e9af289 849
9ec64fa7
VZ
850\membersection{wxTreeCtrl::SetItemFont}\label{wxtreectrlsetitemfont}
851
852\func{void}{SetItemFont}{\param{const wxTreeItemId\&}{ item}, \param{const wxFont\& }{font}}
853
ea91314f 854Sets the item's font. All items in the tree should have the same height to avoid
9ec64fa7
VZ
855text clipping, so the fonts height should be the same for all of them,
856although font attributes may vary.
857
858\wxheading{See also}
859
860\helpref{SetItemBold}{wxtreectrlsetitembold}
861
3e9af289 862
4fabb575 863\membersection{wxTreeCtrl::SetItemHasChildren}\label{wxtreectrlsetitemhaschildren}
a660d684 864
cc81d32f 865\func{void}{SetItemHasChildren}{\param{const wxTreeItemId\&}{ item}, \param{bool }{hasChildren = {\tt true}}}
a660d684 866
4fabb575
JS
867Force appearance of the button next to the item. This is useful to
868allow the user to expand the items which don't have any children now,
869but instead adding them only when needed, thus minimizing memory
870usage and loading time.
a660d684 871
3e9af289 872
a660d684
KB
873\membersection{wxTreeCtrl::SetItemImage}\label{wxtreectrlsetitemimage}
874
74b31181 875\func{void}{SetItemImage}{\param{const wxTreeItemId\&}{ item},
ecf527c0 876 \param{int }{image}, \param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
a660d684 877
f6bcfd97 878Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage}
b2cf617c 879for the description of the {\it which} parameter.
a660d684 880
3e9af289 881
4fabb575 882\membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage}
a660d684 883
4fabb575 884\func{void}{SetItemSelectedImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{selImage}}
a660d684 885
b2cf617c 886Sets the selected item image (this function is obsolete, use {\tt SetItemImage(item, wxTreeItemIcon\_Selected}) instead).
a660d684 887
3e9af289 888
a660d684
KB
889\membersection{wxTreeCtrl::SetItemText}\label{wxtreectrlsetitemtext}
890
4fabb575 891\func{void}{SetItemText}{\param{const wxTreeItemId\&}{ item}, \param{const wxString\& }{text}}
a660d684
KB
892
893Sets the item label.
894
3e9af289 895
9ec64fa7
VZ
896\membersection{wxTreeCtrl::SetItemTextColour}\label{wxtreectrlsetitemtextcolour}
897
898\func{void}{SetItemTextColour}{\param{const wxTreeItemId\&}{ item}, \param{const wxColour\& }{col}}
899
ea91314f 900Sets the colour of the item's text.
9ec64fa7 901
3e9af289 902
e2b34251
JS
903\membersection{wxTreeCtrl::SetStateImageList}\label{wxtreectrlsetstateimagelist}
904
905\func{void}{SetStateImageList}{\param{wxImageList*}{ imageList}}
906
907Sets the state image list (from which application-defined state images are taken).
46cd520d
VS
908Image list assigned with this method will
909{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself.
910
911See also \helpref{AssignStateImageList}{wxtreectrlassignstateimagelist}.
e2b34251 912
ea91314f
VS
913\func{void}{SetWindowStyle}{\param{long}{styles}}
914
915Sets the mode flags associated with the display of the tree control.
916The new mode takes effect immediately.
917(Generic only; MSW ignores changes.)
918
3e9af289 919
4fabb575 920\membersection{wxTreeCtrl::SortChildren}\label{wxtreectrlsortchildren}
a660d684 921
ed93168b 922\func{void}{SortChildren}{\param{const wxTreeItemId\&}{ item}}
a660d684 923
f6bcfd97 924Sorts the children of the given item using
ed93168b 925\helpref{OnCompareItems}{wxtreectrloncompareitems} method of wxTreeCtrl. You
b2cf617c 926should override that method to change the sort order (the default is ascending
2f930c85 927case-sensitive alphabetical order).
4fabb575
JS
928
929\wxheading{See also}
930
ed93168b 931\helpref{wxTreeItemData}{wxtreeitemdata}, \helpref{OnCompareItems}{wxtreectrloncompareitems}
4fabb575 932
3e9af289 933
4fabb575
JS
934\membersection{wxTreeCtrl::Toggle}\label{wxtreectrltoggle}
935
936\func{void}{Toggle}{\param{const wxTreeItemId\&}{ item}}
937
938Toggles the given item between collapsed and expanded states.
939
3e9af289
VZ
940
941\membersection{wxTreeCtrl::ToggleItemSelection}\label{wxtreectrltoggleitemselection}
942
943\func{void}{ToggleItemSelection}{\param{const wxTreeItemId\&}{ item}}
944
945Toggles the given item between selected and unselected states. For
946multiselection controls only.
947
948
4fabb575
JS
949\membersection{wxTreeCtrl::Unselect}\label{wxtreectrlunselect}
950
951\func{void}{Unselect}{\void}
952
953Removes the selection from the currently selected item (if any).
954
3e9af289 955
9dfbf520
VZ
956\membersection{wxTreeCtrl::UnselectAll}\label{wxtreectrlunselectall}
957
958\func{void}{UnselectAll}{\void}
959
f6bcfd97 960This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect}
9dfbf520
VZ
961if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from
962all items if it does have this style.
963
3e9af289
VZ
964
965\membersection{wxTreeCtrl::UnselectItem}\label{wxtreectrlunselectitem}
966
967\func{void}{UnselectItem}{\param{const wxTreeItemId\& }{item}}
968
969Unselects the given item. This works in multiselection controls only.
970
971