Select all items in fitting panel on ctrl-a

This commit is contained in:
DarkPhoenix
2019-04-22 13:36:59 +03:00
parent 71d5b28b75
commit 881ec8b5b4
10 changed files with 17 additions and 11 deletions

View File

@@ -124,7 +124,7 @@ class BoosterView(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
self.update(self.boosters)
event.Skip()

View File

@@ -158,7 +158,7 @@ class CargoView(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
self.populate(self.cargo)
self.refresh(self.cargo)

View File

@@ -156,7 +156,7 @@ class CommandView(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
# todo: verify
if not stuff:

View File

@@ -211,7 +211,7 @@ class DroneView(Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
self.update(self.drones)
event.Skip()

View File

@@ -257,7 +257,7 @@ class FighterDisplay(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
self.update(self.fighters)
event.Skip()

View File

@@ -174,7 +174,7 @@ class ImplantDisplay(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
self.update(self.implants)
event.Skip()

View File

@@ -223,7 +223,7 @@ class ProjectedView(d.Display):
if item != -1:
self.EnsureVisible(item)
self.deselectItems()
self.unselectAll()
if not stuff:
stuff = [DummyEntry("Drag an item or fit, or use right-click menu for wormhole effects")]

View File

@@ -258,7 +258,7 @@ class ItemView(Display):
sMkt = self.sMkt
self.metalvls = sMkt.directAttrRequest(items, attrs)
# Clear selection
self.deselectItems()
self.unselectAll()
# Perform sorting, using item's meta levels besides other stuff
items.sort(key=self.itemSort)
# Mark current item list as active

View File

@@ -164,7 +164,7 @@ class FittingView(d.Display):
self.hoveredRow = None
self.hoveredColumn = None
self.Bind(wx.EVT_KEY_UP, self.kbEvent)
self.Bind(wx.EVT_KEY_DOWN, self.kbEvent)
self.Bind(wx.EVT_LEFT_DOWN, self.click)
self.Bind(wx.EVT_RIGHT_DOWN, self.click)
self.Bind(wx.EVT_MIDDLE_DOWN, self.click)
@@ -255,7 +255,7 @@ class FittingView(d.Display):
if mod not in fit.modules:
return
self.deselectItems()
self.unselectAll()
self.Select(srcRow, True)
data = wx.TextDataObject()
@@ -284,6 +284,8 @@ class FittingView(d.Display):
def kbEvent(self, event):
keycode = event.GetKeyCode()
if keycode == 65 and wx.GetMouseState().cmdDown:
self.selectAll()
if keycode == wx.WXK_DELETE or keycode == wx.WXK_NUMPAD_DELETE:
modules = [m for m in self.getSelectedMods() if not m.isEmpty]
self.removeModule(modules)

View File

@@ -167,12 +167,16 @@ class Display(wx.ListCtrl):
return lastFound
def deselectItems(self):
def unselectAll(self):
sel = self.GetFirstSelected()
while sel != -1:
self.Select(sel, False)
sel = self.GetNextSelected(sel)
def selectAll(self):
for row in range(self.GetItemCount()):
self.Select(row, True)
def populate(self, stuff):
if stuff is not None: