From ee0903f520403c5e03caef287f813e7b062d05ab Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Sat, 17 Jun 2006 16:48:40 +0000 Subject: add some new (currently unused) source/renderer based elements --- lib/python/Components/Converter/StringList.py | 40 +++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 lib/python/Components/Converter/StringList.py (limited to 'lib/python/Components/Converter/StringList.py') diff --git a/lib/python/Components/Converter/StringList.py b/lib/python/Components/Converter/StringList.py new file mode 100644 index 00000000..31dbcd3c --- /dev/null +++ b/lib/python/Components/Converter/StringList.py @@ -0,0 +1,40 @@ +from Converter import Converter +from enigma import eListboxPythonStringContent + + +class StringList(Converter): + """Turns a simple python list into a list which can be used in a listbox.""" + def __init__(self, *args, **kwargs): + Converter.__init__(self) + + def changed(self): + self.content = eListboxPythonStringContent() + if self.source: + self.content.setList(self.source.list) + self.downstream_elements.changed() + + def selectionChanged(self, index): + self.upstream_elements.selectionChanged(index) + # update all non-master targets + for x in self.downstream_elements: + if x is not self.master: + x.index = index + + def getCurrent(self): + if self.source is None: + return None + return self.source.list[self.index] + + current = property(getCurrent) + + # pass through: getIndex / setIndex to master + def getIndex(self): + if self.master is None: + return None + return self.master.index + + def setIndex(self, index): + if self.master is not None: + self.master.index = index + + index = property(getIndex, setIndex) -- cgit v1.2.3