implement proper 'destroy' functions in Converter
[enigma2.git] / lib / python / Components / Sources / Boolean.py
index 9ca5613d54227e1fa7b5ae0f0dcf83d04d5efa6e..21c2c2b976222f8b31f324b87c24bcd49b37cce4 100644 (file)
@@ -12,10 +12,14 @@ from enigma import eTimer
 class Boolean(Source, object):
        def __init__(self, fixed = False, function = None, poll = 0):
                Source.__init__(self)
+               self.function = function
+               self.fixed = fixed
                if poll > 0:
                        self.poll_timer = eTimer()
                        self.poll_timer.timeout.get().append(self.poll)
                        self.poll_timer.start(poll)
+               else:
+                       self.poll_timer = None
 
        @cached
        def getBoolean(self):
@@ -28,3 +32,7 @@ class Boolean(Source, object):
 
        def poll(self):
                self.changed((self.CHANGED_ALL,))
+
+       def destroy(self):
+               if self.poll_timer:
+                       self.poll_timer.timeout.get().remove(self.poll)