CollapseAndReset() fixed

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
1999-03-24 21:56:08 +00:00
parent 8cd850693f
commit dd3646fd30
3 changed files with 17 additions and 6 deletions

View File

@@ -61,6 +61,7 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(TreeTest_DeleteChildren, MyFrame::OnDeleteChildren)
EVT_MENU(TreeTest_DeleteAll, MyFrame::OnDeleteAll)
EVT_MENU(TreeTest_Recreate, MyFrame::OnRecreate)
EVT_MENU(TreeTest_CollapseAndReset, MyFrame::OnCollapseAndReset)
EVT_MENU(TreeTest_EnsureVisible, MyFrame::OnEnsureVisible)
END_EVENT_TABLE()
@@ -119,6 +120,7 @@ MyFrame::MyFrame(const wxString& title, int x, int y, int w, int h)
tree_menu->Append(TreeTest_Dump, "D&ump tree items");
tree_menu->Append(TreeTest_Recreate, "&Recreate the tree");
tree_menu->Append(TreeTest_CollapseAndReset, "C&ollapse and reset");
tree_menu->AppendSeparator();
tree_menu->Append(TreeTest_Delete, "&Delete this item");
tree_menu->Append(TreeTest_DeleteChildren, "Delete &children");
@@ -265,6 +267,11 @@ void MyFrame::OnRecreate(wxCommandEvent& event)
m_treeCtrl->AddTestItemsToTree(3, 2);
}
void MyFrame::OnCollapseAndReset(wxCommandEvent& event)
{
m_treeCtrl->CollapseAndReset(m_treeCtrl->GetRootItem());
}
void MyFrame::OnEnsureVisible(wxCommandEvent& event)
{
m_treeCtrl->DoEnsureVisible();
@@ -409,11 +416,11 @@ void MyTreeCtrl::OnItemCollapsing(wxTreeEvent& event)
{
wxLogMessage("OnItemCollapsing");
// for testing, prevent the user from collapsing the root item
// for testing, prevent the user from collapsing the first child folder
wxTreeItemId itemId = event.GetItem();
if ( !GetParent(itemId).IsOk() )
if ( GetParent(itemId) == GetRootItem() && !GetPrevSibling(itemId) )
{
wxMessageBox("You can't collapse the root item.");
wxMessageBox("You can't collapse this item.");
event.Veto();
}