Prelude.Tree <iCS_EditorObject> BuildTreeNode(iCS_EditorObject nodeRoot, List <bool> filterFlags) { Prelude.Tree <iCS_EditorObject> tree = new Prelude.Tree <iCS_EditorObject>(nodeRoot); myIStorage.ForEachChild(nodeRoot, c => { Prelude.Tree <iCS_EditorObject> newNode = BuildTreeNode(c, filterFlags); if (filterFlags[c.InstanceId]) { tree.AddChild(newNode); } } ); tree.Sort(SortComparaison); return(tree); }