-class BlinkingPixmapConditional(BlinkingPixmap):
- def __init__(self, filename):
- BlinkingPixmap.__init__(self, filename)
-
- self.setConnect(None)
-
- self.conditionCheckTimer = eTimer()
- self.conditionCheckTimer.timeout.get().append(self.conditionallyBlink)
- self.conditionCheckTimer.start(1000)
-
- def setConnect(self, conditionalFunction):
- self.conditionalFunction = conditionalFunction
-
- def conditionallyBlink(self):
- try:
- self.conditionalFunction() # check, if the conditionalfunction is still valid
- except:
- self.conditionalFunction = None
- self.stopBlinking()
-
- if self.conditionalFunction != None:
- if self.conditionalFunction(): # we shall blink
- if self.blinking: # we are already blinking
- pass
- else: # we don't blink
- self.startBlinking()
- else: # we shall not blink
- if self.blinking: # we are blinking
- self.stopBlinking()
- else: # we don't blink
- pass
\ No newline at end of file
+class BlinkingPixmapConditional(BlinkingPixmap, PixmapConditional):
+ def __init__(self):
+ BlinkingPixmap.__init__(self)
+ PixmapConditional.__init__(self)
+
+ def activateCondition(self, condition):
+ if (condition):
+ if not self.blinking: # we are already blinking
+ self.startBlinking()
+ else:
+ if self.blinking: # we are blinking
+ self.stopBlinking()