use PixmapConditional for BlinkingPixmap
authorStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Sat, 26 Nov 2005 03:28:02 +0000 (03:28 +0000)
committerStefan Pluecken <stefan.pluecken@multimedia-labs.de>
Sat, 26 Nov 2005 03:28:02 +0000 (03:28 +0000)
lib/python/Components/BlinkingPixmap.py
lib/python/Components/Pixmap.py

index 1f2f422..e564eb1 100644 (file)
@@ -1,7 +1,7 @@
 from HTMLComponent import *
 from GUIComponent import *
 
 from HTMLComponent import *
 from GUIComponent import *
 
-from Pixmap import Pixmap
+from Pixmap import *
 
 from enigma import *
 
 
 from enigma import *
 
@@ -60,34 +60,19 @@ class BlinkingPixmap(GUIComponent, Pixmap):
                        self.hidePixmap()
                self.timer.stop()
                
                        self.hidePixmap()
                self.timer.stop()
                
-class BlinkingPixmapConditional(BlinkingPixmap):
+class BlinkingPixmapConditional(BlinkingPixmap, PixmapConditional):
        def __init__(self):
                BlinkingPixmap.__init__(self)
        def __init__(self):
                BlinkingPixmap.__init__(self)
+               PixmapConditional.__init__(self)
                
                
-               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
+       def activateCondition(self, condition):
+               if (condition):
+                       if self.blinking: # we are already blinking
+                               pass
+                       else: # we don't blink
+                               self.startBlinking()
+               else:
+                       if self.blinking: # we are blinking
+                               self.stopBlinking()
+                       else: # we don't blink
+                               pass
index a98fef1..264ffe2 100644 (file)
@@ -27,6 +27,8 @@ class PixmapConditional(Pixmap):
        def __init__(self, withTimer = True):
                Pixmap.__init__(self)
                
        def __init__(self, withTimer = True):
                Pixmap.__init__(self)
                
+               self.setConnect(None)
+               
                if (withTimer):
                        self.conditionCheckTimer = eTimer()
                        self.conditionCheckTimer.timeout.get().append(self.update)
                if (withTimer):
                        self.conditionCheckTimer = eTimer()
                        self.conditionCheckTimer.timeout.get().append(self.update)
@@ -37,15 +39,16 @@ class PixmapConditional(Pixmap):
                
        def activateCondition(self, condition):
                if (condition):
                
        def activateCondition(self, condition):
                if (condition):
-                       self.instance.hide()
-               else:
                        self.instance.show()
                        self.instance.show()
+               else:
+                       self.instance.hide()
 
        def update(self):
 
        def update(self):
-               try:
-                       self.conditionalFunction() # check, if the conditionalfunction is still valid
-               except:
-                       self.conditionalFunction = None
-                       self.activateCondition(False)
+               if (self.setConnect != None):
+                       try:
+                               self.conditionalFunction() # check, if the conditionalfunction is still valid
+                       except:
+                               self.conditionalFunction = None
+                               self.activateCondition(False)
                        
                        
-               self.activateCondition(self.conditionalFunction())
+                       self.activateCondition(self.conditionalFunction())