X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fpython%2FPlugins%2FSystemPlugins%2FManualFancontrol%2Fplugin.py;h=f2da60188f9abeaf98773264f8c9ce2df6278ca1;hp=eb5e517fdb2c4326de353a52bb55644fbf93ec1f;hb=b5a5859ed517e70aaac405fa70e21e76f3fc72b7;hpb=b1e09c9d47453b3e0e07f9a3297d0c5b52f15275 diff --git a/lib/python/Plugins/SystemPlugins/ManualFancontrol/plugin.py b/lib/python/Plugins/SystemPlugins/ManualFancontrol/plugin.py index eb5e517..f2da601 100755 --- a/lib/python/Plugins/SystemPlugins/ManualFancontrol/plugin.py +++ b/lib/python/Plugins/SystemPlugins/ManualFancontrol/plugin.py @@ -7,17 +7,21 @@ from Components.Sources.StaticText import StaticText from Plugins.Plugin import PluginDescriptor from Plugins.SystemPlugins.ManualFancontrol.InstandbyOn import instandbyon import NavigationInstance +from enigma import eTimer class ManualFancontrol(Screen,ConfigListScreen): - skin = """ - - - - - - - - """ + skin = """ + + + + + + + + + + + """ def __init__(self,session): Screen.__init__(self,session) @@ -35,25 +39,31 @@ class ManualFancontrol(Screen,ConfigListScreen): self["key_green"] = StaticText(_("Save")) self["current"] = StaticText(_(" ")) self.configSetup() + self.oldfanoffmode = instandbyon.fanoffmode + if instandbyon.fanoffmode is 'ON' : + instandbyon.checkStatusLoopStop() + self.checkFanTimer = eTimer() + self.checkFanTimer.callback.append(self.fan_pwm_error) + self.onLayoutFinish.append(self.checkFan) - def isRecording(self): - recordings = NavigationInstance.instance.getRecordings() - if recordings : - return True - else: - return False + def checkFan(self): + if not instandbyon.check_fan_pwm(): + self.checkFanTimer.start(10,True) + + def fan_pwm_error(self): + self.session.openWithCallback(self.close, MessageBox, _("Can not open 'fan_pwm'"), MessageBox.TYPE_ERROR) def displayCurrentValue(self): currrent_val = self["config"].getCurrent()[0]+" : "+str(self["config"].getCurrent()[1].value) self["current"].setText(_(currrent_val)) - print currrent_val +# print currrent_val def selectionChanged(self): if self["config"].getCurrent() == self.pwmEntry: instandbyon.setPWM(self["config"].getCurrent()[1].value) def keyLeft(self): - oldpwmvalue=config.plugins.simplefancontrols.pwmvalue.value + oldpwmvalue=config.plugins.manualfancontrols.pwmvalue.value ConfigListScreen.keyLeft(self) if self["config"].getCurrent() == self.pwmEntry and oldpwmvalue == 5: self.createSetup() @@ -62,7 +72,7 @@ class ManualFancontrol(Screen,ConfigListScreen): self.selectionChanged() def keyRight(self): - oldpwmvalue=config.plugins.simplefancontrols.pwmvalue.value + oldpwmvalue=config.plugins.manualfancontrols.pwmvalue.value ConfigListScreen.keyRight(self) if self["config"].getCurrent() == self.pwmEntry and oldpwmvalue == 0: self.createSetup() @@ -74,35 +84,35 @@ class ManualFancontrol(Screen,ConfigListScreen): def createSetup(self): self.list = [] - if config.plugins.simplefancontrols.pwmvalue.value > 0: + if config.plugins.manualfancontrols.pwmvalue.value > 0: self.list.append( self.standbyEntry ) self.list.append( self.pwmEntry ) + self.list.append( self.periodEntry ) self["config"].list = self.list self["config"].l.setList(self.list) def configSetup(self): - self.standbyEntry = getConfigListEntry(_("FanOFF InStanby"), config.plugins.simplefancontrols.standbymode) - self.pwmEntry = getConfigListEntry(_("PWM value"), config.plugins.simplefancontrols.pwmvalue) + self.standbyEntry = getConfigListEntry(_("FanOFF InStanby"), config.plugins.manualfancontrols.standbymode) + self.pwmEntry = getConfigListEntry(_("PWM value"), config.plugins.manualfancontrols.pwmvalue) + self.periodEntry = getConfigListEntry(_("Status Check Period"), config.plugins.manualfancontrols.checkperiod) if not self.displayCurrentValue in self["config"].onSelectionChanged: self["config"].onSelectionChanged.append(self.displayCurrentValue) self.createSetup() - def newConfig(self): - if self["config"].getCurrent() == self.pwmEntry and config.plugins.simplefancontrols.pwmvalue.value == 0: - self.createSetup() - def keySave(self): - if instandbyon.fanoffmode is 'OFF' and config.plugins.simplefancontrols.pwmvalue.value == 0: - instandbyon.appendRecordEventCallback() + if instandbyon.fanoffmode is 'OFF' and config.plugins.manualfancontrols.pwmvalue.value == 0: +# print "[ManualFancontrol] instandbyon.fanoffmode 'OFF' -> 'ON'" instandbyon.fanoffmode = 'ON' - print " instandbyon.fanoffmode 'OFF' -> 'ON'" - - elif instandbyon.fanoffmode is 'ON' and config.plugins.simplefancontrols.pwmvalue.value != 0: - instandbyon.removeRecordEventCallback() + instandbyon.addRecordEventCB() + instandbyon.checkStatusLoopStart() + elif instandbyon.fanoffmode is 'ON' and config.plugins.manualfancontrols.pwmvalue.value != 0: +# print "[ManualFancontrol] instandbyon.fanoffmode 'ON' -> 'OFF'" instandbyon.fanoffmode = 'OFF' - print " instandbyon.fanoffmode 'ON' -> 'OFF'" - if instandbyon.fanoffmode == 'ON' and self.isRecording() and instandbyon.getPWM() != instandbyon.default_pwm_value_onRecordings: - instandbyon.setPWM(instandbyon.default_pwm_value_onRecordings) + instandbyon.removeRecordEventCB() +# instandbyon.checkStatusLoopStop() # stoped at init + elif self.oldfanoffmode is 'ON' : + instandbyon.checkStatusLoopStart() + instandbyon.checkStstus() ConfigListScreen.keySave(self) def cancelConfirm(self, result): @@ -110,21 +120,19 @@ class ManualFancontrol(Screen,ConfigListScreen): return for x in self["config"].list: x[1].cancel() - if instandbyon.fanoffmode == 'ON' and self.isRecording(): - if instandbyon.getPWM() != instandbyon.default_pwm_value_onRecordings: - instandbyon.setPWM(instandbyon.default_pwm_value_onRecordings) - else: - pass - else: - instandbyon.setPWM(config.plugins.simplefancontrols.pwmvalue.value) + instandbyon.checkStstus() + self.oldfanoffmode = instandbyon.fanoffmode + if self.oldfanoffmode is 'ON' : + instandbyon.checkStatusLoopStart() self.close() def keyCancel(self): if self["config"].isChanged(): self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?")) else: - if instandbyon.fanoffmode == 'ON' and self.isRecording() and instandbyon.getPWM() != instandbyon.default_pwm_value_onRecordings: - instandbyon.setPWM(instandbyon.default_pwm_value_onRecordings) + instandbyon.checkStstus() + if self.oldfanoffmode is 'ON' : + instandbyon.checkStatusLoopStart() self.close() def main(session, **kwargs):