fix order for cable setup
[enigma2.git] / lib / python / Screens / ScanSetup.py
index 60553c6245f1e739b5ddf7284c5281752b69abe6..0f4744da884dc571b61487d422b5dde8073285ad 100644 (file)
@@ -18,7 +18,7 @@ def getInitialTransponderList(tlist, pos):
                        parm = eDVBFrontendParametersSatellite()
                        parm.frequency = x[1]
                        parm.symbol_rate = x[2]
-                       parm.polarisation = x[3] # eDVBFrontendParametersSatellite.Polarisation.Vertical
+                       parm.polarisation = x[3]#lookup_sat_polarisation[x[3]] # eDVBFrontendParametersSatellite.Polarisation.Vertical
                        parm.fec = x[4]                 # eDVBFrontendParametersSatellite.FEC.f3_4;
                        #parm.fec = 6                                   # AUTO
                        #parm.inversion = 1     #eDVBFrontendParametersSatellite.Inversion.Off;
@@ -26,6 +26,21 @@ def getInitialTransponderList(tlist, pos):
                        parm.orbital_position = pos
                        tlist.append(parm)
 
+def getInitialCableTransponderList(tlist, cable):
+       print "cable", cable
+       list = nimmanager.getTranspondersCable(cable)
+
+       for x in list:
+               if x[0] == 1:           #CABLE
+                       print "[ScanSetup] cable-transponder to add:", x
+                       parm = eDVBFrontendParametersCable()
+                       parm.frequency = x[1]
+                       parm.symbol_rate = x[2]
+                       parm.modulation = x[3] # AUTO
+                       parm.fec_inner = 6 # AUTO
+                       parm.inversion = x[4] # AUTO
+                       tlist.append(parm)
+
 class ScanSetup(Screen):
        def __init__(self, session):
                Screen.__init__(self, session)
@@ -180,10 +195,10 @@ class ScanSetup(Screen):
                        config.scan.sat.fec = configElement_nonSave("config.scan.sat.fec", configSelection, 7, (("auto", _("Auto")), ("1_2", "1/2"), ("2_3", "2/3"), ("3_4", "3/4"), ("5_6", "5/6"), ("7_8", "7/8"), ("none", _("None"))))
 
                        # cable
-                       config.scan.cab.frequency = configElement_nonSave("config.scan.cab.frequency", configSequence, [466], configsequencearg.get("INTEGER", (50, 9999)))
+                       config.scan.cab.frequency = configElement_nonSave("config.scan.cab.frequency", configSequence, [466], configsequencearg.get("INTEGER", (50, 999)))
                        config.scan.cab.inversion = configElement_nonSave("config.scan.cab.inversion", configSelection, 2, (("off", _("off")), ("on", _("on")), ("auto", _("Auto"))))
-                       config.scan.cab.modulation = configElement_nonSave("config.scan.cab.modulation", configSelection, 2, (("16qam", "16-QAM"), ("32qam", "32-QAM"), ("64qam", "64-QAM"), ("128qam", "128-QAM"), ("256qam", "256-QAM"), ("auto", _("Auto"))))
-                       config.scan.cab.fec = configElement_nonSave("config.scan.cab.fec", configSelection, 9, (("none", _("None")), ("1_2", "1/2"), ("2_3", "2/3"), ("3_4", "3/4"), ("5_6", "5/6"), ("7_8", "7/8"), ("auto", _("Auto"))))
+                       config.scan.cab.modulation = configElement_nonSave("config.scan.cab.modulation", configSelection, 2, (("auto", _("Auto")), ("16qam", "16-QAM"), ("32qam", "32-QAM"), ("64qam", "64-QAM"), ("128qam", "128-QAM"), ("256qam", "256-QAM")))
+                       config.scan.cab.fec = configElement_nonSave("config.scan.cab.fec", configSelection, 0, (("auto", _("Auto")), ("1_2", "1/2"), ("2_3", "2/3"), ("3_4", "3/4"), ("5_6", "5/6"), ("7_8", "7/8"), ("8_9", "8/9"), ("none", _("None"))))
                        config.scan.cab.symbolrate = configElement_nonSave("config.scan.cab.symbolrate", configSequence, [6900], configsequencearg.get("INTEGER", (1, 9999)))
 
                        # terrestial
@@ -267,36 +282,47 @@ class ScanSetup(Screen):
        def keyGo(self):
                tlist = []
                flags = 0
-               if currentConfigSelectionElement(config.scan.type) == "single_transponder":
-                       if (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-S"]):
+               if (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-S"]):
+                       if currentConfigSelectionElement(config.scan.type) == "single_transponder":
+
                                self.addSatTransponder(tlist, config.scan.sat.frequency.value[0],
                                                                                          config.scan.sat.symbolrate.value[0],
                                                                                          config.scan.sat.polarization.value,
                                                                                          config.scan.sat.fec.value,
                                                                                          config.scan.sat.inversion.value,
                                                                                          self.satList[config.scan.nims.value][config.scan.satselection[config.scan.nims.value].value][1])
-                       elif (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-C"]):
+                       elif currentConfigSelectionElement(config.scan.type) == "single_satellite":
+                               getInitialTransponderList(tlist, int(self.satList[config.scan.nims.value][config.scan.satselection[config.scan.nims.value].value][1]))
+                               flags |= eComponentScan.scanNetworkSearch
+       
+                       elif currentConfigSelectionElement(config.scan.type) == "multisat":
+                               SatList = nimmanager.getSatListForNim(config.scan.nims.value)
+       
+                               for x in self.multiscanlist:
+                                       if x[1].parent.value == 0:
+                                               print "   " + str(x[1].parent.configPath)
+                                               getInitialTransponderList(tlist, x[1].parent.configPath)
+                               flags |= eComponentScan.scanNetworkSearch
+
+               elif (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-C"]):
+                       if currentConfigSelectionElement(config.scan.typecable) == "single_transponder":
                                self.addCabTransponder(tlist, config.scan.cab.frequency.value[0],
                                                                                          config.scan.cab.symbolrate.value[0],
                                                                                          config.scan.cab.modulation.value,
                                                                                          config.scan.cab.fec.value,
                                                                                          config.scan.cab.inversion.value)
-                       elif (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-T"]):
-                               self.addTerTransponder(tlist, 
-                                                                                         config.scan.ter.frequency.value[0])
+                       elif currentConfigSelectionElement(config.scan.typecable) == "complete":
+                               getInitialCableTransponderList(tlist, nimmanager.getCableDescription(config.scan.nims.value))
+                               flags |= eComponentScan.scanNetworkSearch
 
-               elif currentConfigSelectionElement(config.scan.type) == single_satellite:
-                       getInitialTransponderList(tlist, int(self.satList[config.scan.nims.value][config.scan.satselection[config.scan.nims.value].value][1]))
-                       flags |= eComponentScan.scanNetworkSearch
+               elif (nimmanager.getNimType(config.scan.nims.value) == nimmanager.nimType["DVB-T"]):
+                       if currentConfigSelectionElement(config.scan.typeterrestrial) == "single_transponder":
+                               self.addTerTransponder(tlist, 
+                                                                                 config.scan.ter.frequency.value[0])
+                       if currentConfigSelectionElement(config.scan.typeterrestrial) == "complete":
+                               pass
 
-               elif currentConfigSelectionElement(config.scan.type) == "multisat":
-                       SatList = nimmanager.getSatListForNim(config.scan.nims.value)
 
-                       for x in self.multiscanlist:
-                               if x[1].parent.value == 0:
-                                       print "   " + str(x[1].parent.configPath)
-                                       getInitialTransponderList(tlist, x[1].parent.configPath)
-                       flags |= eComponentScan.scanNetworkSearch
 
                for x in self["config"].list:
                        x[1].save()