Support turbo2.
[vuplus_dvbapp] / lib / python / Screens / HelpMenu.py
index 7bd5212..305e355 100644 (file)
@@ -1,28 +1,17 @@
 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
+from Screens.Rc import Rc
 
-class HelpMenu(Screen):
+class HelpMenu(Screen, Rc):
        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()
+               Rc.__init__(self)
                self["long_key"] = Label("")
 
                self["actions"] = ActionMap(["WizardActions"], 
@@ -31,28 +20,30 @@ class HelpMenu(Screen):
                        "back": self.close,
                }, -1)
 
+               self.onLayoutFinish.append(self.SelectionChanged)
+
        def SelectionChanged(self):
+               self.clearSelectedKeys()
                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:
-                       arrow.hide()
-               else:
-                       arrow.moveTo(selection[1], selection[2], 1)
-                       arrow.startMoving()
-                       arrow.show()
+               if selection:
+                       selection = selection[3]
+               #arrow = self["arrowup"]
+               print "selection:", selection
+
+               longText = ""
+               if selection and len(selection) > 1:
+                       if selection[1] == "SHIFT":
+                               self.selectKey("SHIFT")
+                       elif selection[1] == "long":
+                               longText = _("Long Keypress")
+               self["long_key"].setText(longText)
+
+               self.selectKey(selection[0])
+               #if selection is None:
+               print "select arrow"
+               #       arrow.moveTo(selection[1], selection[2], 1)
+               #       arrow.startMoving()
+               #       arrow.show()
 
 class HelpableScreen:
        def __init__(self):
@@ -65,6 +56,6 @@ class HelpableScreen:
                self.session.openWithCallback(self.callHelpAction, HelpMenu, self.helpList)
 
        def callHelpAction(self, *args):
-               if len(args):
+               if args:
                        (actionmap, context, action) = args
                        actionmap.action(context, action)