fix LoadPixmap
[enigma2.git] / lib / python / Components / ChoiceList.py
1 from HTMLComponent import HTMLComponent
2 from GUIComponent import GUIComponent
3 from MenuList import MenuList
4 from Tools.Directories import SCOPE_SKIN_IMAGE, resolveFilename
5 from enigma import RT_HALIGN_LEFT, eListboxPythonMultiContent, eListbox, gFont
6 from Tools.LoadPixmap import LoadPixmap
7
8 def ChoiceEntryComponent(key, text):
9         res = [ text ]
10         if text[0] == "--":
11                 res.append((eListboxPythonMultiContent.TYPE_TEXT, 0, 00, 800, 25, 0, RT_HALIGN_LEFT, "-"*200))
12         else:
13                 res.append((eListboxPythonMultiContent.TYPE_TEXT, 32, 00, 800, 25, 0, RT_HALIGN_LEFT, text[0]))
14         
15                 png = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "key_" + key + "-fs8.png"))
16                 if png is not None:
17                         res.append((eListboxPythonMultiContent.TYPE_PIXMAP_ALPHATEST, 0, 0, 30, 20, png))
18         
19         return res
20
21 class ChoiceList(MenuList, HTMLComponent, GUIComponent):
22         def __init__(self, list, selection = 0):
23                 GUIComponent.__init__(self)
24                 self.l = eListboxPythonMultiContent()
25                 self.list = list
26                 self.l.setList(list)
27                 self.l.setFont(0, gFont("Regular", 20))
28                 self.l.setItemHeight(25)
29                 self.selection = selection
30
31         GUI_WIDGET = eListbox
32                 
33         def postWidgetCreate(self, instance):
34                 instance.setContent(self.l)
35                 self.moveToIndex(self.selection)