diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-03-13 23:22:55 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-03-13 23:22:55 +0000 |
| commit | 94f8049fca5c1522aef72334ab4f4697600618c0 (patch) | |
| tree | 2d74302fba4c111bcfecc91cc7a8b9b167912ba2 /lib/python | |
| parent | 707680758061af81a33f094241c1f74a6c932a8e (diff) | |
| download | enigma2-94f8049fca5c1522aef72334ab4f4697600618c0.tar.gz enigma2-94f8049fca5c1522aef72334ab4f4697600618c0.zip | |
dont ask for scanning second nim in automatic scan, when it is not meaningful
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Components/NimManager.py | 5 | ||||
| -rw-r--r-- | lib/python/Screens/ScanSetup.py | 26 |
2 files changed, 25 insertions, 6 deletions
diff --git a/lib/python/Components/NimManager.py b/lib/python/Components/NimManager.py index ac73c00e..8769aae9 100644 --- a/lib/python/Components/NimManager.py +++ b/lib/python/Components/NimManager.py @@ -557,7 +557,10 @@ class NimManager: nimText += ("DVB-S", "DVB-C", "DVB-T")[slot.nimType] + ")" list.append((nimText, slot)) return list - + + def getNimConfigMode(self, slotid): + return currentConfigSelectionElement(config.Nims[slotid].configMode) + def getSatListForNim(self, slotid): list = [] if (self.getNimType(slotid) == self.nimType["DVB-S"]): diff --git a/lib/python/Screens/ScanSetup.py b/lib/python/Screens/ScanSetup.py index 9541c60f..0229d5e8 100644 --- a/lib/python/Screens/ScanSetup.py +++ b/lib/python/Screens/ScanSetup.py @@ -5,7 +5,7 @@ from Components.ActionMap import NumberActionMap from Components.ConfigList import ConfigList from Components.NimManager import nimmanager from Components.Label import Label -from enigma import eDVBFrontendParametersSatellite, eComponentScan +from enigma import eDVBFrontendParametersSatellite, eComponentScan, eDVBSatelliteEquipmentControl def getInitialTransponderList(tlist, pos): list = nimmanager.getTransponders(pos) @@ -408,6 +408,19 @@ class ScanSimple(Screen): return 1 return 0 + def ScanNimTwoNeeded(self): + if nimmanager.getNimType(0) != nimmanager.getNimType(1): + return True + if nimmanager.getNimType(0) == nimmanager.nimType["DVB-S"]: #two dvb-s nims + if nimmanager.getNimConfigMode(1) in ["loopthrough", "satposdepends", "equal", "nothing"]: + return False + sec = eDVBSatelliteEquipmentControl.getInstance() + if sec is not None: + different_satellites = sec.get_different_satellites(0,1) + if different_satellites is None:# or not len(different_satellites): + return False + return True + def __init__(self, session): Screen.__init__(self, session) @@ -422,10 +435,13 @@ class ScanSimple(Screen): self.list = [] tlist = [] - for slotid in range(nimmanager.getNimSocketCount()): - if nimmanager.getNimType(slotid) != nimmanager.nimType["DVB-S"] or currentConfigSelectionElement(config.Nims[slotid].configMode) != "nothing": - nim = configElement_nonSave(slotid, configSelection, 0, (("yes", _("yes")), ("no", _("no")))) - self.list.append(getConfigListEntry(_("Scan NIM") + " " + str(slotid) + " (" + nimmanager.getNimTypeName(slotid) + ")", nim)) + nimcount = nimmanager.getNimSocketCount() + if nimcount > 0: + nim = configElement_nonSave(0, configSelection, 0,(("yes", _("yes")),("no", _("no")))) + self.list.append(getConfigListEntry(_("Scan NIM") + " 0 (" + nimmanager.getNimTypeName(0) + ")", nim)) + if nimcount > 1 and self.ScanNimTwoNeeded(): + nim = configElement_nonSave(1, configSelection, 0, (("yes", _("yes")), ("no", _("no")))) + self.list.append(getConfigListEntry(_("Scan NIM") + " 1 (" + nimmanager.getNimTypeName(1) + ")", nim)) self["config"] = ConfigList(self.list) self["header"] = Label(_("Automatic Scan")) |
