fix rfmod audio (on and off was swapped)
[enigma2.git] / lib / python / Components / RFmod.py
index 5ea88ec..be088a5 100644 (file)
@@ -1,16 +1,20 @@
-from config import *
-from enigma import *
+from config import config, ConfigSelection, ConfigSubsection, ConfigOnOff, ConfigSlider
+from enigma import eRFmod
+
+# CHECK ME.
+RFMOD_CHANNEL_MIN = 21
+RFMOD_CHANNEL_MAX = 69 + 1
 
 class RFmod:
        def __init__(self):
                pass
 
        def setFunction(self, value):
-               eRFmod.getInstance().setFunction(value)
+               eRFmod.getInstance().setFunction(not value)
        def setTestmode(self, value):
                eRFmod.getInstance().setTestmode(value)
        def setSoundFunction(self, value):
-               eRFmod.getInstance().setSoundFunction(value)
+               eRFmod.getInstance().setSoundFunction(not value)
        def setSoundCarrier(self, value):
                eRFmod.getInstance().setSoundCarrier(value)
        def setChannel(self, value):
@@ -20,13 +24,13 @@ class RFmod:
 
 def InitRFmod():
 
-       config.rfmod = ConfigSubsection();
-       config.rfmod.enable = configElement("config.rfmod.enable", configSelection, 1, (("enable", _("Enable")), ("disable", _("Disable"))) );
-       config.rfmod.test = configElement("config.rfmod.test", configSelection, 0, (("disable", _("Disable")), ("enable", _("Enable"))) );
-       config.rfmod.sound = configElement("config.rfmod.sound", configSelection, 0, (("enable", _("Enable")), ("disable", _("Disable"))) );
-       config.rfmod.soundcarrier = configElement("config.rfmod.soundcarrier", configSelection, 1, ("4.5 MHz", "5.5 MHz", "6.0 MHz", "6.5 MHz") );
-       config.rfmod.channel = configElement("config.rfmod.channel", configSelection, 6, ("30", "31", "32", "33", "34", "35", "36", "37", "38", "39") );
-       config.rfmod.finetune = configElement("config.rfmod.finetune", ConfigSlider, 5, "");
+       config.rfmod = ConfigSubsection()
+       config.rfmod.enable = ConfigOnOff(default=False)
+       config.rfmod.test = ConfigOnOff(default=False)
+       config.rfmod.sound = ConfigOnOff(default=True)
+       config.rfmod.soundcarrier = ConfigSelection(choices=[("4500","4.5 MHz"), ("5500", "5.5 MHz"), ("6000", "6.0 MHz"), ("6500", "6.5 MHz")], default="5500")
+       config.rfmod.channel = ConfigSelection(default = "36", choices = ["%d" % x for x in range(RFMOD_CHANNEL_MIN, RFMOD_CHANNEL_MAX)])
+       config.rfmod.finetune = ConfigSlider(default=5, limits=(1, 10))
 
        iRFmod = RFmod()
 
@@ -37,9 +41,9 @@ def InitRFmod():
        def setSoundFunction(configElement):
                iRFmod.setSoundFunction(configElement.value);
        def setSoundCarrier(configElement):
-               iRFmod.setSoundCarrier(configElement.value);
+               iRFmod.setSoundCarrier(configElement.index);
        def setChannel(configElement):
-               iRFmod.setChannel(configElement.value +  30);
+               iRFmod.setChannel(int(configElement.value));
        def setFinetune(configElement):
                iRFmod.setFinetune(configElement.value - 5);