Gray out unused toggles while browsing through the marketBrowser too
This commit is contained in:
@@ -179,7 +179,8 @@ class MarketBrowser(wx.Panel):
|
||||
|
||||
cMarket = service.Market.getInstance()
|
||||
idNameMap = {}
|
||||
for id, name, iconFile in cMarket.getVariations(self.marketView.GetPyData(root)):
|
||||
data, usedMetas = cMarket.getVariations(self.marketView.GetPyData(root))
|
||||
for id, name, iconFile in data:
|
||||
iconId = self.addItemViewImage(iconFile)
|
||||
index = self.itemView.InsertImageStringItem(sys.maxint, name, iconId)
|
||||
idNameMap[id] = name
|
||||
@@ -193,6 +194,8 @@ class MarketBrowser(wx.Panel):
|
||||
if maxWidth > width:
|
||||
self.itemView.SetColumnWidth(0, maxWidth)
|
||||
|
||||
self.toggleButtons(usedMetas)
|
||||
|
||||
def toggleMetagroup(self, event):
|
||||
ctrl = wx.GetMouseState().ControlDown()
|
||||
cMarket = service.Market.getInstance()
|
||||
@@ -259,6 +262,18 @@ class MarketBrowser(wx.Panel):
|
||||
self.searchResults = results
|
||||
self.filteredSearchAdd()
|
||||
|
||||
def toggleButtons(self, usedMetas):
|
||||
cMarket = service.Market.getInstance()
|
||||
for name in ("normal", "faction", "complex", "officer"):
|
||||
btn = getattr(self, name)
|
||||
btn.SetValue(False)
|
||||
btn.Enable(False)
|
||||
|
||||
for meta in usedMetas:
|
||||
btn = getattr(self, cMarket.getMetaName(meta))
|
||||
btn.SetValue(cMarket.isMetaIdActive(meta))
|
||||
btn.Enable(True)
|
||||
|
||||
def filteredSearchAdd(self):
|
||||
if self.searching is False:
|
||||
return
|
||||
@@ -281,15 +296,7 @@ class MarketBrowser(wx.Panel):
|
||||
self.itemView.SetItemData(index, id)
|
||||
|
||||
#Gray out empty toggles
|
||||
for name in ("normal", "faction", "complex", "officer"):
|
||||
btn = getattr(self, name)
|
||||
btn.SetValue(False)
|
||||
btn.Enable(False)
|
||||
|
||||
for meta in usedMetas:
|
||||
btn = getattr(self, cMarket.getMetaName(meta))
|
||||
btn.SetValue(cMarket.isMetaIdActive(meta))
|
||||
btn.Enable(True)
|
||||
self.toggleButtons(usedMetas)
|
||||
|
||||
def sort(id1, id2):
|
||||
grp = cmp(idGroupMap[id1], idGroupMap[id2])
|
||||
|
||||
@@ -229,19 +229,23 @@ class Market():
|
||||
mg = eos.db.getMarketGroup(marketGroupId)
|
||||
l = []
|
||||
done = set()
|
||||
populatedMetas = set()
|
||||
|
||||
for item in mg.items:
|
||||
populatedMetas.add(1)
|
||||
if 1 in self.activeMetas:
|
||||
if item not in done:
|
||||
done.add(item)
|
||||
l.append((item.ID, item.name, item.icon.iconFile if item.icon else ""))
|
||||
|
||||
vars = eos.db.getVariations(item, metaGroups = tuple(self.activeMetas), eager="icon")
|
||||
vars = eos.db.getVariations(item, eager=("icon", "metaGroup"))
|
||||
for var in vars:
|
||||
if var not in done:
|
||||
populatedMetas.add(var.metaGroup.ID)
|
||||
if var not in done and var.metaGroup.ID in self.activeMetas:
|
||||
done.add(var)
|
||||
l.append((var.ID, var.name, var.icon.iconFile if var.icon else ""))
|
||||
|
||||
return l
|
||||
return l, populatedMetas
|
||||
|
||||
def getPrices(self, typeIDs, callback):
|
||||
requests = []
|
||||
|
||||
Reference in New Issue
Block a user