]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/treectrl.tex
fixed unsolved link
[wxWidgets.git] / docs / latex / wx / treectrl.tex
index ceb31a10d8615b3b2923f85c7b25fb6a8d50b206..47f182a80058a510be7745d1042926744c3bc512 100644 (file)
@@ -21,9 +21,12 @@ To intercept events from a tree control, use the event table macros described in
 \twocolwidtha{5cm}
 \begin{twocollist}\itemsep=0pt
 \twocolitem{\windowstyle{wxTR\_HAS\_BUTTONS}}{Use this style to show + and - buttons to the
-left of parent items.}
+left of parent items. Win32 only. }
 \twocolitem{\windowstyle{wxTR\_EDIT\_LABELS}}{Use this style if you wish the user to be
 able to edit labels in the tree control.}
+\twocolitem{\windowstyle{wxTR\_MULTIPLE}}{Use this style to allow the user to
+select more than one item in the control - by default, only one item may be
+selected.}
 \end{twocollist}
 
 See also \helpref{window styles overview}{windowstyles}.
@@ -37,15 +40,15 @@ functions that take a \helpref{wxTreeEvent}{wxtreeevent} argument.
 \begin{twocollist}\itemsep=0pt
 \twocolitem{{\bf EVT\_TREE\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
 \twocolitem{{\bf EVT\_TREE\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
-\twocolitem{{\bf EVT\_TREE\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label.}
-\twocolitem{{\bf EVT\_TREE\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label.}
+\twocolitem{{\bf EVT\_TREE\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
+\twocolitem{{\bf EVT\_TREE\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
 \twocolitem{{\bf EVT\_TREE\_DELETE\_ITEM(id, func)}}{Delete an item.}
 \twocolitem{{\bf EVT\_TREE\_GET\_INFO(id, func)}}{Request information from the application.}
 \twocolitem{{\bf EVT\_TREE\_SET\_INFO(id, func)}}{Information is being supplied.}
 \twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDED(id, func)}}{Parent has been expanded.}
-\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDING(id, func)}}{Parent is being expanded.}
+\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDING(id, func)}}{Parent is being expanded. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
 \twocolitem{{\bf EVT\_TREE\_SEL\_CHANGED(id, func)}}{Selection has changed.}
-\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGING(id, func)}}{Selection is changing.}
+\twocolitem{{\bf EVT\_TREE\_SEL\_CHANGING(id, func)}}{Selection is changing. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
 \twocolitem{{\bf EVT\_TREE\_KEY\_DOWN(id, func)}}{A key has been pressed.}
 \end{twocollist}%
 
@@ -149,20 +152,20 @@ Deletes all the items in the control.
 
 \membersection{wxTreeCtrl::EditLabel}\label{wxtreectrleditlabel}
 
-\func{wxTextCtrl*}{EditLabel}{\param{const wxTreeItemId\&}{ item}, \param{wxClassInfo*}{ textControlClass = CLASSINFO(wxTextCtrl)}}
+\func{void}{EditLabel}{\param{const wxTreeItemId\&}{ item}}
 
-Starts editing the label of the given item, returning the text control that the tree control uses for editing.
+Starts editing the label of the given item. This function generates a
+EVT\_TREE\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
+text control will appear for in-place editing.
 
-Pass another {\it textControlClass} if a derived class is required. It usually will be, in order for
-the application to detect when editing has finished and to call \helpref{wxTreeCtrl::EndEditLabel}{wxtreectrlendeditlabel}.
-
-Do not delete the text control yourself.
-
-This function is currently supported under Windows only.
+If the user changed the label (i.e. s/he does not press ESC or leave
+the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event 
+will be sent which can be vetoed as well.
 
 \wxheading{See also}
 
-\helpref{wxTreeCtrl::EndEditLabel}{wxtreectrlendeditlabel}
+\helpref{wxTreeCtrl::EndEditLabel}{wxtreectrlendeditlabel},
+\helpref{wxTreeEvent}{wxtreeevent}
 
 \membersection{wxTreeCtrl::EndEditLabel}\label{wxtreectrlendeditlabel}
 
@@ -385,6 +388,18 @@ Gets the selected item image.
 \constfunc{wxTreeItemId}{GetSelection}{\void}
 
 Returns the selection, or an invalid item if there is no selection.
+This function only works with the controls without wxTR\_MULTIPLE style, use 
+\helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have
+this style.
+
+\membersection{wxTreeCtrl::GetSelections}\label{wxtreectrlgetselections}
+
+\constfunc{size\_t}{GetSelections}{\param{wxArrayTreeItemIds\& }{selection}}
+
+Fills the array of tree items passed in with the currently selected items. This
+function can be called only if the control has the wxTR\_MULTIPLE style.
+
+Returns the number of selected items.
 
 \membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest}
 
@@ -572,6 +587,14 @@ Toggles the given item between collapsed and expanded states.
 
 Removes the selection from the currently selected item (if any).
 
+\membersection{wxTreeCtrl::UnselectAll}\label{wxtreectrlunselectall}
+
+\func{void}{UnselectAll}{\void}
+
+This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect} 
+if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from
+all items if it does have this style.
+
 \section{\class{wxTreeItemData}}\label{wxtreeitemdata}
 
 wxTreeItemData is some (arbitrary) user class associated with some item. The