X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/92e521a30c214ac2e65c6fb68401e90196a6c88b..cd176a16cb54350617ea202de983e8d643978971:/lib/python/Components/Renderer/Listbox.py diff --git a/lib/python/Components/Renderer/Listbox.py b/lib/python/Components/Renderer/Listbox.py index a1f89377..640121e1 100644 --- a/lib/python/Components/Renderer/Listbox.py +++ b/lib/python/Components/Renderer/Listbox.py @@ -1,7 +1,4 @@ -from Components.VariableText import VariableText from Renderer import Renderer -from Tools.Event import Event - from enigma import eListbox # the listbox renderer is the listbox, but no listbox content. @@ -42,6 +39,10 @@ class Listbox(Renderer, object): self.wrap_around = self.wrap_around # trigger self.selection_enabled = self.selection_enabled # trigger + def preWidgetRemove(self, instance): + instance.setContent(None) + instance.selectionChanged.get().remove(self.selectionChanged) + def setWrapAround(self, wrap_around): self.__wrap_around = wrap_around if self.instance is not None: @@ -54,7 +55,7 @@ class Listbox(Renderer, object): def getIndex(self): if self.instance is None: - return None + return 0 return self.instance.getCurrentIndex() def moveToIndex(self, index): @@ -76,4 +77,12 @@ class Listbox(Renderer, object): selection_enabled = property(lambda self: self.__selection_enabled, setSelectionEnabled) def changed(self, what): + if hasattr(self.source, "selectionEnabled"): + self.selection_enabled = self.source.selectionEnabled + if len(what) > 1 and isinstance(what[1], str) and what[1] == "style": + return self.content = self.source.content + + def entry_changed(self, index): + if self.instance is not None: + self.instance.entryChanged(index)