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()
--- /dev/null
+##
+## 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)
# get corresponding source
source = screen.get(wsource)
if source is None:
- raise SkinError("source '" + wsource + "' was not found in screen '" + name + "'!")
+ if wsource == "fake":
+ if screen.get("fake"):
+ raise SkinError("screen '" + name + "has a element named 'fake' but its not a Source!!")
+ source = Source()
+ screen["fake"] = source
+ else:
+ raise SkinError("source '" + wsource + "' was not found in screen '" + name + "'!")
wrender = widget.getAttribute('render')