--- a/TextViewer.py Fri Dec 19 15:08:54 2008 +0100
+++ b/TextViewer.py Fri Jan 09 17:09:59 2009 +0100
@@ -274,7 +274,7 @@
words = self.TagName.split("::")
- self.Variables = dict([(variable["Name"], variable["Tree"]) for variable in self.Controler.GetEditedElementInterfaceVars(self.TagName, self.Debug)])
+ self.Variables = self.GenerateVariableTree([(variable["Name"], variable["Type"], variable["Tree"]) for variable in self.Controler.GetEditedElementInterfaceVars(self.TagName, self.Debug)])
if self.Controler.GetEditedElementType(self.TagName, self.Debug)[1] == "function" or words[0] == "T" and self.TextSyntax == "IL":
self.Variables[words[-1]] = {}
@@ -289,7 +289,15 @@
self.EnumeratedValues.append(value.upper())
self.Colourise(0, -1)
-
+
+ def GenerateVariableTree(self, list):
+ tree = {}
+ if len(list) == 1 and isinstance(list, ListType):
+ list = list[0]
+ for var_name, var_type, var_tree in list:
+ tree[var_name] = self.GenerateVariableTree(var_tree)
+ return tree
+
def RefreshScaling(self, refresh=True):
pass