X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/67b53c1cb06988394c35a6e965c99b72b67fe1be..28c7b76bc72da019f3c3bf3aca88c3636062a618:/lib/python/Components/MenuList.py diff --git a/lib/python/Components/MenuList.py b/lib/python/Components/MenuList.py index 876300bd..7fa1ae97 100644 --- a/lib/python/Components/MenuList.py +++ b/lib/python/Components/MenuList.py @@ -4,32 +4,36 @@ from GUIComponent import GUIComponent from enigma import eListboxPythonStringContent, eListbox class MenuList(HTMLComponent, GUIComponent): - def __init__(self, list, enableWrapAround=False): + def __init__(self, list, enableWrapAround=False, content=eListboxPythonStringContent): GUIComponent.__init__(self) self.list = list - self.l = eListboxPythonStringContent() + self.l = content() self.l.setList(self.list) self.onSelectionChanged = [ ] self.enableWrapAround = enableWrapAround - + def getCurrent(self): return self.l.getCurrentSelection() GUI_WIDGET = eListbox - + def postWidgetCreate(self, instance): instance.setContent(self.l) instance.selectionChanged.get().append(self.selectionChanged) if self.enableWrapAround: self.instance.setWrapAround(True) - + def preWidgetRemove(self, instance): instance.setContent(None) + instance.selectionChanged.get().remove(self.selectionChanged) def selectionChanged(self): for f in self.onSelectionChanged: f() + def getSelectionIndex(self): + return self.l.getCurrentSelectionIndex() + def getSelectedIndex(self): return self.l.getCurrentSelectionIndex() @@ -44,19 +48,19 @@ class MenuList(HTMLComponent, GUIComponent): def pageUp(self): if self.instance is not None: self.instance.moveSelection(self.instance.pageUp) - + def pageDown(self): if self.instance is not None: self.instance.moveSelection(self.instance.pageDown) - + def up(self): if self.instance is not None: self.instance.moveSelection(self.instance.moveUp) - + def down(self): if self.instance is not None: self.instance.moveSelection(self.instance.moveDown) - + def selectionEnabled(self, enabled): if self.instance is not None: self.instance.setSelectionEnable(enabled)