added ExpandAllChildrne() (patch 1498343)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2006-07-02 01:22:42 +00:00
parent 5d95cab89d
commit 7093413895
4 changed files with 42 additions and 2 deletions

View File

@@ -152,6 +152,7 @@ All (GUI):
- Added wxTextAttr::Merge() (Marcin Simonides). - Added wxTextAttr::Merge() (Marcin Simonides).
- Added wxTB_NO_TOOLTIPS style (Igor Korot). - Added wxTB_NO_TOOLTIPS style (Igor Korot).
- Added wxGenericDirCtrl::CollapsePath() (Christian Buhtz). - Added wxGenericDirCtrl::CollapsePath() (Christian Buhtz).
- Added wxTreeCtrl::ExpandAllChildren() (Christian Buhtz)
- Fixed 64-bit issue in wxNotebook causing segfaults on Tru64 Unix. - Fixed 64-bit issue in wxNotebook causing segfaults on Tru64 Unix.
- Made it possible to associate context help to a region of a window. - Made it possible to associate context help to a region of a window.
- Added support for tabs in wxRichTextCtrl (Ashish More). - Added support for tabs in wxRichTextCtrl (Ashish More).

View File

@@ -331,6 +331,20 @@ Scrolls and/or expands items to ensure that the given item is visible.
Expands the given item. Expands the given item.
\membersection{wxTreeCtrl::ExpandAll}\label{wxtreectrlexpandall}
\func{void}{Expand}{\void}
Expands all items in the tree.
\membersection{wxTreeCtrl::ExpandAllChildren}\label{wxtreectrlexpandallchildren}
\func{void}{ExpandAllChildren}{\param{const wxTreeItemId\&}{ item}}
Expands the given item and all its children recursively.
\membersection{wxTreeCtrl::GetBoundingRect}\label{wxtreectrlgetitemrect} \membersection{wxTreeCtrl::GetBoundingRect}\label{wxtreectrlgetitemrect}
\constfunc{bool}{GetBoundingRect}{\param{const wxTreeItemId\&}{ item}, \param{wxRect\& }{rect}, \param{bool }{textOnly = {\tt false}}} \constfunc{bool}{GetBoundingRect}{\param{const wxTreeItemId\&}{ item}, \param{wxRect\& }{rect}, \param{bool }{textOnly = {\tt false}}}

View File

@@ -287,6 +287,10 @@ public:
// expand this item // expand this item
virtual void Expand(const wxTreeItemId& item) = 0; virtual void Expand(const wxTreeItemId& item) = 0;
// expand the item and all its childs and thats childs
void ExpandAllChildren(const wxTreeItemId& item);
// expand all items
void ExpandAll();
// collapse the item without removing its children // collapse the item without removing its children
virtual void Collapse(const wxTreeItemId& item) = 0; virtual void Collapse(const wxTreeItemId& item) = 0;
// collapse the item and remove all children // collapse the item and remove all children

View File

@@ -167,5 +167,26 @@ wxSize wxTreeCtrlBase::DoGetBestSize() const
return size; return size;
} }
void wxTreeCtrlBase::ExpandAll()
{
ExpandAllChildren(GetRootItem());
}
void wxTreeCtrlBase::ExpandAllChildren(const wxTreeItemId& item)
{
// expand this item first, this might result in its children being added on
// the fly
Expand(item);
// then (recursively) expand all the children
wxTreeItemIdValue cookie;
for ( wxTreeItemId idCurr = GetFirstChild(item, cookie);
idCurr.IsOk();
idCurr = GetNextChild(item, cookie) )
{
ExpandAllChildren(idCurr);
}
}
#endif // wxUSE_TREECTRL #endif // wxUSE_TREECTRL