blob: 0ff5098be0881733c403cf7db00d8d0209aabb70 (
plain)
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
|
from enigma import *
class ActionMap:
def __init__(self, contexts = [ ], actions = { }, prio=0):
self.actions = actions
self.contexts = contexts
self.prio = prio
self.p = eActionMapPtr()
eActionMap.getInstance(self.p)
def execBegin(self):
for ctx in self.contexts:
self.p.bindAction(ctx, self.prio, self.action)
def execEnd(self):
for ctx in self.contexts:
self.p.unbindAction(ctx, self.action)
def action(self, context, action):
print " ".join(("action -> ", context, action))
if self.actions.has_key(action):
self.actions[action]()
return 1
else:
print "unknown action %s/%s! typo in keymap?" % (context, action)
return 0
|