X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/98c4b5bb004e9297bffa8e1c3572572741fda933..9248bf86cddef4cf3904748bcd94ddabef68f8c7:/lib/python/Components/GUISkin.py diff --git a/lib/python/Components/GUISkin.py b/lib/python/Components/GUISkin.py index 982cce31..406cd097 100644 --- a/lib/python/Components/GUISkin.py +++ b/lib/python/Components/GUISkin.py @@ -6,21 +6,24 @@ class GUISkin: def __init__(self): self.onLayoutFinish = [ ] - pass + self.summaries = [ ] def createGUIScreen(self, parent, desktop): - for (name, val) in self.items(): + for val in self.values() + self.renderer: if isinstance(val, GUIComponent): val.GUIcreate(parent) val.applySkin(desktop) for w in self.additionalWidgets: w.instance = w.widget(parent) - w.instance.thisown = 0 + # w.instance.thisown = 0 applyAllAttributes(w.instance, desktop, w.skinAttributes) for f in self.onLayoutFinish: - exec(f) in globals(), locals() + if type(f) is not type(self.close): # is this the best way to do this? + exec(f) in globals(), locals() + else: + f() def deleteGUIScreen(self): for (name, val) in self.items(): @@ -29,3 +32,19 @@ class GUISkin: def close(self): self.deleteGUIScreen() + + def createSummary(self): + return None + + def addSummary(self, summary): + self.summaries.append(summary) + + def removeSummary(self, summary): + self.summaries.remove(summary) + + def setTitle(self, title): + self.instance.setTitle(title) + self.title = title + + for x in self.summaries: + x.setTitle(title)