X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/bbfcb7ea1f040d030277e2b6f2efa9ea0967bf2b..3ab5929ec75d0256d37139b05f9fdc99a465eec0:/lib/python/Components/Converter/TemplatedMultiContent.py diff --git a/lib/python/Components/Converter/TemplatedMultiContent.py b/lib/python/Components/Converter/TemplatedMultiContent.py index 5f1d4f24..b86d94bf 100644 --- a/lib/python/Components/Converter/TemplatedMultiContent.py +++ b/lib/python/Components/Converter/TemplatedMultiContent.py @@ -4,8 +4,8 @@ class TemplatedMultiContent(StringList): """Turns a python tuple list into a multi-content list which can be used in a listbox renderer.""" def __init__(self, args): StringList.__init__(self, args) - from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_LEFT, RT_HALIGN_CENTER, RT_HALIGN_RIGHT, RT_VALIGN_TOP, RT_VALIGN_CENTER, RT_VALIGN_BOTTOM - from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmap, MultiContentEntryPixmapAlphaTest, MultiContentTemplateColor + from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_LEFT, RT_HALIGN_CENTER, RT_HALIGN_RIGHT, RT_VALIGN_TOP, RT_VALIGN_CENTER, RT_VALIGN_BOTTOM, RT_WRAP + from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmap, MultiContentEntryPixmapAlphaTest, MultiContentEntryPixmapAlphaBlend, MultiContentTemplateColor, MultiContentEntryProgress l = locals() del l["self"] # cleanup locals a bit del l["args"] @@ -18,13 +18,13 @@ class TemplatedMultiContent(StringList): assert "template" in self.template or "default" in self.template["templates"] # we need to have a default template if not "template" in self.template: # default template can be ["template"] or ["templates"]["default"] - self.template["template"] = self.template["templates"]["default"] + self.template["template"] = self.template["templates"]["default"][1] + self.template["itemHeight"] = self.template["template"][0] def changed(self, what): if not self.content: from enigma import eListboxPythonMultiContent self.content = eListboxPythonMultiContent() - self.content.setItemHeight(self.template["itemHeight"]) self.setTemplate() # also setup fonts (also given by source) @@ -37,7 +37,7 @@ class TemplatedMultiContent(StringList): if what[0] == self.CHANGED_SPECIFIC and what[1] == "style": self.setTemplate() return - + if self.source: self.content.setList(self.source.list) self.setTemplate() @@ -50,11 +50,15 @@ class TemplatedMultiContent(StringList): if style == self.active_style: return # style did not change - # if skin defined "templates", that means that it defines multiple styles in a dict. template should still be a default + # if skin defined "templates", that means that it defines multiple styles in a dict. template should still be a default templates = self.template.get("templates") template = self.template.get("template") + itemheight = self.template["itemHeight"] - if templates and style: # if we have a custom style defined in the source, and different templates in the skin, look it up - template = templates.get(self.source.style, template) # default to default template + if templates and style and style in templates: # if we have a custom style defined in the source, and different templates in the skin, look it up + template = templates[style][1] + itemheight = templates[style][0] self.content.setTemplate(template) + + self.content.setItemHeight(itemheight)