working on move, edit mode and add remove service to context menu
[enigma2.git] / lib / python / Screens / ScanSetup.py
index 4eb05976629c4b2aa5632bbd996ea2fbc822ecec..6bad9a5c0fde9f797f6119bea54500937064cb33 100644 (file)
@@ -86,12 +86,29 @@ class ScanSetup(Screen):
         
         # multi sat scan
         if (config.scan.type.value == 2):
-            for sat in nimmanager.satList:
-                self.list.append(getConfigListEntry(sat[0], config.scan.scansat[sat[1]]))                
+            # if (norotor)
+            tlist = []
+            SatList = nimmanager.getSatListForNim(config.scan.nims.value)
+
+            for x in SatList:
+                if self.Satexists(tlist, x[1]) == 0:
+                    tlist.append(x[1])
+                    sat = configElement_nonSave(x[1], configSelection, 0, ("Enable", "Disable"))
+                    self.list.append(getConfigListEntry(nimmanager.getSatDescription(x[1]), sat))
+            
+            # if (rotor):
+           # for sat in nimmanager.satList:
+            #    self.list.append(getConfigListEntry(sat[0], config.scan.scansat[sat[1]]))                
                 
         self["config"].list = self.list
         self["config"].l.setList(self.list)
         
+    def Satexists(self, tlist, pos):
+        for x in tlist:
+            if x == pos:
+                return 1
+        return 0    
+    
     def newConfig(self):
         print self["config"].getCurrent()
         if self["config"].getCurrent()[0] == "Type of scan":
@@ -179,6 +196,8 @@ class ScanSimple(Screen):
                for x in self.list:
                        if x[1].parent.value == 0:
                                print "   " + str(x[1].parent.configPath)
+
+               self.session.openWithCallback(self.keyCancel, ServiceScan)        
                
        def keyCancel(self):
                self.close()
@@ -189,6 +208,12 @@ class ScanSimple(Screen):
        def keyRight(self):
                self["config"].handleKey(config.key["nextElement"])
 
+       def Satexists(self, tlist, pos):
+               for x in tlist:
+                       if x == pos:
+                               return 1
+               return 0
+
        def __init__(self, session):
                Screen.__init__(self, session)
 
@@ -201,12 +226,15 @@ class ScanSimple(Screen):
                }, -1)
                 
                self.list = []
+               tlist = []
                
                SatList = nimmanager.getConfiguredSats()
 
                for x in SatList:
-                       sat = configElement_nonSave(x, configSelection, 0, ("Enable", "Disable"))
-                       self.list.append(getConfigListEntry(nimmanager.getSatDescription(x), sat))
+                       if self.Satexists(tlist, x) == 0:
+                               tlist.append(x)
+                               sat = configElement_nonSave(x, configSelection, 0, ("Enable", "Disable"))
+                               self.list.append(getConfigListEntry(nimmanager.getSatDescription(x), sat))
 
                self["config"] = ConfigList(self.list)
                self["header"] = Label("Automatic Scan")