diff options
| -rw-r--r-- | data/startwizard.xml | 15 | ||||
| -rw-r--r-- | lib/python/Components/NimManager.py | 16 | ||||
| -rw-r--r-- | lib/python/Screens/ScanSetup.py | 4 |
3 files changed, 30 insertions, 5 deletions
diff --git a/data/startwizard.xml b/data/startwizard.xml index c004a5e6..70a6e0dc 100644 --- a/data/startwizard.xml +++ b/data/startwizard.xml @@ -73,7 +73,8 @@ self.selectKey("RIGHT") <step id="satlistsquestion"> <text value="Do you want to install default sat lists?" /> <condition> -self.condition = config.misc.startwizard.doservicescan.value +from Components.NimManager import nimmanager +self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected() </condition> <code> self.hideRc() @@ -87,7 +88,8 @@ self.hideRc() <step id="scanquestion"> <text value="Do you want to do a service scan?" /> <condition> -self.condition = config.misc.startwizard.doservicescan.value +from Components.NimManager import nimmanager +self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected() </condition> <code> self.hideRc() @@ -100,21 +102,24 @@ self.hideRc() </step> <step id="scan" nextstep="finisheddefaultsatlists"> <condition> -self.condition = config.misc.startwizard.doservicescan.value +from Components.NimManager import nimmanager +self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected() </condition> <text value="What do you want to scan?" /> <config screen="ScanSimple" module="ScanSetup" type="ConfigList" /> </step> <step id="manualscan"> <condition> -self.condition = config.misc.startwizard.doservicescan.value +from Components.NimManager import nimmanager +self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected() </condition> <text value="What do you want to scan?" /> <config screen="ScanSetup" module="ScanSetup" type="ConfigList" /> </step> <step id="nextscan"> <condition> -self.condition = config.misc.startwizard.doservicescan.value +from Components.NimManager import nimmanager +self.condition = config.misc.startwizard.doservicescan.value and nimmanager.somethingConnected() </condition> <text value="Do you want to do another manual service scan?" /> <list> diff --git a/lib/python/Components/NimManager.py b/lib/python/Components/NimManager.py index c278213c..70cde47c 100644 --- a/lib/python/Components/NimManager.py +++ b/lib/python/Components/NimManager.py @@ -759,6 +759,22 @@ class NimManager: def getSatList(self): return self.satList + + # returns True if something is configured to be connected to this nim + # if slotid == -1, returns if something is connected to ANY nim + def somethingConnected(self, slotid = -1): + if (slotid == -1): + connected = False + for id in range(self.getSlotCount()): + if self.somethingConnected(id): + connected = True + return connected + else: + nim = config.Nims[slotid] + configMode = nim.configMode.value + + if self.nim_slots[slotid].isCompatible("DVB-S") or self.nim_slots[slotid].isCompatible("DVB-T") or self.nim_slots[slotid].isCompatible("DVB-C"): + return not (configMode == "nothing") def getSatListForNim(self, slotid): list = [] diff --git a/lib/python/Screens/ScanSetup.py b/lib/python/Screens/ScanSetup.py index 2e48a969..d0af8f7e 100644 --- a/lib/python/Screens/ScanSetup.py +++ b/lib/python/Screens/ScanSetup.py @@ -883,6 +883,10 @@ class ScanSimple(ConfigListScreen, Screen, CableTransponderSearchSupport): need_scan = True print x, "not in ", known_networks known_networks.append(x) + + # don't offer to scan nims if nothing is connected + if not nimmanager.somethingConnected(nim.slot): + need_scan = False if need_scan: nims_to_scan.append(nim) |
