add PositionGauge renderer
[enigma2.git] / lib / python / Components / Renderer / Progress.py
1 from Components.VariableValue import VariableValue
2 from Renderer import Renderer
3
4 from enigma import eSlider
5
6 class Progress(VariableValue, Renderer):
7         def __init__(self):
8                 Renderer.__init__(self)
9                 VariableValue.__init__(self)
10                 self.__start = 0
11                 self.__end = 100
12
13         GUI_WIDGET = eSlider
14
15         def changed(self):
16                 range = self.source.range or 100
17                 value = self.source.value
18                 if value is None:
19                         value = 0
20                 (self.range, self.value) = ((0, range), value)
21
22         GUI_WIDGET = eSlider
23
24         def postWidgetCreate(self, instance):
25                 instance.setRange(self.__start, self.__end)
26
27         def setRange(self, range):
28                 (__start, __end) = range
29                 if self.instance is not None:
30                         self.instance.setRange(__start, __end)
31
32         def getRange(self):
33                 return (self.__start, self.__end)
34
35         range = property(getRange, setRange)