1 from Screen import Screen
2 from Components.ServiceScan import ServiceScan as CScan
3 from Components.ProgressBar import ProgressBar
4 from Components.Label import Label
5 from Components.ActionMap import ActionMap
6 from Components.FIFOList import FIFOList
7 from Components.Sources.FrontendInfo import FrontendInfo
8 from Components.PluginComponent import plugins
9 from Plugins.Plugin import PluginDescriptor
11 class ServiceScanSummary(Screen):
13 <screen position="0,0" size="132,64">
14 <widget name="Title" position="6,4" size="120,42" font="Regular;16" transparent="1" />
15 <widget name="scan_progress" position="6,50" zPosition="1" borderWidth="1" size="56,12" backgroundColor="dark" />
16 <widget name="Service" position="6,22" size="120,26" font="Regular;12" transparent="1" />
19 def __init__(self, session, parent, showStepSlider = True):
20 Screen.__init__(self, session, parent)
22 self["Title"] = Label(parent.title or "ServiceScan")
23 self["Service"] = Label("No Service")
24 self["scan_progress"] = ProgressBar()
26 def updateProgress(self, value):
27 self["scan_progress"].setValue(value)
29 def updateService(self, name):
30 self["Service"].setText(name)
32 class ServiceScan(Screen):
36 if self["scan"].isDone():
42 def __init__(self, session, scanList):
43 Screen.__init__(self, session)
45 self.scanList = scanList
47 self.session.nav.stopService()
49 self["scan_progress"] = ProgressBar()
50 self["scan_state"] = Label(_("scan state"))
51 self["network"] = Label()
52 self["transponder"] = Label()
54 self["pass"] = Label("")
55 self["servicelist"] = FIFOList(len=10)
56 self["FrontendInfo"] = FrontendInfo()
58 self["actions"] = ActionMap(["OkCancelActions"],
64 self.onFirstExecBegin.append(self.doServiceScan)
66 def doServiceScan(self):
67 self["scan"] = CScan(self["scan_progress"], self["scan_state"], self["servicelist"], self["pass"], self.scanList, self["network"], self["transponder"], self["FrontendInfo"], self.session.summary)
69 def createSummary(self):
70 print "ServiceScanCreateSummary"
71 return ServiceScanSummary