From bb49727317ad04bf32c71cb4ec9972772a374ff3 Mon Sep 17 00:00:00 2001 From: cncfanatics Date: Thu, 30 Sep 2010 13:04:07 +0200 Subject: [PATCH] More work on the implant editor, finish the market view part --- gui/characterEditor.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gui/characterEditor.py b/gui/characterEditor.py index 2b1c610f6..558089509 100644 --- a/gui/characterEditor.py +++ b/gui/characterEditor.py @@ -377,8 +377,39 @@ class ImplantsTreeView (wx.Panel): if more: self.availableImplantsTree.AppendItem(childId, "dummy") + #Bind the event to replace dummies by real data + self.availableImplantsTree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup) + self.availableImplantsTree.SortChildren(self.availableRoot) self.Layout() + def expandLookup(self, event): + tree = self.availableImplantsTree + root = event.Item + child, cookie = tree.GetFirstChild(root) + text = tree.GetItemText(child) + if text == "dummy" or text == "itemdummy": + cMarket = service.Market.getInstance() + #A DUMMY! Keeeel!!! EBUL DUMMY MUST DIAF! + tree.Delete(child) + + if text == "dummy": + #Add 'real stoof!' instead + for id, name, iconFile, more in cMarket.getChildren(tree.GetPyData(root)): + iconId = self.addMarketViewImage(iconFile) + childId = tree.AppendItem(root, name, iconId, data=wx.TreeItemData(id)) + if more: + tree.AppendItem(childId, "dummy") + else: + tree.AppendItem(childId, "itemdummy") + + if text == "itemdummy": + cMarket = service.Market.getInstance() + data, usedMetas = cMarket.getVariations(tree.GetPyData(root)) + for id, name, iconFile in data: + iconId = self.addMarketViewImage(iconFile) + tree.AppendItem(root, name, iconId, data=wx.TreeItemData(id)) + + tree.SortChildren(root) class APIView (wx.Panel): def __init__(self, parent): wx.Panel.__init__ (self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 300), style=wx.TAB_TRAVERSAL)