Extend the controller with a getChildren method and use it to display marketgroup children
This commit is contained in:
@@ -27,6 +27,7 @@ def getStaticBitmap(name, parent, location):
|
||||
return static
|
||||
|
||||
locationMap = {"pack": os.path.join(config.homePath, "icons")}
|
||||
|
||||
def getBitmap(name,location):
|
||||
if location in locationMap:
|
||||
location = locationMap[location]
|
||||
|
||||
@@ -32,11 +32,11 @@ class MainFrame(wx.Frame):
|
||||
#Add menu
|
||||
self.SetMenuBar(MainMenuBar())
|
||||
self.SetToolBar(MainToolBar(self))
|
||||
|
||||
#Register menubar events / only quit for now
|
||||
|
||||
#Register menubar events / only quit for now
|
||||
self.Bind(wx.EVT_MENU, self.ExitApp, id=wx.ID_EXIT)
|
||||
self.Bind(wx.EVT_MENU, self.ShowAboutBox, id=wx.ID_ABOUT)
|
||||
|
||||
|
||||
self.splitter = wx.SplitterWindow(self, style = wx.SP_LIVE_UPDATE)
|
||||
|
||||
self.marketBrowser = MarketBrowser(self.splitter)
|
||||
@@ -52,13 +52,13 @@ class MainFrame(wx.Frame):
|
||||
self.Show()
|
||||
|
||||
def ExitApp(self, evt):
|
||||
self.Close()
|
||||
self.Close()
|
||||
|
||||
def ShowAboutBox(self, evt):
|
||||
info = wx.AboutDialogInfo()
|
||||
info.Name = "pyfa"
|
||||
info.Version = aboutData.versionString
|
||||
info.Description = wordwrap(aboutData.description + "\n\n\nDevelopers: " + ",".join(aboutData.developers) + "\nLicense: " + aboutData.license + " see included " + aboutData.licenseLocation,
|
||||
info.Description = wordwrap(aboutData.description + "\n\n\nDevelopers: " + ", ".join(aboutData.developers) + "\nLicense: " + aboutData.license + " see included " + aboutData.licenseLocation,
|
||||
350, wx.ClientDC(self))
|
||||
info.WebSite = ("http://pyfa.sourceforge.net/", "pyfa home page")
|
||||
wx.AboutBox(info)
|
||||
wx.AboutBox(info)
|
||||
|
||||
@@ -53,6 +53,27 @@ class MarketBrowser(wx.Panel):
|
||||
|
||||
root = cMarket.getMarketRoot()
|
||||
for id, name, iconFile in root:
|
||||
iconId = self.marketImageList.Add(bitmapLoader.getBitmap(iconFile, "pack"))
|
||||
childId = self.marketView.AppendItem(self.marketRoot, name, iconId)
|
||||
if iconFile: iconId = self.marketImageList.Add(bitmapLoader.getBitmap(iconFile, "pack"))
|
||||
else: iconId = -1
|
||||
childId = self.marketView.AppendItem(self.marketRoot, name, iconId, data=wx.TreeItemData(id))
|
||||
self.marketView.AppendItem(childId, "dummy")
|
||||
|
||||
#Bind our lookup method to when the tree gets expanded
|
||||
self.marketView.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup)
|
||||
|
||||
def expandLookup(self, event):
|
||||
root = event.Item
|
||||
child, cookie = self.marketView.GetFirstChild(root)
|
||||
if self.marketView.GetItemText(child) == "dummy":
|
||||
cMarket = controller.Market.getInstance()
|
||||
#A DUMMY! Keeeel!!! EBUL DUMMY MUST DIAF!
|
||||
self.marketView.Delete(child)
|
||||
|
||||
rootId = self.marketView.GetPyData(root)
|
||||
#Add 'real stoof!' instead
|
||||
for id, name, iconFile, more in cMarket.getChildren(rootId):
|
||||
if iconFile: iconId = self.marketImageList.Add(bitmapLoader.getBitmap(iconFile, "pack"))
|
||||
else: iconId = -1
|
||||
childId = self.marketView.AppendItem(root, name, iconId, data=wx.TreeItemData(id))
|
||||
if more:
|
||||
self.marketView.AppendItem(childId, "dummy")
|
||||
|
||||
Reference in New Issue
Block a user