X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fpython%2FComponents%2FGUIComponent.py;h=493df681482f4fd96c3acb4c625d2770dbbc511d;hp=5483d181773a54f08c0033630edd58505376d6a8;hb=6c2d3fc303542b7f77f4350974acf781a1b91c30;hpb=456ac28d25e861b4e661c88d573e3258a53d67a5 diff --git a/lib/python/Components/GUIComponent.py b/lib/python/Components/GUIComponent.py index 5483d18..493df68 100644 --- a/lib/python/Components/GUIComponent.py +++ b/lib/python/Components/GUIComponent.py @@ -5,8 +5,12 @@ from enigma import ePoint class GUIComponent: """ GUI component """ + SHOWN = 0 + HIDDEN = 1 + def __init__(self): - pass + self.state = self.SHOWN + self.instance = None def execBegin(self): pass @@ -14,9 +18,27 @@ class GUIComponent: def execEnd(self): pass + def onShow(self): + pass + + def onHide(self): + pass + # this works only with normal widgets - if you don't have self.instance, override this. def applySkin(self, desktop): + if self.state == self.HIDDEN: + self.instance.hide() skin.applyAllAttributes(self.instance, desktop, self.skinAttributes) def move(self, x, y): self.instance.move(ePoint(int(x), int(y))) + + def show(self): + self.state = self.SHOWN + if self.instance is not None: + self.instance.show() + + def hide(self): + self.state = self.HIDDEN + if self.instance is not None: + self.instance.hide()