diff --git a/eos/gamedata.py b/eos/gamedata.py index 1d933519c..50bd66d94 100644 --- a/eos/gamedata.py +++ b/eos/gamedata.py @@ -142,6 +142,7 @@ class Effect(EqBase): """ if not self.__generated: self.__generateHandler() + return self.__effectDef is not None def isType(self, type): @@ -150,6 +151,7 @@ class Effect(EqBase): """ if not self.__generated: self.__generateHandler() + return self.type is not None and type in self.type def __generateHandler(self): diff --git a/gui/builtinContextMenus/priceClear.py b/gui/builtinContextMenus/priceClear.py new file mode 100644 index 000000000..9afdb0815 --- /dev/null +++ b/gui/builtinContextMenus/priceClear.py @@ -0,0 +1,30 @@ +from gui.contextMenu import ContextMenu +import gui.mainFrame +# noinspection PyPackageRequirements +import wx +import gui.globalEvents as GE +from service.price import Price +from service.settings import ContextMenuSettings + + +class PriceClear(ContextMenu): + def __init__(self): + self.mainFrame = gui.mainFrame.MainFrame.getInstance() + self.settings = ContextMenuSettings.getInstance() + + def display(self, srcContext, selection): + if not self.settings.get('priceClear'): + return False + + return srcContext in ("priceViewFull", "priceViewMinimal") + + def getText(self, itmContext, selection): + return "Reset Price Cache" + + def activate(self, fullContext, selection, i): + sPrc = Price.getInstance() + sPrc.clearPriceCache() + wx.PostEvent(self.mainFrame, GE.FitChanged(fitID=self.mainFrame.getActiveFit())) + + +PriceClear.register() diff --git a/gui/contextMenu.py b/gui/contextMenu.py index 0625ff5ba..ec9048429 100644 --- a/gui/contextMenu.py +++ b/gui/contextMenu.py @@ -208,6 +208,7 @@ from gui.builtinContextMenus import ( # noqa: E402,F401 changeAffectingSkills, tacticalMode, targetResists, + priceClear, priceOptions, amount, cargoAmmo, diff --git a/service/settings.py b/service/settings.py index 3723b1dd4..e64cddfe4 100644 --- a/service/settings.py +++ b/service/settings.py @@ -438,6 +438,12 @@ class StatViewSettings(object): "outgoing" : 2, } + # We don't have these....yet + ''' + "miningyield": 2, + "drones": 2 + ''' + self.serviceStatViewDefaultSettings = SettingsProvider.getInstance().getSettings("pyfaServiceStatViewSettings", serviceStatViewDefaultSettings) def get(self, type): @@ -514,6 +520,7 @@ class ContextMenuSettings(object): "moduleAmmoPicker" : 1, "moduleGlobalAmmoPicker": 1, "openFit" : 1, + "priceClear" : 1, "project" : 1, "shipJump" : 1, "tacticalMode" : 1,