blob: 2588421c7954af05326587ddd1183324438490b2 (
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
|
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]()
else:
print "unknown action %s/%s! typo in keymap?" % (context, action)
|