aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Components/Renderer/Progress.py
blob: b8534287cbb948adb912f47a4eaac55cfc31f5c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from Components.VariableValue import VariableValue
from Components.GUIComponent import GUIComponent

from enigma import eSlider

class Progress(VariableValue, GUIComponent):
	def __init__(self):
		GUIComponent.__init__(self)
		VariableValue.__init__(self)
		self.__start = 0
		self.__end = 100

	GUI_WIDGET = eSlider

	def connect(self, source):
		source.changed.listen(self.changed)
		self.source = source
		self.changed()

	def changed(self):
		range = self.source.range or 100
		value = self.source.value
		if value is None:
			value = 0
		(self.range, self.value) = ((0, range), value)

	GUI_WIDGET = eSlider

	def postWidgetCreate(self, instance):
		instance.setRange(self.__start, self.__end)

	def setRange(self, range):
		(__start, __end) = range
		if self.instance is not None:
			self.instance.setRange(__start, __end)

	def getRange(self):
		return (self.__start, self.__end)

	range = property(getRange, setRange)