Implement logic to autoselect some metagroups if no items were filtered
This commit is contained in:
@@ -140,13 +140,33 @@ class ItemView(Display):
|
||||
self.unfilteredStore = items
|
||||
|
||||
def filterItemStore(self):
|
||||
filteredItems = self.filterItems()
|
||||
if len(filteredItems) == 0:
|
||||
setting = self.marketBrowser.settings.get('marketMGEmptyMode')
|
||||
# Enable leftmost available
|
||||
if setting == 1:
|
||||
for btn in self.marketBrowser.metaButtons:
|
||||
if btn.IsEnabled() and not btn.GetValue():
|
||||
btn.setUserSelection(True)
|
||||
break
|
||||
filteredItems = self.filterItems()
|
||||
# Enable all
|
||||
elif setting == 2:
|
||||
for btn in self.marketBrowser.metaButtons:
|
||||
if not btn.GetValue():
|
||||
btn.setUserSelection(True)
|
||||
filteredItems = self.filterItems()
|
||||
self.filteredStore = filteredItems
|
||||
self.update(list(self.filteredStore))
|
||||
|
||||
def filterItems(self):
|
||||
sMkt = self.sMkt
|
||||
selectedMetas = set()
|
||||
for btn in self.marketBrowser.metaButtons:
|
||||
if btn.GetValue():
|
||||
selectedMetas.update(sMkt.META_MAP[btn.metaName])
|
||||
self.filteredStore = sMkt.filterItemsByMeta(self.unfilteredStore, selectedMetas)
|
||||
self.update(list(self.filteredStore))
|
||||
filteredItems = sMkt.filterItemsByMeta(self.unfilteredStore, selectedMetas)
|
||||
return filteredItems
|
||||
|
||||
def setToggles(self):
|
||||
metaIDs = set()
|
||||
|
||||
@@ -89,7 +89,7 @@ class PFMarketPref(PreferenceView):
|
||||
mainSizer.Add(self.rbMarketJump, 0, wx.EXPAND | wx.TOP | wx.RIGHT, 10)
|
||||
self.rbMarketJump.Bind(wx.EVT_RADIOBOX, self.OnMarketJumpChange)
|
||||
|
||||
self.rbMarketEmpty = wx.RadioBox(panel, -1, "Empty Market View", wx.DefaultPosition, wx.DefaultSize, ["No changes to meta buttons", "Enable leftmost available meta button", "Enable all available meta buttons", "Enable all meta buttons"], 1, wx.RA_SPECIFY_COLS)
|
||||
self.rbMarketEmpty = wx.RadioBox(panel, -1, "Empty Market View", wx.DefaultPosition, wx.DefaultSize, ["No changes to meta buttons", "Enable leftmost available meta button", "Enable all meta buttons"], 1, wx.RA_SPECIFY_COLS)
|
||||
self.rbMarketEmpty.SetSelection(self.priceSettings.get('marketMGEmptyMode'))
|
||||
mainSizer.Add(self.rbMarketEmpty, 0, wx.EXPAND | wx.TOP | wx.RIGHT, 10)
|
||||
self.rbMarketEmpty.Bind(wx.EVT_RADIOBOX, self.OnMarketEmptyChange)
|
||||
|
||||
Reference in New Issue
Block a user