controls/LibraryPanel.py
changeset 680 b693147fb2c3
parent 676 0f10f5091245
child 714 131ea7f237b9
--- a/controls/LibraryPanel.py	Fri May 04 11:12:08 2012 +0200
+++ b/controls/LibraryPanel.py	Fri May 04 19:20:46 2012 +0200
@@ -216,6 +216,9 @@
     
     def SearchInTree(self, value, mode="first"):
         root = self.Tree.GetRootItem()
+        if not root.IsOk():
+            return False
+        
         if mode == "first":
             item, item_cookie = self.Tree.GetFirstChild(root)
             selected = None
@@ -240,7 +243,10 @@
             else:
                 name = self.Tree.GetItemText(item)
                 if name.upper().startswith(value.upper()) and item != selected:
-                    self.Tree.CollapseAllChildren(root)
+                    child, child_cookie = self.Tree.GetFirstChild(root)
+                    while child.IsOk():
+                        self.Tree.CollapseAllChildren(child)
+                        child, child_cookie = self.Tree.GetNextChild(root, child_cookie)
                     self.Tree.SelectItem(item)
                     self.Tree.EnsureVisible(item)
                     return True