Treeview can now highlight last opened subprojects
diff --git a/common/treeviewchoice.py b/common/treeviewchoice.py
index b709eba..4bf76ea 100755
--- a/common/treeviewchoice.py
+++ b/common/treeviewchoice.py
@@ -187,10 +187,19 @@
if self.initSelected and self.treeView.exists(self.initSelected):
if 'subcells' in self.initSelected:
- parent_path = os.path.split(os.path.split(self.initSelected)[0])[0]
- self.setselect(parent_path)
+ # ancestor projects must be expanded before setting current
+ item_path = self.initSelected
+ ancestors = []
+ while 'subcells' in item_path:
+ item_path = os.path.split(os.path.split(item_path)[0])[0]
+ ancestors.insert(0,item_path)
+ for a in ancestors:
+ self.treeView.item(a, open=True)
+ self.setselect(self.initSelected)
elif self.initSelected[0]=='.':
- self.setselect(self.initSelected[1:])
+ parent_path = self.initSelected[1:]
+ self.treeView.item(parent_path, open=True)
+ self.setselect(self.initSelected)
else:
self.setselect(self.initSelected)
self.initSelected = None
@@ -242,11 +251,11 @@
i+=1
descendants=self.treeView.get_children(item=g)
add_ids(descendants)
- i+=1
for c in list(self.getlist()):
grandchildren=self.treeView.get_children(item=c)
add_ids(grandchildren)
+ i+=1
n = 0
for item in valuelist:
@@ -260,7 +269,6 @@
valuelist.insert(n,item)
n += 1
-
def func_callback(self, callback, event=None):
callback(self.treeView.item(self.treeView.selection()))
@@ -269,7 +277,7 @@
def setselect(self, value):
self.treeView.selection_set(value)
-
+
def selected(self):
value = self.treeView.item(self.treeView.selection())
if value['values']: