Skip to content

Commit

Permalink
Pass calling window to context menu
Browse files Browse the repository at this point in the history
  • Loading branch information
DarkFenX committed Jul 30, 2019
1 parent 5a0ca50 commit cd20164
Show file tree
Hide file tree
Showing 49 changed files with 199 additions and 204 deletions.
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/boosterView.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ def spawnMenu(self, event):
mainBooster = booster
sourceContext = "boosterItem"
itemContext = None if mainBooster is None else "Booster"
menu = ContextMenu.getMenu(mainBooster, selection, (sourceContext, itemContext))
menu = ContextMenu.getMenu(self, mainBooster, selection, (sourceContext, itemContext))
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/cargoView.py
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ def spawnMenu(self, event):
mainCargo = cargo
sourceContext = "cargoItem"
itemContext = None if mainCargo is None else Market.getInstance().getCategoryByItem(mainCargo.item).name
menu = ContextMenu.getMenu(mainCargo, selection, (sourceContext, itemContext))
menu = ContextMenu.getMenu(self, mainCargo, selection, (sourceContext, itemContext))
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/commandView.py
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ def spawnMenu(self, event):
if mainCommandFit is not None:
contexts.append(('commandFit', 'Command Fit'))
contexts.append(('commandView',))
menu = ContextMenu.getMenu(mainCommandFit, selection, *contexts)
menu = ContextMenu.getMenu(self, mainCommandFit, selection, *contexts)
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/droneView.py
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ def spawnMenu(self, event):
selection = self.getSelectedDrones()
sourceContext = "droneItem"
itemContext = None if mainDrone is None else Market.getInstance().getCategoryByItem(mainDrone.item).name
menu = ContextMenu.getMenu(mainDrone, selection, (sourceContext, itemContext))
menu = ContextMenu.getMenu(self, mainDrone, selection, (sourceContext, itemContext))
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/fighterView.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@ def spawnMenu(self, event):
mainFighter = fighter
sourceContext = "fighterItem"
itemContext = None if mainFighter is None else Market.getInstance().getCategoryByItem(mainFighter.item).name
menu = ContextMenu.getMenu(mainFighter, selection, (sourceContext, itemContext))
menu = ContextMenu.getMenu(self, mainFighter, selection, (sourceContext, itemContext))
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/implantView.py
Original file line number Diff line number Diff line change
Expand Up @@ -278,7 +278,7 @@ def spawnMenu(self, event):
sourceContext1 = "implantItem" if fit.implantSource == ImplantLocation.FIT else "implantItemChar"
sourceContext2 = "implantView" if fit.implantSource == ImplantLocation.FIT else "implantViewChar"
itemContext = None if mainImplant is None else Market.getInstance().getCategoryByItem(mainImplant.item).name
menu = ContextMenu.getMenu(mainImplant, selection, (sourceContext1, itemContext), (sourceContext2, itemContext))
menu = ContextMenu.getMenu(self, mainImplant, selection, (sourceContext1, itemContext), (sourceContext2, itemContext))
if menu:
self.PopupMenu(menu)

Expand Down
2 changes: 1 addition & 1 deletion gui/builtinAdditionPanes/projectedView.py
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@ def spawnMenu(self, event):
contexts.append(('projected',))

selection = self.getSelectedProjectors()
menu = ContextMenu.getMenu(mainItem, selection, *contexts)
menu = ContextMenu.getMenu(self, mainItem, selection, *contexts)
if menu is not None:
self.PopupMenu(menu)

Expand Down
8 changes: 4 additions & 4 deletions gui/builtinContextMenus/ammoToDmgPattern.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
self.settings = ContextMenuSettings.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if not self.settings.get('ammoPattern'):
return False

Expand All @@ -30,15 +30,15 @@ def display(self, srcContext, mainItem):

return False

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Set {} as Damage Pattern".format(itmContext if itmContext is not None else "Item")

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
fitID = self.mainFrame.getActiveFit()
Fit.getInstance().setAsPattern(fitID, mainItem)
wx.PostEvent(self.mainFrame, GE.FitChanged(fitIDs=(fitID,)))

def getBitmap(self, context, mainItem):
def getBitmap(self, callingWindow, context, mainItem):
return None


Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/boosterSideEffects.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class BoosterSideEffects(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if self.mainFrame.getActiveFit() is None or srcContext not in "boosterItem":
return False

Expand All @@ -27,7 +27,7 @@ def display(self, srcContext, mainItem):

return False

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Side Effects"

def addEffect(self, menu, ability):
Expand All @@ -39,7 +39,7 @@ def addEffect(self, menu, ability):
menu.Bind(wx.EVT_MENU, self.handleMode, menuItem)
return menuItem

def getSubMenu(self, context, mainItem, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, mainItem, rootMenu, i, pitem):
msw = True if "wxMSW" in wx.PlatformInfo else False
self.context = context
self.effectIds = {}
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/cargoAdd.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ class AddToCargo(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if srcContext not in ("marketItemGroup", "marketItemMisc"):
return False

Expand All @@ -25,10 +25,10 @@ def display(self, srcContext, mainItem):

return True

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Add {} to Cargo".format(itmContext)

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
fitID = self.mainFrame.getActiveFit()
typeID = int(mainItem.ID)
command = cmd.GuiAddCargoCommand(fitID=fitID, itemID=typeID, amount=1)
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/cargoAddAmmo.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class AddToCargoAmmo(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if srcContext not in ("marketItemGroup", "marketItemMisc") or self.mainFrame.getActiveFit() is None:
return False

Expand All @@ -20,10 +20,10 @@ def display(self, srcContext, mainItem):

return True

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Add {0} to Cargo (x1000)".format(itmContext)

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
fitID = self.mainFrame.getActiveFit()
typeID = int(mainItem.ID)
command = cmd.GuiAddCargoCommand(fitID=fitID, itemID=typeID, amount=1000)
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/commandFitAdd.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,13 @@ def populateFits(cls, evt):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):
if self.mainFrame.getActiveFit() is None or len(self.__class__.commandFits) == 0 or srcContext != "commandView":
return False

return True

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
return "Command Fits"

def addFit(self, menu, fit, includeShip=False):
Expand All @@ -57,7 +57,7 @@ def addFit(self, menu, fit, includeShip=False):
menu.Bind(wx.EVT_MENU, self.handleSelection, menuItem)
return menuItem

def getSubMenu(self, context, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, rootMenu, i, pitem):
msw = True if "wxMSW" in wx.PlatformInfo else False
self.context = context
self.fitMenuItemIds = {}
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/damagePatternChange.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@ class ChangeDamagePattern(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):
return srcContext == "resistancesViewFull"

@property
def enabled(self):
return self.mainFrame.getActiveFit() is not None

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
sDP = import_DamagePattern.getInstance()
sFit = Fit.getInstance()
fitID = self.mainFrame.getActiveFit()
Expand Down Expand Up @@ -75,7 +75,7 @@ def addPattern(self, rootMenu, pattern):
menuItem.SetBitmap(bitmap)
return menuItem

def getSubMenu(self, context, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, rootMenu, i, pitem):
msw = True if "wxMSW" in wx.PlatformInfo else False

if self.m[i] not in self.subMenus:
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/droneAddStack.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class DroneAddStack(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if srcContext not in ('marketItemGroup', 'marketItemMisc'):
return False

Expand All @@ -32,11 +32,11 @@ def display(self, srcContext, mainItem):
self.amount = amount
return True

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return 'Add {} to Drone Bay{}'.format(
itmContext, '' if self.amount == 1 else ' (x{})'.format(self.amount))

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
command = cmd.GuiAddLocalDroneCommand(
fitID=self.mainFrame.getActiveFit(),
itemID=int(mainItem.ID),
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/droneSplitStack.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class DroneSplitStack(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if srcContext != "droneItem":
return False

Expand All @@ -23,10 +23,10 @@ def display(self, srcContext, mainItem):

return mainItem.amount > 1

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Split {} Stack".format(itmContext)

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
dlg = DroneStackSplit(self.mainFrame, mainItem.amount)

if dlg.ShowModal() == wx.ID_OK:
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/envEffectAdd.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@ class AddEnvironmentEffect(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):
return srcContext == "projected"

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
return "Add Environmental Effect"

def getSubMenu(self, context, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, rootMenu, i, pitem):
msw = True if "wxMSW" in wx.PlatformInfo else False

# Wormholes
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/factorReload.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,17 @@ class FactorReload(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):
return srcContext == "firepowerViewFull"

@property
def enabled(self):
return self.mainFrame.getActiveFit() is not None

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
return "Factor in Reload Time"

def activate(self, fullContext, i):
def activate(self, callingWindow, fullContext, i):
fitIDs = Fit.getInstance().toggleFactorReload()
wx.PostEvent(self.mainFrame, GE.FitChanged(fitIDs=tuple(fitIDs)))

Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/fighterAbilities.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
self.isProjected = None

def display(self, srcContext, mainItem, selection):
def display(self, callingWindow, srcContext, mainItem, selection):
if self.mainFrame.getActiveFit() is None or srcContext not in ("fighterItem", "projectedFighter"):
return False

Expand All @@ -26,7 +26,7 @@ def display(self, srcContext, mainItem, selection):
self.isProjected = True if srcContext == "projectedFighter" else False
return True

def getText(self, itmContext, mainItem, selection):
def getText(self, callingWindow, itmContext, mainItem, selection):
return "Abilities"

def addAbility(self, menu, ability):
Expand All @@ -37,7 +37,7 @@ def addAbility(self, menu, ability):
menu.Bind(wx.EVT_MENU, self.handleMode, menuItem)
return menuItem

def getSubMenu(self, context, mainItem, selection, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, mainItem, selection, rootMenu, i, pitem):
msw = True if "wxMSW" in wx.PlatformInfo else False
self.context = context
self.abilityIds = {}
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/fitAddCurrentlyOpen.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,17 @@ class AddCurrentlyOpenFit(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):

if self.mainFrame.getActiveFit() is None or srcContext not in ('projected', 'commandView'):
return False

return True

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
return 'Add Currently Open Fit'

def getSubMenu(self, context, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, rootMenu, i, pitem):
self.fitLookup = {}
self.context = context
sFit = Fit.getInstance()
Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/fitOpenNewTab.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ class OpenFitInNewTab(ContextMenuSingle):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext, mainItem):
def display(self, callingWindow, srcContext, mainItem):
if srcContext not in ("projectedFit", "commandFit"):
return False

Expand All @@ -24,10 +24,10 @@ def display(self, srcContext, mainItem):
return False
return True

def getText(self, itmContext, mainItem):
def getText(self, callingWindow, itmContext, mainItem):
return "Open Fit in New Tab"

def activate(self, fullContext, mainItem, i):
def activate(self, callingWindow, fullContext, mainItem, i):
wx.PostEvent(self.mainFrame, FitSelected(fitID=mainItem.ID, startup=2))


Expand Down
6 changes: 3 additions & 3 deletions gui/builtinContextMenus/fitSystemSecurity.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class FitSystemSecurityMenu(ContextMenuUnconditional):
def __init__(self):
self.mainFrame = gui.mainFrame.MainFrame.getInstance()

def display(self, srcContext):
def display(self, callingWindow, srcContext):
if srcContext != "fittingShip":
return False

Expand All @@ -33,7 +33,7 @@ def display(self, srcContext):

return True

def getText(self, itmContext):
def getText(self, callingWindow, itmContext):
return "Citadel System Security"

def addOption(self, menu, optionLabel):
Expand All @@ -43,7 +43,7 @@ def addOption(self, menu, optionLabel):
menu.Bind(wx.EVT_MENU, self.handleMode, menuItem)
return menuItem

def getSubMenu(self, context, rootMenu, i, pitem):
def getSubMenu(self, callingWindow, context, rootMenu, i, pitem):
fitID = self.mainFrame.getActiveFit()
fit = Fit.getInstance().getFit(fitID)
msw = True if "wxMSW" in wx.PlatformInfo else False
Expand Down
Loading

0 comments on commit cd20164

Please sign in to comment.