diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-09-21 20:15:18 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2007-09-21 20:15:18 +0000 |
| commit | 79cab0403882bf14a34828b75f50a34d445851a6 (patch) | |
| tree | 074699a60974a491f5e7e3b6eba9dc2980ddf26d /lib/python/Components/Renderer | |
| parent | d42c6cf196f659537b9da28049c90eccd9d7506e (diff) | |
| download | enigma2-79cab0403882bf14a34828b75f50a34d445851a6.tar.gz enigma2-79cab0403882bf14a34828b75f50a34d445851a6.zip | |
add a "Picture in Graphics" source.. its usable to show a small embedded tv
picture in every screen.. simply by add a line like "<widget source="fake"
render="Pig" backgroundColor="transparent" size="160,120" position="50,50"
/>
Diffstat (limited to 'lib/python/Components/Renderer')
| -rw-r--r-- | lib/python/Components/Renderer/Makefile.am | 2 | ||||
| -rw-r--r-- | lib/python/Components/Renderer/Pig.py | 37 |
2 files changed, 38 insertions, 1 deletions
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) |
