X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fpython%2FComponents%2FPixmap.py;h=a98fef14f0163a0b98a9275c9b2a4c9b8b12634a;hp=b6620d9ace5a8513dc79c053224dada66b77e715;hb=85b4fbf32765dd03809defca101cb359ea35cc5c;hpb=4ae10f76135d53a4285fd458a87f485695c9fbd7 diff --git a/lib/python/Components/Pixmap.py b/lib/python/Components/Pixmap.py index b6620d9..a98fef1 100644 --- a/lib/python/Components/Pixmap.py +++ b/lib/python/Components/Pixmap.py @@ -22,3 +22,30 @@ class Pixmap: def removeWidget(self, instance): pass + +class PixmapConditional(Pixmap): + def __init__(self, withTimer = True): + Pixmap.__init__(self) + + if (withTimer): + self.conditionCheckTimer = eTimer() + self.conditionCheckTimer.timeout.get().append(self.update) + self.conditionCheckTimer.start(1000) + + def setConnect(self, conditionalFunction): + self.conditionalFunction = conditionalFunction + + def activateCondition(self, condition): + if (condition): + self.instance.hide() + else: + self.instance.show() + + def update(self): + try: + self.conditionalFunction() # check, if the conditionalfunction is still valid + except: + self.conditionalFunction = None + self.activateCondition(False) + + self.activateCondition(self.conditionalFunction())