diff options
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Components/GUISkin.py | 5 | ||||
| -rw-r--r-- | lib/python/Components/Renderer/Makefile.am | 2 | ||||
| -rw-r--r-- | lib/python/Components/Renderer/Pig.py | 37 |
3 files changed, 43 insertions, 1 deletions
diff --git a/lib/python/Components/GUISkin.py b/lib/python/Components/GUISkin.py index 39499c77..0cf4d027 100644 --- a/lib/python/Components/GUISkin.py +++ b/lib/python/Components/GUISkin.py @@ -35,9 +35,14 @@ class GUISkin: f() def deleteGUIScreen(self): + seenFakeSource = False for (name, val) in self.items(): + if name == "fake": + seenFakeSource = True if isinstance(val, GUIComponent): val.GUIdelete() + if seenFakeSource: + del self["fake"] def close(self): self.deleteGUIScreen() diff --git a/lib/python/Components/Renderer/Makefile.am b/lib/python/Components/Renderer/Makefile.am index c711ed42..eb55ad62 100644 --- a/lib/python/Components/Renderer/Makefile.am +++ b/lib/python/Components/Renderer/Makefile.am @@ -2,4 +2,4 @@ installdir = $(LIBDIR)/enigma2/python/Components/Renderer install_PYTHON = \ __init__.py Label.py Progress.py Listbox.py Renderer.py Pixmap.py \ - FixedLabel.py PositionGauge.py Canvas.py Picon.py + FixedLabel.py PositionGauge.py Canvas.py Picon.py Pig.py diff --git a/lib/python/Components/Renderer/Pig.py b/lib/python/Components/Renderer/Pig.py new file mode 100644 index 00000000..99488e4a --- /dev/null +++ b/lib/python/Components/Renderer/Pig.py @@ -0,0 +1,37 @@ +## +## P(icture)i(n)g(raphics) renderer +## +from Renderer import Renderer +from enigma import eVideoWidget, eSize, ePoint + +class Pig(Renderer): + def __init__(self): + Renderer.__init__(self) + self.Position = self.Size = None + + GUI_WIDGET = eVideoWidget + + def postWidgetCreate(self, instance): + instance.setDecoder(0) + + def applySkin(self, desktop): + ret = Renderer.applySkin(self, desktop) + if ret: + self.Position = self.instance.position() + self.Size = self.instance.size() + return ret + + def preWidgetRemove(self, instance): + instance.resize(eSize(720,576)) + instance.move(ePoint(0,0)) + + def onShow(self): + if self.instance: + if self.Size: + self.instance.resize(self.Size) + if self.Position: + self.instance.move(self.Position) + + def onHide(self): + if self.instance: + self.preWidgetRemove(self.instance) |
