1 from HTMLComponent import *
2 from GUIComponent import *
6 class ServiceList(HTMLComponent, GUIComponent):
12 GUIComponent.__init__(self)
13 self.l = eListboxServiceContent()
16 self.mode = self.MODE_NORMAL
18 def setCurrent(self, ref):
19 self.l.setCurrent(ref)
22 r = eServiceReference()
27 self.instance.moveSelection(self.instance.moveUp)
30 self.instance.moveSelection(self.instance.moveDown)
32 def GUIcreate(self, parent):
33 self.instance = eListbox(parent)
34 self.instance.setContent(self.l)
35 self.setMode(self.mode)
43 def getRootServices(self):
44 serviceHandler = eServiceCenter.getInstance()
45 list = serviceHandler.list(self.root)
51 dest.append(s.toString())
56 def setNumberOffset(self, offset):
57 self.l.setNumberOffset(offset)
59 def setRoot(self, root):
64 # stuff for multiple marks (edit mode / later multiepg)
68 def isMarked(self, ref):
69 return self.l.isMarked(ref)
71 def addMarked(self, ref):
74 def removeMarked(self, ref):
75 self.l.removeMarked(ref)
80 ref = eServiceReference()
82 while i.markedQueryNext(ref) == 0:
83 marked.append(ref.toString())
84 ref = eServiceReference()
87 #just for movemode.. only one marked entry..
88 def setCurrentMarked(self, state):
89 self.l.setCurrentMarked(state)
91 def setMode(self, mode):
99 if mode == self.MODE_NORMAL:
100 self.instance.setItemHeight(28)
101 self.l.setVisualMode(eListboxServiceContent.visModeSimple)
102 self.l.setElementFont(self.l.celServiceName, gFont("Arial", 22))
103 self.l.setElementPosition(self.l.celServiceName, eRect(0, 0, self.instance.size().width(), 28))
105 self.instance.setItemHeight(28)
106 self.l.setElementFont(self.l.celServiceNumber, gFont("Arial", 20))
107 self.l.setElementPosition(self.l.celServiceNumber, eRect(0, 0, 40, 28))
108 self.l.setElementFont(self.l.celServiceName, gFont("Arial", 22))
109 self.l.setElementPosition(self.l.celServiceName, eRect(50, 0, self.instance.size().width()-50, 28))
110 self.l.setElementFont(self.l.celServiceInfo, gFont("Arial", 18))
111 self.l.setVisualMode(eListboxServiceContent.visModeComplex)