calibre/src/pyj/keycodes.pyj
2016-04-25 16:39:04 +05:30

56 lines
1.0 KiB
Plaintext

# vim:fileencoding=utf-8
# License: GPL v3 Copyright: 2016, Kovid Goyal <kovid at kovidgoyal.net>
from __python__ import hash_literals
KEYCODE_MAP = K = Object.create(None)
K[8] = 'backspace'
K[9] = 'tab'
K[13] = 'enter'
K[16] = 'shift'
K[17] = 'ctrl'
K[18] = 'alt'
K[19] = 'pause'
K[20] = 'capslock'
K[27] = 'escape'
K[32] = 'space'
K[33] = 'pageup'
K[34] = 'pagedown'
K[35] = 'end'
K[36] = 'home'
K[37] = 'left'
K[38] = 'up'
K[39] = 'right'
K[40] = 'down'
K[45] = 'insert'
K[46] = 'delete'
K[91] = 'meta_l'
K[92] = 'meta_r'
K[93] = 'select'
K[106] = 'numpad*'
K[107] = 'numpad+'
K[109] = 'numpad-'
K[111] = 'numpad/'
K[144] = 'numlock'
K[145] = 'scrolllock'
K[186] = ';'
K[190] = '.'
K[191] = '/'
K[192] = '`'
K[219] = '['
K[220] = '\\'
K[221] = ']'
K[222] = "'"
for i in range(10):
KEYCODE_MAP[48 + i] = i + ''
KEYCODE_MAP[96 + i] = 'numpad' + i
for i, c in enumerate(str.ascii_lowercase):
KEYCODE_MAP[65 + i] = c
for i in range(1, 13):
KEYCODE_MAP[111 + i] = 'f' + 1
def get_key(key_event):
return KEYCODE_MAP[key_event.keyCode]