###############################################################################
# Copyright (c) 2000, 2005 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

# Modifier keys
ALT=Alt
COMMAND=Command
CTRL=Ctrl
SHIFT=Shift

# Special keys
ARROW_DOWN=Down
ARROW_LEFT=Left
ARROW_RIGHT=Right
ARROW_UP=Up
BREAK=Break
CAPS_LOCK=CapsLock
END=End
F1=F1
F10=F10
F11=F11
F12=F12
F2=F2
F3=F3
F4=F4
F5=F5
F6=F6
F7=F7
F8=F8
F9=F9
HOME=Home
INSERT=Insert
NUM_LOCK=NumLock
NUMPAD_0=Numpad_0
NUMPAD_1=Numpad_1
NUMPAD_2=Numpad_2
NUMPAD_3=Numpad_3
NUMPAD_4=Numpad_4
NUMPAD_5=Numpad_5
NUMPAD_6=Numpad_6
NUMPAD_7=Numpad_7
NUMPAD_8=Numpad_8
NUMPAD_9=Numpad_9
NUMPAD_ADD=Numpad_Add
NUMPAD_DECIMAL=Numpad_Decimal
NUMPAD_DIVIDE=Numpad_Divide
NUMPAD_ENTER=Numpad_Enter
NUMPAD_EQUAL=Numpad_Equal
NUMPAD_MULTIPLY=Numpad_Multiply
NUMPAD_SUBTRACT=Numpad_Subtract
PAGE_DOWN=PageDown
PAGE_UP=PageUp
PAUSE=Pause
PRINT_SCREEN=PrintScreen
SCROLL_LOCK=ScrollLock

# Character keys
BS=Backspace
CR=Enter
DEL=Delete
ESC=Esc
FF=FormFeed
LF=LineFeed
NUL=Null
SPACE=Space
TAB=Tab
VT=VerticalTab
