revert local change
[enigma2.git] / lib / python / Components / Sources / Boolean.py
index c25b4626aafb1eb362a2b7b9c18a7dddf815f573..9ca5613d54227e1fa7b5ae0f0dcf83d04d5efa6e 100644 (file)
@@ -1,4 +1,5 @@
 from Source import Source
 from Source import Source
+from Components.Element import cached
 from enigma import eTimer
 
 # a small warning:
 from enigma import eTimer
 
 # a small warning:
@@ -13,9 +14,10 @@ class Boolean(Source, object):
                Source.__init__(self)
                if poll > 0:
                        self.poll_timer = eTimer()
                Source.__init__(self)
                if poll > 0:
                        self.poll_timer = eTimer()
-                       self.poll_timer.timeout.get().append(self.changed)
+                       self.poll_timer.timeout.get().append(self.poll)
                        self.poll_timer.start(poll)
 
                        self.poll_timer.start(poll)
 
+       @cached
        def getBoolean(self):
                if self.function is not None:
                        return self.function()
        def getBoolean(self):
                if self.function is not None:
                        return self.function()
@@ -23,3 +25,6 @@ class Boolean(Source, object):
                        return self.fixed
 
        boolean = property(getBoolean)
                        return self.fixed
 
        boolean = property(getBoolean)
+
+       def poll(self):
+               self.changed((self.CHANGED_ALL,))