]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/utils/wxrcedit/editor.cpp
oops... conflict removed
[wxWidgets.git] / contrib / utils / wxrcedit / editor.cpp
index 9e313c75973747b72c01a51bc804d2f845a488a1..04b5cfde657d693dd85dea7d34c2c99fec48f41e 100644 (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()));