--- nfo/projects/netfraggle/bin/FraggleTopicFrame.py 2004/09/17 09:46:30 1.8 +++ nfo/projects/netfraggle/bin/FraggleTopicFrame.py 2004/09/17 20:51:24 1.9 @@ -1,7 +1,11 @@ #Boa:MDIChild:FraggleTopicFrame -# $Id: FraggleTopicFrame.py,v 1.8 2004/09/17 09:46:30 xabbu Exp $ +# $Id: FraggleTopicFrame.py,v 1.9 2004/09/17 20:51:24 xabbu Exp $ # $Log: FraggleTopicFrame.py,v $ +# Revision 1.9 2004/09/17 20:51:24 xabbu +# + function initTreeList() will init a TreeList +# + function loadContent(contentkey) moved from FraggleListFrame +# # Revision 1.8 2004/09/17 09:46:30 xabbu # U function OnUpdateButtonButton items will be added in the correct order now # @@ -42,17 +46,16 @@ return FraggleTopicFrame(parent) [wxID_FRAGGLETOPICFRAME, wxID_FRAGGLETOPICFRAMETOPICLISTBOX, - wxID_FRAGGLETOPICFRAMEUPDATEBUTTON, -] = map(lambda _init_ctrls: wxNewId(), range(3)) + wxID_FRAGGLETOPICFRAMETREECTRL1, wxID_FRAGGLETOPICFRAMEUPDATEBUTTON, +] = map(lambda _init_ctrls: wxNewId(), range(4)) class FraggleTopicFrame(wxMDIChildFrame): def _init_ctrls(self, prnt): # generated method, don't edit wxMDIChildFrame.__init__(self, id=wxID_FRAGGLETOPICFRAME, name='', - parent=prnt, pos=wxPoint(494, 328), size=wxSize(169, 192), + parent=prnt, pos=wxPoint(494, 328), size=wxSize(424, 219), style=wxSIMPLE_BORDER | wxDEFAULT_FRAME_STYLE, title='Topics') - self._init_utils() - self.SetClientSize(wxSize(169, 192)) + self.SetClientSize(wxSize(416, 192)) self.updateButton = wxButton(id=wxID_FRAGGLETOPICFRAMEUPDATEBUTTON, label=u'&Update', name=u'updateButton', parent=self, @@ -67,9 +70,10 @@ wxID_FRAGGLETOPICFRAMETOPICLISTBOX, self.OnTopicListBoxListboxDclick) - def _init_utils(self): - # generated method, don't edit - pass + self.treeCtrl1 = wxTreeCtrl(id=wxID_FRAGGLETOPICFRAMETREECTRL1, + name='treeCtrl1', parent=self, pos=wxPoint(176, 0), + size=wxSize(160, 168), style=wxTR_HAS_BUTTONS) + self.treeCtrl1.Enable(True) def __init__(self, parent): self.parent = parent @@ -87,11 +91,44 @@ topics = self.engine.getTopics() #print topics self.topicListBox.Clear() + self.treeCtrl1.Clear() i = 0 for topic in topics: self.topicListBox.Append(topics[str(i)], i) i = i + 1 - + self.initTreeList() + + def initTreeList(self): + topics = self.engine.getTopics() + i = 0 + self.treeItems = {} + self.rootItem = self.treeCtrl1.AddRoot('Root') + self.treeItems[topics[str(i)]] = {} + for topic in topics: + self.treeItems[topics[str(i)]] = self.treeCtrl1.AppendItem(self.rootItem, topics[str(i)]) + self.load_content(topics[str(i)]) + i = i + 1 + + + def load_content(self,contentkey): + self.payload = self.engine.listItems(contentkey) + self.columns = self.payload['2'] + topics = self.engine.getTopics() + + entries = self.payload['1'] + itemid = 0 + columnlist = self.columns + for entry in entries: + + #print columnlist + #columnlist.pop() + if entries[entry]['1'] == '1': + self.treeCtrl1.AppendItem(self.treeItems[contentkey],str(entries[entry]['2']+' - English')) + elif entries[entry]['1'] == '2': + self.treeCtrl1.AppendItem(self.treeItems[contentkey],str(entries[entry]['2']+' - Deutsch')) + #print self.treeItems + itemid += 1 + def OnTopicListBoxListboxDclick(self, event): #event.Skip() #print event @@ -124,4 +161,4 @@ frame.load_content(topics[str(seldata)]) - \ No newline at end of file +