X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/63f8fba0e343ed772e81ce4015583e33a6bdc6e0..383c9761ac7d46d178bd4344beec854428596893:/lib/python/Screens/HelpMenu.py diff --git a/lib/python/Screens/HelpMenu.py b/lib/python/Screens/HelpMenu.py index c19233e2..6332cde2 100644 --- a/lib/python/Screens/HelpMenu.py +++ b/lib/python/Screens/HelpMenu.py @@ -1,51 +1,52 @@ from Screen import Screen - -from Components.Pixmap import * -from Components.Pixmap import Pixmap -from Components.Pixmap import MovingPixmap +from Components.Pixmap import Pixmap, MovingPixmap from Components.Label import Label -from Components.Slider import Slider from Components.ActionMap import ActionMap from Components.HelpMenuList import HelpMenuList -import string -from xml.sax import make_parser -from xml.sax.handler import ContentHandler -from Components.MenuList import MenuList class HelpMenu(Screen): def __init__(self, session, list): Screen.__init__(self, session) self.onSelChanged = [ ] - self["list"] = HelpMenuList(list, self.close) - + self["list"].onSelChanged.append(self.SelectionChanged) self["rc"] = Pixmap() self["arrowup"] = MovingPixmap() + self["arrowup"].hide() + self["sh_arrowup"] = Pixmap() + self["sh_arrowup"].hide() + self["long_key"] = Label("") self["actions"] = ActionMap(["WizardActions"], { "ok": self["list"].ok, "back": self.close, - "up": self.up, - "down": self.down }, -1) - - def up(self): - self["list"].instance.moveSelection(self["list"].instance.moveUp) - self.SelectionChanged() - - def down(self): - self["list"].instance.moveSelection(self["list"].instance.moveDown) - self.SelectionChanged() - + + self.onLayoutFinish.append(self.SelectionChanged) + def SelectionChanged(self): - selection = self["list"].getCurrent()[3] + selection = self["list"].getCurrent() + selection = selection and selection[3] + arrow = self["arrowup"] + sh_arrow = self["sh_arrowup"] + + if selection and selection[0][:3] == "sh_": + sh_arrow.show() + else: + sh_arrow.hide() + + if selection and selection[0][:2] == "l_": + self["long_key"].setText(_("Long Keypress")) + else: + self["long_key"].setText("") + if selection is None: - self["arrowup"].instance.hide() + arrow.hide() else: - self["arrowup"].moveTo(selection[1], selection[2], 1) - self["arrowup"].startMoving() - self["arrowup"].instance.show() + arrow.moveTo(selection[1], selection[2], 1) + arrow.startMoving() + arrow.show() class HelpableScreen: def __init__(self): @@ -53,10 +54,11 @@ class HelpableScreen: { "displayHelp": self.showHelp, }) + def showHelp(self): self.session.openWithCallback(self.callHelpAction, HelpMenu, self.helpList) + def callHelpAction(self, *args): if len(args): (actionmap, context, action) = args actionmap.action(context, action) -