//
// Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//

#ifndef SAMPLE_UTIL_KEYBOARD_H
#define SAMPLE_UTIL_KEYBOARD_H

enum Key
{
    KEY_UNKNOWN,
    KEY_A,            // The A key
    KEY_B,            // The B key
    KEY_C,            // The C key
    KEY_D,            // The D key
    KEY_E,            // The E key
    KEY_F,            // The F key
    KEY_G,            // The G key
    KEY_H,            // The H key
    KEY_I,            // The I key
    KEY_J,            // The J key
    KEY_K,            // The K key
    KEY_L,            // The L key
    KEY_M,            // The M key
    KEY_N,            // The N key
    KEY_O,            // The O key
    KEY_P,            // The P key
    KEY_Q,            // The Q key
    KEY_R,            // The R key
    KEY_S,            // The S key
    KEY_T,            // The T key
    KEY_U,            // The U key
    KEY_V,            // The V key
    KEY_W,            // The W key
    KEY_X,            // The X key
    KEY_Y,            // The Y key
    KEY_Z,            // The Z key
    KEY_NUM0,         // The 0 key
    KEY_NUM1,         // The 1 key
    KEY_NUM2,         // The 2 key
    KEY_NUM3,         // The 3 key
    KEY_NUM4,         // The 4 key
    KEY_NUM5,         // The 5 key
    KEY_NUM6,         // The 6 key
    KEY_NUM7,         // The 7 key
    KEY_NUM8,         // The 8 key
    KEY_NUM9,         // The 9 key
    KEY_ESCAPE,       // The escape key
    KEY_LCONTROL,     // The left control key
    KEY_LSHIFT,       // The left shift key
    KEY_LALT,         // The left alt key
    KEY_LSYSTEM,      // The left OS specific key: Window (Windows and Linux), Apple (MacOS X), ...
    KEY_RCONTROL,     // The right control key
    KEY_RSHIFT,       // The right shift key
    KEY_RALT,         // The right alt key
    KEY_RSYSTEM,      // The right OS specific key: Window (Windows and Linux), Apple (MacOS X), ...
    KEY_MENU,         // The menu key
    KEY_LBRACKET,     // The [ key
    KEY_RBRACKET,     // The ] key
    KEY_SEMICOLON,    // The ; key
    KEY_COMMA,        // The , key
    KEY_PERIOD,       // The . key
    KEY_QUOTE,        // The ' key
    KEY_SLASH,        // The / key
    KEY_BACKSLASH,    // The \ key
    KEY_TILDE,        // The ~ key
    KEY_EQUAL,        // The = key
    KEY_DASH,         // The - key
    KEY_SPACE,        // The space key
    KEY_RETURN,       // The return key
    KEY_BACK,         // The backspace key
    KEY_TAB,          // The tabulation key
    KEY_PAGEUP,       // The page up key
    KEY_PAGEDOWN,     // The page down key
    KEY_END,          // The end key
    KEY_HOME,         // The home key
    KEY_INSERT,       // The insert key
    KEY_DELETE,       // The delete key
    KEY_ADD,          // +
    KEY_SUBTRACT,     // -
    KEY_MULTIPLY,     // *
    KEY_DIVIDE,       // /
    KEY_LEFT,         // Left arrow
    KEY_RIGHT,        // Right arrow
    KEY_UP,           // Up arrow
    KEY_DOWN,         // Down arrow
    KEY_NUMPAD0,      // The numpad 0 key
    KEY_NUMPAD1,      // The numpad 1 key
    KEY_NUMPAD2,      // The numpad 2 key
    KEY_NUMPAD3,      // The numpad 3 key
    KEY_NUMPAD4,      // The numpad 4 key
    KEY_NUMPAD5,      // The numpad 5 key
    KEY_NUMPAD6,      // The numpad 6 key
    KEY_NUMPAD7,      // The numpad 7 key
    KEY_NUMPAD8,      // The numpad 8 key
    KEY_NUMPAD9,      // The numpad 9 key
    KEY_F1,           // The F1 key
    KEY_F2,           // The F2 key
    KEY_F3,           // The F3 key
    KEY_F4,           // The F4 key
    KEY_F5,           // The F5 key
    KEY_F6,           // The F6 key
    KEY_F7,           // The F7 key
    KEY_F8,           // The F8 key
    KEY_F9,           // The F8 key
    KEY_F10,          // The F10 key
    KEY_F11,          // The F11 key
    KEY_F12,          // The F12 key
    KEY_F13,          // The F13 key
    KEY_F14,          // The F14 key
    KEY_F15,          // The F15 key
    KEY_PAUSE,        // The pause key
    KEY_COUNT,
};

#endif // SAMPLE_UTIL_KEYBOARD_H
