From 253d3107a04798b364f1a59b6b032f4ec37f73c1 Mon Sep 17 00:00:00 2001 From: Ryan Holmes Date: Sun, 24 Mar 2019 18:55:25 -0400 Subject: [PATCH] First pass at cleaning up context menu events (#1895) --- gui/builtinAdditionPanes/boosterView.py | 12 ++---------- gui/builtinAdditionPanes/cargoView.py | 12 ++---------- gui/builtinAdditionPanes/commandView.py | 13 ++----------- gui/builtinAdditionPanes/droneView.py | 12 ++---------- gui/builtinAdditionPanes/fighterView.py | 12 ++---------- gui/builtinAdditionPanes/implantView.py | 12 ++---------- gui/builtinAdditionPanes/projectedView.py | 13 ++----------- gui/builtinViews/fittingView.py | 13 ++----------- 8 files changed, 16 insertions(+), 83 deletions(-) diff --git a/gui/builtinAdditionPanes/boosterView.py b/gui/builtinAdditionPanes/boosterView.py index e050d853a..da2bf2daa 100644 --- a/gui/builtinAdditionPanes/boosterView.py +++ b/gui/builtinAdditionPanes/boosterView.py @@ -69,10 +69,7 @@ class BoosterView(d.Display): self.SetDropTarget(BoosterViewDrop(self.handleListDrag)) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) def handleListDrag(self, x, y, data): """ @@ -163,12 +160,7 @@ class BoosterView(d.Display): fitID = self.mainFrame.getActiveFit() self.mainFrame.command.Submit(cmd.GuiToggleBoosterCommand(fitID, row)) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): sel = self.GetFirstSelected() if sel != -1: sFit = Fit.getInstance() diff --git a/gui/builtinAdditionPanes/cargoView.py b/gui/builtinAdditionPanes/cargoView.py index 29721603c..cc6958f5d 100644 --- a/gui/builtinAdditionPanes/cargoView.py +++ b/gui/builtinAdditionPanes/cargoView.py @@ -64,10 +64,7 @@ class CargoView(d.Display): self.SetDropTarget(CargoViewDrop(self.handleListDrag)) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) def handleListDrag(self, x, y, data): """ @@ -180,12 +177,7 @@ class CargoView(d.Display): sFit.removeCargo(fitID, self.original.index(cargo)) wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self,event): sel = self.GetFirstSelected() if sel != -1: sFit = Fit.getInstance() diff --git a/gui/builtinAdditionPanes/commandView.py b/gui/builtinAdditionPanes/commandView.py index ce73e06b8..9b1fb1d0c 100644 --- a/gui/builtinAdditionPanes/commandView.py +++ b/gui/builtinAdditionPanes/commandView.py @@ -72,16 +72,12 @@ class CommandView(d.Display): self.mainFrame.Bind(EVT_FIT_REMOVED, CommandFits.populateFits) self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged) self.Bind(wx.EVT_LEFT_DOWN, self.click) - self.Bind(wx.EVT_RIGHT_DOWN, self.click) self.Bind(wx.EVT_LEFT_DCLICK, self.remove) self.Bind(wx.EVT_KEY_UP, self.kbEvent) self.droneView = gui.builtinAdditionPanes.droneView.DroneView - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_RIGHT_UP, self.spawnMenu) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) self.SetDropTarget(CommandViewDrop(self.handleListDrag)) @@ -188,12 +184,7 @@ class CommandView(d.Display): fitID = self.mainFrame.getActiveFit() self.mainFrame.command.Submit(cmd.GuiToggleCommandCommand(fitID, item.ID)) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): fitID = self.mainFrame.getActiveFit() if fitID is None: return diff --git a/gui/builtinAdditionPanes/droneView.py b/gui/builtinAdditionPanes/droneView.py index 9da438953..fe509f0b3 100644 --- a/gui/builtinAdditionPanes/droneView.py +++ b/gui/builtinAdditionPanes/droneView.py @@ -78,10 +78,7 @@ class DroneView(Display): self.Bind(wx.EVT_MOTION, self.OnMouseMove) self.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) self.SetDropTarget(DroneViewDrop(self.handleDragDrop)) @@ -242,12 +239,7 @@ class DroneView(Display): drone = self.drones[row] self.mainFrame.command.Submit(cmd.GuiToggleDroneCommand(fitID, self.original.index(drone))) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): sel = self.GetFirstSelected() if sel != -1: drone = self.drones[sel] diff --git a/gui/builtinAdditionPanes/fighterView.py b/gui/builtinAdditionPanes/fighterView.py index f9025851b..5be649ac9 100644 --- a/gui/builtinAdditionPanes/fighterView.py +++ b/gui/builtinAdditionPanes/fighterView.py @@ -142,10 +142,7 @@ class FighterDisplay(d.Display): self.Bind(wx.EVT_MOTION, self.OnMouseMove) self.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) self.SetDropTarget(FighterViewDrop(self.handleDragDrop)) @@ -289,12 +286,7 @@ class FighterDisplay(d.Display): fighter = self.fighters[row] self.mainFrame.command.Submit(cmd.GuiToggleFighterCommand(fitID, self.original.index(fighter))) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): sel = self.GetFirstSelected() if sel != -1: fighter = self.fighters[sel] diff --git a/gui/builtinAdditionPanes/implantView.py b/gui/builtinAdditionPanes/implantView.py index 84c437ea3..b28a3b6c5 100644 --- a/gui/builtinAdditionPanes/implantView.py +++ b/gui/builtinAdditionPanes/implantView.py @@ -118,11 +118,8 @@ class ImplantDisplay(d.Display): self.Bind(wx.EVT_KEY_UP, self.kbEvent) self.SetDropTarget(ImplantViewDrop(self.handleListDrag)) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) def handleListDrag(self, x, y, data): """ @@ -223,12 +220,7 @@ class ImplantDisplay(d.Display): fitID = self.mainFrame.getActiveFit() self.mainFrame.command.Submit(cmd.GuiToggleImplantCommand(fitID, row)) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): sel = self.GetFirstSelected() menu = None diff --git a/gui/builtinAdditionPanes/projectedView.py b/gui/builtinAdditionPanes/projectedView.py index 59d046761..1457fcb37 100644 --- a/gui/builtinAdditionPanes/projectedView.py +++ b/gui/builtinAdditionPanes/projectedView.py @@ -78,16 +78,12 @@ class ProjectedView(d.Display): self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged) self.Bind(wx.EVT_LEFT_DOWN, self.click) - self.Bind(wx.EVT_RIGHT_DOWN, self.click) self.Bind(wx.EVT_LEFT_DCLICK, self.remove) self.Bind(wx.EVT_KEY_UP, self.kbEvent) self.droneView = gui.builtinAdditionPanes.droneView.DroneView - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) self.SetDropTarget(ProjectedViewDrop(self.handleListDrag)) @@ -271,12 +267,7 @@ class ProjectedView(d.Display): sFit.toggleProjected(fitID, item, "right" if event.Button == 3 else "left") wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=fitID)) - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): fitID = self.mainFrame.getActiveFit() if fitID is None: return diff --git a/gui/builtinViews/fittingView.py b/gui/builtinViews/fittingView.py index 9801f4af0..f60159daf 100644 --- a/gui/builtinViews/fittingView.py +++ b/gui/builtinViews/fittingView.py @@ -153,10 +153,7 @@ class FittingView(d.Display): self.Bind(wx.EVT_LEFT_DCLICK, self.removeItem) self.Bind(wx.EVT_LIST_BEGIN_DRAG, self.startDrag) - if "__WXGTK__" in wx.PlatformInfo: - self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu) - else: - self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu) + self.Bind(wx.EVT_CONTEXT_MENU, self.spawnMenu) self.SetDropTarget(FittingViewDrop(self.handleListDrag)) self.activeFitID = None @@ -168,7 +165,6 @@ class FittingView(d.Display): self.Bind(wx.EVT_KEY_UP, 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) self.Bind(wx.EVT_SHOW, self.OnShow) self.Bind(wx.EVT_MOTION, self.OnMouseMove) @@ -535,12 +531,7 @@ class FittingView(d.Display): finally: event.Skip() - def scheduleMenu(self, event): - event.Skip() - if self.getColumn(event.Position) != self.getColIndex(State): - wx.CallAfter(self.spawnMenu) - - def spawnMenu(self): + def spawnMenu(self, event): if self.activeFitID is None: return