add (Expert) Satellite Equipment Setup for change some
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>
Thu, 15 Feb 2007 12:04:29 +0000 (12:04 +0000)
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>
Thu, 15 Feb 2007 12:04:29 +0000 (12:04 +0000)
delays/timeouts/retries

configure.ac
lib/python/Components/NimManager.py
lib/python/Plugins/SystemPlugins/Makefile.am
lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am [new file with mode: 0644]
lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/__init__.py [new file with mode: 0644]
lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py [new file with mode: 0644]

index 21840f4..ef22a6b 100644 (file)
@@ -75,6 +75,7 @@ lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile
 lib/python/Plugins/SystemPlugins/ConfigurationBackup/Makefile
 lib/python/Plugins/SystemPlugins/Satfinder/Makefile
 lib/python/Plugins/SystemPlugins/SkinSelector/Makefile
+lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile
 lib/python/Plugins/DemoPlugins/Makefile
 lib/python/Plugins/DemoPlugins/TestPlugin/Makefile
 lib/python/Plugins/Extensions/Makefile
index 04ea288..60bf0ee 100644 (file)
@@ -643,55 +643,55 @@ class NimManager:
 def InitSecParams():
        config.sec = ConfigSubsection()
 
-       x = ConfigInteger(default=15)
+       x = ConfigInteger(default=15, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_CONT_TONE, configElement.value))
        config.sec.delay_after_continuous_tone_change = x
 
-       x = ConfigInteger(default=10)
+       x = ConfigInteger(default=10, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_FINAL_VOLTAGE_CHANGE, configElement.value))
        config.sec.delay_after_final_voltage_change = x
 
-       x = ConfigInteger(default=120)
+       x = ConfigInteger(default=120, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_BETWEEN_DISEQC_REPEATS, configElement.value))
        config.sec.delay_between_diseqc_repeats = x
 
-       x = ConfigInteger(default=50)
+       x = ConfigInteger(default=50, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_LAST_DISEQC_CMD, configElement.value))
        config.sec.delay_after_last_diseqc_command = x
 
-       x = ConfigInteger(default=50)
+       x = ConfigInteger(default=50, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_TONEBURST, configElement.value))
        config.sec.delay_after_toneburst = x
 
-       x = ConfigInteger(default=120)
+       x = ConfigInteger(default=120, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_SWITCH_CMDS, configElement.value))
        config.sec.delay_after_enable_voltage_before_switch_command = x
 
-       x = ConfigInteger(default=700)
+       x = ConfigInteger(default=700, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_BETWEEN_SWITCH_AND_MOTOR_CMD, configElement.value))
        config.sec.delay_between_switch_and_motor_command = x
 
-       x = ConfigInteger(default=150)
+       x = ConfigInteger(default=150, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MEASURE_IDLE_INPUTPOWER, configElement.value))
        config.sec.delay_after_voltage_change_before_measure_idle_inputpower = x
 
-       x = ConfigInteger(default=750)
+       x = ConfigInteger(default=750, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_MOTOR_CMD, configElement.value))
        config.sec.delay_after_enable_voltage_before_motor_command = x
 
-       x = ConfigInteger(default=150)
+       x = ConfigInteger(default=150, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_MOTOR_STOP_CMD, configElement.value))
        config.sec.delay_after_motor_stop_command = x
 
-       x = ConfigInteger(default=150)
+       x = ConfigInteger(default=150, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MOTOR_CMD, configElement.value))
        config.sec.delay_after_voltage_change_before_motor_command = x
 
-       x = ConfigInteger(default=120)
+       x = ConfigInteger(default=120, limits = (0, 999))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.MOTOR_RUNNING_TIMEOUT, configElement.value))
        config.sec.motor_running_timeout = x
 
-       x = ConfigInteger(default=1)
+       x = ConfigInteger(default=1, limits = (0, 5))
        x.addNotifier(lambda configElement: secClass.setParam(secClass.MOTOR_COMMAND_RETRIES, configElement.value))
        config.sec.motor_command_retries = x
 
index 246f38b..80d8101 100644 (file)
@@ -1 +1 @@
-SUBDIRS = SoftwareUpdate FrontprocessorUpgrade PositionerSetup ConfigurationBackup Satfinder SkinSelector
+SUBDIRS = SoftwareUpdate FrontprocessorUpgrade PositionerSetup ConfigurationBackup Satfinder SkinSelector SatelliteEquipmentControl
diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am
new file mode 100644 (file)
index 0000000..ad44f68
--- /dev/null
@@ -0,0 +1,7 @@
+installdir = $(LIBDIR)/enigma2/python/Plugins/SystemPlugins/SatelliteEquipmentControl
+
+install_PYTHON =       \
+       __init__.py \
+       plugin.py
+
diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/__init__.py b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py
new file mode 100644 (file)
index 0000000..192f851
--- /dev/null
@@ -0,0 +1,65 @@
+from Screens.Screen import Screen
+from Screens.MessageBox import MessageBox
+from Plugins.Plugin import PluginDescriptor
+
+from Components.ConfigList import ConfigListScreen
+from Components.ActionMap import ActionMap
+from Components.config import config
+from Components.NimManager import nimmanager as nimmgr
+
+class SecParameterSetup(Screen, ConfigListScreen):
+       skin = """
+               <screen position="100,100" size="560,400" title="Satellite Equipment Setup" >
+                       <widget name="config" position="10,10" size="540,390" />
+               </screen>"""
+       def __init__(self, session):
+               self.skin = SecParameterSetup.skin
+
+               self["actions"] = ActionMap(["SetupActions"],
+               {
+                       "ok": self.keySave,
+                       "cancel": self.keyCancel,
+               }, -2)
+
+               Screen.__init__(self, session)
+               list = [
+                       ("Delay after continuous tone change", config.sec.delay_after_continuous_tone_change),
+                       ("Delay after last voltage change", config.sec.delay_after_final_voltage_change),
+                       ("Delay between diseqc commands", config.sec.delay_between_diseqc_repeats),
+                       ("Delay after last diseqc command", config.sec.delay_after_last_diseqc_command),
+                       ("Delay after toneburst", config.sec.delay_after_toneburst),
+                       ("Delay after enable voltage before switch command", config.sec.delay_after_enable_voltage_before_switch_command),
+                       ("Delay after between switch and motor command", config.sec.delay_between_switch_and_motor_command),
+                       ("Delay after set voltage before measure motor power", config.sec.delay_after_voltage_change_before_measure_idle_inputpower),
+                       ("Delay after enable voltage before motor command", config.sec.delay_after_enable_voltage_before_motor_command),
+                       ("Delay after motor stop command", config.sec.delay_after_motor_stop_command),
+                       ("Delay after voltage change before motor command", config.sec.delay_after_voltage_change_before_motor_command),
+                       ("Motor running timeout", config.sec.motor_running_timeout),
+                       ("Motor command retries", config.sec.motor_command_retries) ]
+               ConfigListScreen.__init__(self, list)
+
+session = None
+
+def confirmed(answer):
+       global session
+       if answer:
+               session.open(SecParameterSetup)
+
+def SecSetupMain(Session, **kwargs):
+       global session
+       session = Session
+       session.openWithCallback(confirmed, MessageBox, _("Please do not change values when you not know what you do!"), MessageBox.TYPE_INFO)
+
+def SecSetupStart(menuid):
+       show = False
+       for slot in nimmgr.nimslots:
+               if slot.nimType == nimmgr.nimType["DVB-S"]:
+                       show = True
+                       break
+       if show and menuid == "scan":
+               return [(_("Satellite Equipment Setup"), SecSetupMain)]
+       else:
+               return []
+
+def Plugins(**kwargs):
+       return PluginDescriptor(name=_("Satellite Equipment Setup"), description="Setup your satellite equipment", where = PluginDescriptor.WHERE_SETUP, fnc=SecSetupStart)