X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/17dacebf2ff4f85f23c96398287c0b1b23df6342..3ba3cde02a677e536283fb8cf126f0f80d6c77b9:/lib/python/Screens/ServiceScan.py diff --git a/lib/python/Screens/ServiceScan.py b/lib/python/Screens/ServiceScan.py index c1059539..1fd32e06 100644 --- a/lib/python/Screens/ServiceScan.py +++ b/lib/python/Screens/ServiceScan.py @@ -3,27 +3,84 @@ from Components.ServiceScan import ServiceScan as CScan from Components.ProgressBar import ProgressBar from Components.Label import Label from Components.ActionMap import ActionMap +from Components.FIFOList import FIFOList +from Components.Sources.FrontendInfo import FrontendInfo + +class ServiceScanSummary(Screen): + skin = """ + + + + + """ + + def __init__(self, session, parent, showStepSlider = True): + Screen.__init__(self, session, parent) + + self["Title"] = Label(parent.title or "ServiceScan") + self["Service"] = Label("No Service") + self["scan_progress"] = ProgressBar() + + def updateProgress(self, value): + self["scan_progress"].setValue(value) + + def updateService(self, name): + self["Service"].setText(name) class ServiceScan(Screen): + def ok(self): print "ok" if self["scan"].isDone(): + self.resetTimeout() self.close() def cancel(self): + self.resetTimeout() self.close() + + def setTimeout(self): + try: + self.oldtimeoutvalue = open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "r").readline() + open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "w").write("0") + except: + print "[info] no /sys/module/dvb_core/parameters/dvb_shutdown_timeout available" + + def resetTimeout(self): + try: + open("/sys/module/dvb_core/parameters/dvb_shutdown_timeout", "w").write(self.oldtimeoutvalue) + except: + print "[info] no /sys/module/dvb_core/parameters/dvb_shutdown_timeout available" - def __init__(self, session, transponders): + def __init__(self, session, scanList): Screen.__init__(self, session) + self.scanList = scanList + self.session.nav.stopService() self["scan_progress"] = ProgressBar() - self["scan_state"] = Label("scan state") - self["scan"] = CScan(self["scan_progress"], self["scan_state"], transponders) + self["scan_state"] = Label(_("scan state")) + self["network"] = Label() + self["transponder"] = Label() + self["pass"] = Label("") + self["servicelist"] = FIFOList(len=10) + self["FrontendInfo"] = FrontendInfo() + self["actions"] = ActionMap(["OkCancelActions"], { "ok": self.ok, "cancel": self.cancel }) + + self.setTimeout() + + self.onFirstExecBegin.append(self.doServiceScan) + + def doServiceScan(self): + self["scan"] = CScan(self["scan_progress"], self["scan_state"], self["servicelist"], self["pass"], self.scanList, self["network"], self["transponder"], self["FrontendInfo"], self.session.summary) + + def createSummary(self): + print "ServiceScanCreateSummary" + return ServiceScanSummary \ No newline at end of file