Add option to disable gauge animations (primarily for osx 10.11 users, see #438)

This commit is contained in:
blitzmann
2016-01-09 12:36:55 -05:00
parent 343d605a84
commit 3d26a31ee2
3 changed files with 24 additions and 5 deletions

View File

@@ -59,6 +59,10 @@ class PFGeneralPref ( PreferenceView):
self.cbMarketShortcuts = wx.CheckBox( panel, wx.ID_ANY, u"Show market shortcuts", wx.DefaultPosition, wx.DefaultSize, 0 )
mainSizer.Add( self.cbMarketShortcuts, 0, wx.ALL|wx.EXPAND, 5 )
self.cbGaugeAnimation = wx.CheckBox( panel, wx.ID_ANY, u"Animate gauges", wx.DefaultPosition, wx.DefaultSize, 0 )
mainSizer.Add( self.cbGaugeAnimation, 0, wx.ALL|wx.EXPAND, 5 )
defCharSizer = wx.BoxSizer( wx.HORIZONTAL )
self.sFit = service.Fit.getInstance()
@@ -73,6 +77,7 @@ class PFGeneralPref ( PreferenceView):
self.cbReopenFits.SetValue(self.openFitsSettings["enabled"])
self.cbShowTooltip.SetValue(self.sFit.serviceFittingOptions["showTooltip"] or False)
self.cbMarketShortcuts.SetValue(self.sFit.serviceFittingOptions["showMarketShortcuts"] or False)
self.cbGaugeAnimation.SetValue(self.sFit.serviceFittingOptions["enableGaugeAnimation"])
self.cbGlobalChar.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalCharStateChange)
self.cbGlobalDmgPattern.Bind(wx.EVT_CHECKBOX, self.OnCBGlobalDmgPatternStateChange)
@@ -84,6 +89,7 @@ class PFGeneralPref ( PreferenceView):
self.cbReopenFits.Bind(wx.EVT_CHECKBOX, self.onCBReopenFits)
self.cbShowTooltip.Bind(wx.EVT_CHECKBOX, self.onCBShowTooltip)
self.cbMarketShortcuts.Bind(wx.EVT_CHECKBOX, self.onCBShowShortcuts)
self.cbGaugeAnimation.Bind(wx.EVT_CHECKBOX, self.onCBGaugeAnimation)
self.cbRackLabels.Enable(self.sFit.serviceFittingOptions["rackSlots"] or False)
@@ -143,6 +149,10 @@ class PFGeneralPref ( PreferenceView):
def onCBShowShortcuts(self, event):
self.sFit.serviceFittingOptions["showMarketShortcuts"] = self.cbMarketShortcuts.GetValue()
def onCBGaugeAnimation(self, event):
self.sFit.serviceFittingOptions["enableGaugeAnimation"] = self.cbGaugeAnimation.GetValue()
print self.sFit.serviceFittingOptions["enableGaugeAnimation"]
def getImage(self):
return BitmapLoader.getBitmap("prefs_settings", "gui")

View File

@@ -20,6 +20,8 @@ import gui.utils.drawUtils as drawUtils
import gui.utils.animEffects as animEffects
import gui.utils.fonts as fonts
from service import fit
class PyGauge(wx.PyWindow):
"""
This class provides a visual alternative for `wx.Gauge`. It currently
@@ -174,10 +176,16 @@ class PyGauge(wx.PyWindow):
return self._range
def Animate(self):
if not self._timer:
self._timer = wx.Timer(self, self._timerId)
self._animStep = 0
self._timer.Start(self._period)
sFit = fit.Fit.getInstance()
print sFit.serviceFittingOptions["enableGaugeAnimation"]
if sFit.serviceFittingOptions["enableGaugeAnimation"]:
if not self._timer:
self._timer = wx.Timer(self, self._timerId)
self._animStep = 0
self._timer.Start(self._period)
else:
self._animValue = self._percentage
self.Refresh()
def SetRange(self, range, reinit = False):
"""

View File

@@ -103,7 +103,8 @@ class Fit(object):
"rackLabels": True,
"compactSkills": True,
"showTooltip": True,
"showMarketShortcuts": False}
"showMarketShortcuts": False,
"enableGaugeAnimation": True}
self.serviceFittingOptions = SettingsProvider.getInstance().getSettings(
"pyfaServiceFittingOptions", serviceFittingDefaultOptions)