X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b2cf617cb8160a92696f1421675963aa00cb0c2b..5638d705f555274bd8846e9c9193b909fc5b5bea:/docs/latex/wx/treectrl.tex diff --git a/docs/latex/wx/treectrl.tex b/docs/latex/wx/treectrl.tex index a2c0feaf3d..fc720bd220 100644 --- a/docs/latex/wx/treectrl.tex +++ b/docs/latex/wx/treectrl.tex @@ -22,6 +22,10 @@ To intercept events from a tree control, use the event table macros described in \begin{twocollist}\itemsep=0pt \twocolitem{\windowstyle{wxTR\_HAS\_BUTTONS}}{Use this style to show + and - buttons to the left of parent items. Win32 only. } +\twocolitem{\windowstyle{wxTR\_NO\_LINES}}{Use this style to hide vertical lines. +Win32 only. } +\twocolitem{\windowstyle{wxTR\_LINES\_AT\_ROOT}}{Use this style to show lines at the +tree root. 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 @@ -46,10 +50,10 @@ functions that take a \helpref{wxTreeEvent}{wxtreeevent} argument. \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\_ACTIVATED(id, func)}}{The item has been activated, i.e. chosen by double clicking it with mouse or from keyboard} -\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSED(id, func)}}{Parent has been collapsed.} -\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSING(id, func)}}{Parent is being collapsed. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.} -\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDED(id, func)}}{Parent has been 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\_ITEM\_COLLAPSED(id, func)}}{The item has been collapsed.} +\twocolitem{{\bf EVT\_TREE\_ITEM\_COLLAPSING(id, func)}}{The item is being collapsed. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.} +\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDED(id, func)}}{The item has been expanded.} +\twocolitem{{\bf EVT\_TREE\_ITEM\_EXPANDING(id, func)}}{The item 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. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.} \twocolitem{{\bf EVT\_TREE\_KEY\_DOWN(id, func)}}{A key has been pressed.} @@ -60,6 +64,17 @@ functions that take a \helpref{wxTreeEvent}{wxtreeevent} argument. \helpref{wxTreeItemData}{wxtreeitemdata}, \helpref{wxTreeCtrl overview}{wxtreectrloverview}, \helpref{wxListBox}{wxlistbox}, \helpref{wxListCtrl}{wxlistctrl},\rtfsp \helpref{wxImageList}{wximagelist}, \helpref{wxTreeEvent}{wxtreeevent} +\wxheading{Win32 notes} + +wxTreeCtrl class uses the standard common treeview control under Win32 +implemented in the system library {\tt comctl32.dll}. Some versions of this +library are known to have bugs with handling the tree control colours: the +usual symptom is that the expanded items leave black (or otherwise incorrectly +coloured) background behind them, especially for the controls using non +default background colour. The recommended solution is to upgrade the {\tt comctl32.dll} +to a newer version: see +\urlref{http://www.microsoft.com/msdownload/ieplatform/ie/comctrlx86.asp}{http://www.microsoft.com/msdownload/ieplatform/ie/comctrlx86.asp}. + \latexignore{\rtfignore{\wxheading{Members}}} \membersection{wxTreeCtrl::wxTreeCtrl}\label{wxtreectrlconstr} @@ -121,6 +136,25 @@ Appends an item to the end of the branch identified by {\it parent}, return a ne If {\it image} > -1 and {\it selImage} is -1, the same image is used for both selected and unselected items. +\membersection{wxTreeCtrl::AssignImageList}\label{wxtreectrlassignimagelist} + +\func{void}{AssignImageList}{\param{wxImageList*}{ imageList}} + +Sets the normal image list. Image list assigned with this method will +be deleted by wxTreeCtrl's destructor (i.e. it takes ownership of it). + +See also \helpref{SetImageList}{wxtreectrlsetimagelist}. + +\membersection{wxTreeCtrl::AssignStateImageList}\label{wxtreectrlassignstateimagelist} + +\func{void}{AssignStateImageList}{\param{wxImageList*}{ imageList}} + +Sets the state image list. Image list assigned with this method will +be deleted by wxTreeCtrl's destructor (i.e. it takes ownership of it). + +See also \helpref{SetStateImageList}{wxtreectrlsetstateimagelist}. + + \membersection{wxTreeCtrl::Collapse}\label{wxtreectrlcollapse} \func{void}{Collapse}{\param{const wxTreeItemId\&}{ item}} @@ -167,7 +201,7 @@ 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} @@ -210,6 +244,9 @@ item is currently invisible. {\tt item} and {\tt textOnly} parameters. The return value is either a {\tt wxRect} object or {\tt None}.} +\perlnote{In wxPerl this method only takes the parameters {\tt item} and + {\tt textOnly}, and returns a Wx::Rect ( or undef ).} + \membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount} \constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = TRUE}} @@ -250,6 +287,9 @@ Returns an invalid tree item if there are no further children. \pythonnote{In wxPython the returned wxTreeItemId and the new cookie value are both returned as a tuple containing the two values.} +\perlnote{In wxPerl this method only takes the {\tt item} parameter, and + returns a 2-element list ( item, cookie ).} + \membersection{wxTreeCtrl::GetFirstVisibleItem}\label{wxtreectrlgetfirstvisibleitem} \constfunc{wxTreeItemId}{GetFirstVisibleItem}{\void} @@ -286,6 +326,15 @@ associated with the wxTreeItemData for the given item Id.} \end{twocollist}} } +\perlnote{wxPerl provides the following shortcut method: +\indented{2cm}{ +\begin{twocollist}\itemsep=0pt +\twocolitem{{\bf GetPlData( item )}}{Returns the Perl data +associated with the Wx::TreeItemData ( it is just the same as +tree->GetItemData( item )->GetData(); ).} +\end{twocollist}} +} + \membersection{wxTreeCtrl::GetItemImage}\label{wxtreectrlgetitemimage} \constfunc{int}{GetItemImage}{\param{const wxTreeItemId\& }{item}, @@ -318,7 +367,7 @@ Returns the last child of the item (or an invalid tree item if this item has no \wxheading{See also} -\helpref{GetFirstChild}{wxtreectrlgetfirstchild}, +\helpref{GetFirstChild}{wxtreectrlgetfirstchild}, \helpref{GetLastChild}{wxtreectrlgetlastchild} \membersection{wxTreeCtrl::GetNextChild}\label{wxtreectrlgetnextchild} @@ -342,6 +391,9 @@ Returns an invalid tree item if there are no further children. \pythonnote{In wxPython the returned wxTreeItemId and the new cookie value are both returned as a tuple containing the two values.} +\perlnote{In wxPerl this method returns a 2-element list + ( item, cookie ), instead of modifying its parameters.} + \membersection{wxTreeCtrl::GetNextSibling}\label{wxtreectrlgetnextsibling} \constfunc{wxTreeItemId}{GetNextSibling}{\param{const wxTreeItemId\&}{ item}} @@ -397,7 +449,7 @@ Returns the root item for the tree control. \constfunc{int}{GetItemSelectedImage}{\param{const wxTreeItemId\& }{item}} -Gets the selected item image (this function is obsolete, use +Gets the selected item image (this function is obsolete, use {\tt GetItemImage(item, wxTreeItemIcon\_Selected}) instead). \membersection{wxTreeCtrl::GetSelection}\label{wxtreectrlgetselection} @@ -405,7 +457,7 @@ Gets the selected item image (this function is obsolete, use \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 +This function only works with the controls without wxTR\_MULTIPLE style, use \helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have this style. @@ -421,6 +473,9 @@ Returns the number of selected items. \pythonnote{The wxPython version of this method accepts no parameters and returns a Python list of {\tt wxTreeItemId}s.} +\perlnote{In wxPerl this method takes no parameters and returns a list of + {\tt Wx::TreeItemId}s.} + \membersection{wxTreeCtrl::GetStateImageList}\label{wxtreectrlgetstateimagelist} \constfunc{wxImageList*}{GetStateImageList}{\void} @@ -429,10 +484,10 @@ Returns the state image list (from which application-defined state images are ta \membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest} -\func{long}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}} +\func{wxTreeItemId}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}} -Calculates which (if any) item is under the given point, returning extra information -in {\it flags}. {\it flags} is a bitlist of the following: +Calculates which (if any) item is under the given point, returning the tree item +id at this point plus extra information {\it flags}. {\it flags} is a bitlist of the following: \twocolwidtha{5cm} \begin{twocollist}\itemsep=0pt @@ -449,6 +504,12 @@ in {\it flags}. {\it flags} is a bitlist of the following: \twocolitem{wxTREE\_HITTEST\_TORIGHT}{To the left of the client area.} \end{twocollist} +\pythonnote{in wxPython both the wxTreeItemId and the flags are +returned as a tuple.} + +\perlnote{In wxPerl this method only takes the {\tt point} parameter + and returns a 2-element list ( item, flags ).} + \membersection{wxTreeCtrl::InsertItem}\label{wxtreectrlinsertitem} \func{wxTreeItemId}{InsertItem}{\param{const wxTreeItemId\& }{parent}, \param{const wxTreeItemId\& }{previous}, \param{const wxString\&}{ text}, @@ -462,6 +523,9 @@ Inserts an item after a given one ({\it previous}) or before one identified by i If {\it image} > -1 and {\it selImage} is -1, the same image is used for both selected and unselected items. +\pythonnote{The second form of this method is called +\tt{InsertItemBefore} in wxPython.} + \membersection{wxTreeCtrl::IsBold}\label{wxtreectrlisbold} \constfunc{bool}{IsBold}{\param{const wxTreeItemId\& }{item}} @@ -539,7 +603,11 @@ Sets the indentation for the tree control. \func{void}{SetImageList}{\param{wxImageList*}{ imageList}} -Sets the normal image list. +Sets the normal image list. Image list assigned with this method will +{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself. + +See also \helpref{AssignImageList}{wxtreectrlassignimagelist}. + \membersection{wxTreeCtrl::SetItemBackgroundColour}\label{wxtreectrlsetitembackgroundcolour} @@ -569,6 +637,15 @@ Object with the wxTreeItemData for the given item Id.} \end{twocollist}} } +\perlnote{wxPerl provides the following shortcut method: +\indented{2cm}{ +\begin{twocollist}\itemsep=0pt +\twocolitem{{\bf SetPlData( item, data )}}{Sets the Perl data +associated with the Wx::TreeItemData ( it is just the same as +tree->GetItemData( item )->SetData( data ); ).} +\end{twocollist}} +} + \membersection{wxTreeCtrl::SetItemFont}\label{wxtreectrlsetitemfont} \func{void}{SetItemFont}{\param{const wxTreeItemId\&}{ item}, \param{const wxFont\& }{font}} @@ -595,7 +672,7 @@ usage and loading time. \func{void}{SetItemImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{image}, \param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}} -Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage} +Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage} for the description of the {\it which} parameter. \membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage} @@ -621,12 +698,16 @@ Sets the colour of the items text. \func{void}{SetStateImageList}{\param{wxImageList*}{ imageList}} Sets the state image list (from which application-defined state images are taken). +Image list assigned with this method will +{\bf not} be deleted by wxTreeCtrl's destructor, you must delete it yourself. + +See also \helpref{AssignStateImageList}{wxtreectrlassignstateimagelist}. \membersection{wxTreeCtrl::SortChildren}\label{wxtreectrlsortchildren} \func{void}{SortChildren}{\param{const wxTreeItemId\&}{ item}} -Sorts the children of the given item using +Sorts the children of the given item using \helpref{OnCompareItems}{wxtreectrloncompareitems} method of wxTreeCtrl. You should override that method to change the sort order (the default is ascending alphabetical order). @@ -651,7 +732,7 @@ Removes the selection from the currently selected item (if any). \func{void}{UnselectAll}{\void} -This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect} +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. @@ -704,6 +785,10 @@ wxTreeItemData} \end{twocollist}} } +\perlnote{In wxPerl the constructor accepts as parameter an optional scalar, + and stores it as client data. You may retrieve this data by calling + {\bf GetData()}, and set it by callling {\bf SetData( data ).} +} \membersection{wxTreeItemData::\destruct{wxTreeItemData}}