1 from HTMLComponent import *
2 from GUIComponent import *
4 from enigma import eListboxPythonMultiContent, eListbox, gFont
6 from enigma import eServiceReference, eServiceCenter, \
7 eServiceCenterPtr, iListableServicePtr, \
8 iStaticServiceInformationPtr
27 def MovieListEntry(serviceref, serviceHandler):
30 info = iStaticServiceInformationPtr()
32 if serviceHandler.info(serviceref, info):
33 # ignore service which refuse to info
37 res.append((0, 0, 400, 30, 0, RT_HALIGN_LEFT, info.getName(serviceref)))
38 res.append((0, 30, 200, 20, 1, RT_HALIGN_LEFT, "Toller Film"))
39 res.append((0, 50, 200, 20, 1, RT_HALIGN_LEFT, "Aufgenommen: irgendwann"))
40 res.append((200, 50, 200, 20, 1, RT_HALIGN_RIGHT, "1232MB"))
44 class MovieList(HTMLComponent, GUIComponent):
45 def __init__(self, root):
46 GUIComponent.__init__(self)
47 self.l = eListboxPythonMultiContent()
49 self.l.setList(self.list)
50 self.l.setFont(0, gFont("Arial", 30))
51 self.l.setFont(1, gFont("Arial", 18))
54 return self.l.getCurrentSelection()
56 def GUIcreate(self, parent):
57 self.instance = eListbox(parent)
58 self.instance.setContent(self.l)
59 self.instance.setItemHeight(75)
62 self.instance.setContent(None)
66 # this lists our root service, then building a
71 serviceHandler = eServiceCenterPtr()
72 eServiceCenter.getInstance(serviceHandler)
73 list = iListableServicePtr()
75 if serviceHandler.list(root, list):
76 raise "listing of movies failed"
80 s = eServiceReference()
89 self.list.append(MovieListEntry(ref, serviceHandler))