1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
from Screen import Screen
from Components.Pixmap import Pixmap, MovingPixmap
from Components.Label import Label
from Components.ActionMap import ActionMap
from Components.HelpMenuList import HelpMenuList
from Screens.Rc import Rc
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)
Rc.__init__(self)
self["long_key"] = Label("")
self["actions"] = ActionMap(["WizardActions"],
{
"ok": self["list"].ok,
"back": self.close,
}, -1)
self.onLayoutFinish.append(self.SelectionChanged)
def SelectionChanged(self):
self.clearSelectedKeys()
selection = self["list"].getCurrent()
selection = selection[3]
#arrow = self["arrowup"]
print "selection:", selection
if selection and len(selection) > 1 and selection[1] == "SHIFT":
self.selectKey("SHIFT")
if selection and len(selection) > 1 and selection[1] == "long":
self["long_key"].setText(_("Long Keypress"))
else:
self["long_key"].setText("")
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):
self["helpActions"] = ActionMap( [ "HelpActions" ],
{
"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)
|