diff --git a/gui/builtinPreferenceViews/pyfaEnginePreferences.py b/gui/builtinPreferenceViews/pyfaEnginePreferences.py index 4a0f421bc..f9fba7612 100644 --- a/gui/builtinPreferenceViews/pyfaEnginePreferences.py +++ b/gui/builtinPreferenceViews/pyfaEnginePreferences.py @@ -24,6 +24,8 @@ class PFFittingEnginePref(PreferenceView): mainSizer = wx.BoxSizer(wx.VERTICAL) + helpCursor = wx.StockCursor(wx.CURSOR_QUESTION_ARROW) + self.engine_settings = EOSSettings.getInstance() self.stTitle = wx.StaticText(panel, wx.ID_ANY, self.title, wx.DefaultPosition, wx.DefaultSize, 0) @@ -36,8 +38,20 @@ class PFFittingEnginePref(PreferenceView): self.cbGlobalForceReload = wx.CheckBox(panel, wx.ID_ANY, u"Factor in reload time when calculating capacitor usage, damage, and tank.", wx.DefaultPosition, wx.DefaultSize, 0) + mainSizer.Add(self.cbGlobalForceReload, 0, wx.ALL | wx.EXPAND, 5) + self.cbStrictSkillLevels = wx.CheckBox(panel, wx.ID_ANY, + u"Enforce strict skill level requirements", + wx.DefaultPosition, wx.DefaultSize, 0) + self.cbStrictSkillLevels.SetCursor(helpCursor) + self.cbStrictSkillLevels.SetToolTip(wx.ToolTip( + u'When enabled, skills will check their dependencies\' requirements when their levels change and reset ' + + u'skills that no longer meet the requirement.\neg: Setting Drones from level V to IV will reset the Heavy ' + + u'Drone Operation skill, as that requires Drones V')) + + mainSizer.Add(self.cbStrictSkillLevels, 0, wx.ALL | wx.EXPAND, 5) + self.cbUniversalAdaptiveArmorHardener = wx.CheckBox(panel, wx.ID_ANY, u"When damage profile is Uniform, set Reactive Armor " + u"Hardener to match (old behavior).", @@ -73,6 +87,9 @@ class PFFittingEnginePref(PreferenceView): self.cbGlobalForceReload.SetValue(self.sFit.serviceFittingOptions["useGlobalForceReload"]) self.cbGlobalForceReload.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalForceReloadStateChange) + self.cbStrictSkillLevels.SetValue(self.engine_settings.get("strictSkillLevels")) + self.cbStrictSkillLevels.Bind(wx.EVT_CHECKBOX, self.OnCBStrictSkillLevelsChange) + self.cbUniversalAdaptiveArmorHardener.SetValue(self.engine_settings.get("useStaticAdaptiveArmorHardener")) self.cbUniversalAdaptiveArmorHardener.Bind(wx.EVT_CHECKBOX, self.OnCBUniversalAdaptiveArmorHardenerChange) @@ -82,6 +99,9 @@ class PFFittingEnginePref(PreferenceView): def OnCBGlobalForceReloadStateChange(self, event): self.sFit.serviceFittingOptions["useGlobalForceReload"] = self.cbGlobalForceReload.GetValue() + def OnCBStrictSkillLevelsChange(self, event): + self.engine_settings.set("strictSkillLevels", self.cbStrictSkillLevels.GetValue()) + def OnCBUniversalAdaptiveArmorHardenerChange(self, event): self.engine_settings.set("useStaticAdaptiveArmorHardener", self.cbUniversalAdaptiveArmorHardener.GetValue()) diff --git a/gui/builtinPreferenceViews/pyfaGeneralPreferences.py b/gui/builtinPreferenceViews/pyfaGeneralPreferences.py index e75ef55ce..acdfb398b 100644 --- a/gui/builtinPreferenceViews/pyfaGeneralPreferences.py +++ b/gui/builtinPreferenceViews/pyfaGeneralPreferences.py @@ -21,6 +21,8 @@ class PFGeneralPref(PreferenceView): self.openFitsSettings = SettingsProvider.getInstance().getSettings("pyfaPrevOpenFits", {"enabled": False, "pyfaOpenFits": []}) + helpCursor = wx.StockCursor(wx.CURSOR_QUESTION_ARROW) + mainSizer = wx.BoxSizer(wx.VERTICAL) self.stTitle = wx.StaticText(panel, wx.ID_ANY, self.title, wx.DefaultPosition, wx.DefaultSize, 0) @@ -97,6 +99,7 @@ class PFGeneralPref(PreferenceView): self.stMarketDelay = wx.StaticText(panel, wx.ID_ANY, u"Market Search Delay (ms):", wx.DefaultPosition, wx.DefaultSize, 0) self.stMarketDelay.Wrap(-1) + self.stMarketDelay.SetCursor(helpCursor) self.stMarketDelay.SetToolTip( wx.ToolTip('The delay between a keystroke and the market search. Can help reduce lag when typing fast in the market search box.'))