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):