From 755936c5114029219a6800b81b74ffdfbcbbfe30 Mon Sep 17 00:00:00 2001 From: acid-burn Date: Tue, 13 Oct 2009 23:02:22 +0200 Subject: [PATCH] Components/GUISkin.py: - add possibility to access the Screen title from inside the skin without the need to declare it inside every Screen. Just use self.setTitle(_("yourTitle)") inside your Screens onLayoutFinish to set the Title and access it from your skinfile over for example: if needed like inside fullscreen screens where no Border is drawn. --- lib/python/Components/GUISkin.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) mode change 100644 => 100755 lib/python/Components/GUISkin.py diff --git a/lib/python/Components/GUISkin.py b/lib/python/Components/GUISkin.py old mode 100644 new mode 100755 index 1bd27297..4ee8a4a3 --- a/lib/python/Components/GUISkin.py +++ b/lib/python/Components/GUISkin.py @@ -1,11 +1,13 @@ from GUIComponent import GUIComponent from skin import applyAllAttributes from Tools.CList import CList +from Sources.StaticText import StaticText class GUISkin: __module__ = __name__ def __init__(self): + self["Title"] = StaticText() self.onLayoutFinish = [ ] self.summaries = CList() self.instance = None @@ -63,9 +65,14 @@ class GUISkin: def setTitle(self, title): self.instance.setTitle(title) - self.title = title + self["Title"].text = title self.summaries.setTitle(title) + def getTitle(self): + return self["Title"].text + + title = property(getTitle, setTitle) + def setDesktop(self, desktop): self.desktop = desktop @@ -88,6 +95,6 @@ class GUISkin: # we need to make sure that certain attributes come last self.skinAttributes.sort(key=lambda a: {"position": 1}.get(a[0], 0)) - self.title = title + self["Title"].text = title applyAllAttributes(self.instance, self.desktop, self.skinAttributes, self.scale) self.createGUIScreen(self.instance, self.desktop) -- 2.30.2