X-Git-Url: http://iramuteq.org/git?p=iramuteq;a=blobdiff_plain;f=tree.py;h=e9ab091cd1f692c58c53ec5741cba09880593e36;hp=0d1aa3f839bec9ad0f85881fac31093c374d0489;hb=8cebf6f5e4531b73d8ba32f834c10cefd1086d80;hpb=9bde3d55d2131f1a33234a43c0de8b200ddb8f9a diff --git a/tree.py b/tree.py index 0d1aa3f..e9ab091 100644 --- a/tree.py +++ b/tree.py @@ -10,7 +10,7 @@ import webbrowser import wx.lib.agw.customtreectrl as CT import logging from openanalyse import OpenAnalyse -from corpusNG import Corpus, copycorpus +from corpus import Corpus, copycorpus from functions import DoConf, GetTxtProfile from profile_segment import ProfileSegment, ProfilType from search_tools import SearchFrame @@ -114,7 +114,7 @@ class LeftTree(CT.CustomTreeCtrl): self.history = parent.history self.h = self.history.history self.root = self.AddRoot("Iramuteq") - + if not(self.GetAGWWindowStyleFlag() & CT.TR_HIDE_ROOT): self.SetPyData(self.root, None) self.SetItemImage(self.root, 24, CT.TreeItemIcon_Normal) @@ -129,11 +129,17 @@ class LeftTree(CT.CustomTreeCtrl): if 'analyses' in corpus : for y in corpus['analyses'] : last = self.AppendItem(child, y['name'], ct_type=0) - self.SetPyData(last, y) self.SetItemImage(last, 24, CT.TreeItemIcon_Normal) self.SetItemImage(last, 13, CT.TreeItemIcon_Expanded) - + + for matrix in self.history.matrix : + last = self.AppendItem(self.root, matrix['name']) + self.SetPyData(last, matrix) + self.SetItemImage(last, 24, CT.TreeItemIcon_Normal) + self.SetItemImage(last, 13, CT.TreeItemIcon_Expanded) + + self.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick) #self.Bind(wx.EVT_IDLE, self.OnIdle) @@ -248,17 +254,28 @@ class LeftTree(CT.CustomTreeCtrl): if itemParent is None : itemParent = self.root child, cookie = self.GetFirstChild(itemParent) - print child, cookie while child : pydata = self.GetPyData(child) if pydata['uuid'] == uuid : self.SelectItem(child) if bold : self.SetItemBold(child, True) - return 'kool' + return + self.GiveFocus(child, uuid, bold) + child, cookie = self.GetNextChild(itemParent, cookie) + + def IsInTree(self, itemParent = None, uuid = None) : + if itemParent is None : + itemParent = self.root + child, cookie = self.GetFirstChild(itemParent) + while child : + pydata = self.GetPyData(child) + if pydata['uuid'] == uuid : + return True self.GiveFocus(child, uuid) child, cookie = self.GetNextChild(itemParent, cookie) - return 'pas kool' + return False + def OnRightDown(self, event): @@ -658,21 +675,24 @@ class LeftTree(CT.CustomTreeCtrl): dlg.Destroy() def AddAnalyse(self, parametres, itemParent = None, bold = True) : - uuid = parametres['corpus'] - if itemParent is None : - itemParent = self.root - child, cookie = self.GetFirstChild(itemParent) - corpus = None - while child : - pydata = self.GetPyData(child) - if pydata['uuid'] == uuid : - corpus = child - break - self.GiveFocus(child, uuid) - child, cookie = self.GetNextChild(itemParent, cookie) - #item = self.AppendItem(child, parametres['name']) - if corpus is not None : - item = self.AppendItem(corpus, parametres['name']) + uuid = parametres.get('corpus', None) + if uuid is not None : + if itemParent is None : + itemParent = self.root + child, cookie = self.GetFirstChild(itemParent) + corpus = None + while child : + pydata = self.GetPyData(child) + if pydata['uuid'] == uuid : + corpus = child + break + self.GiveFocus(child, uuid) + child, cookie = self.GetNextChild(itemParent, cookie) + #item = self.AppendItem(child, parametres['name']) + if corpus is not None : + item = self.AppendItem(corpus, parametres['name']) + else : + item = self.AppendItem(self.root, parametres['name']) else : item = self.AppendItem(self.root, parametres['name']) self.SetPyData(item, parametres)