various bugfixes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2000-11-25 23:14:27 +00:00
parent 2f34c1a97e
commit 9354814833
2 changed files with 33 additions and 26 deletions

View File

@@ -315,6 +315,19 @@ void EditorFrame::RefreshTree()
static void RecursivelyExpand(wxTreeCtrl *t, wxTreeItemId item)
{
t->Expand(item);
long cookie;
wxTreeItemId id = t->GetFirstChild(item, cookie);
while (id.IsOk())
{
RecursivelyExpand(t, id);
id = t->GetNextChild(item, cookie);
}
}
bool EditorFrame::SelectNode(wxXmlNode *node, wxTreeItemId *root)
{
if (root == NULL)
@@ -335,14 +348,16 @@ bool EditorFrame::SelectNode(wxXmlNode *node, wxTreeItemId *root)
nd = (dt) ? dt->Node : NULL;
if (nd == node)
{
RecursivelyExpand(m_TreeCtrl, *root);
m_TreeCtrl->SelectItem(item);
m_TreeCtrl->EnsureVisible(item);
return TRUE;
return TRUE;
}
if (m_TreeCtrl->ItemHasChildren(item) && SelectNode(node, &item))
return TRUE;
return TRUE;
item = m_TreeCtrl->GetNextChild(*root, cookie);
}
return FALSE;
}
@@ -391,18 +406,6 @@ void EditorFrame::NotifyChanged(int change_type)
static void RecursivelyExpand(wxTreeCtrl *t, wxTreeItemId item)
{
t->Expand(item);
long cookie;
wxTreeItemId id = t->GetFirstChild(item, cookie);
while (id.IsOk())
{
RecursivelyExpand(t, id);
id = t->GetNextChild(item, cookie);
}
}
void EditorFrame::OnTreeSel(wxTreeEvent& event)
{
XmlTreeData *dt = (XmlTreeData*)(m_TreeCtrl->GetItemData(event.GetItem()));