Files

183 lines
5.3 KiB
C++

#pragma once
#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <wv/input/Key.h>
#include <wv/wvpch.h>
namespace WillowVox
{
int keyToOpenGL[] = {
GLFW_KEY_A,
GLFW_KEY_B,
GLFW_KEY_C,
GLFW_KEY_D,
GLFW_KEY_E,
GLFW_KEY_F,
GLFW_KEY_G,
GLFW_KEY_H,
GLFW_KEY_I,
GLFW_KEY_J,
GLFW_KEY_K,
GLFW_KEY_L,
GLFW_KEY_M,
GLFW_KEY_N,
GLFW_KEY_O,
GLFW_KEY_P,
GLFW_KEY_Q,
GLFW_KEY_R,
GLFW_KEY_S,
GLFW_KEY_T,
GLFW_KEY_U,
GLFW_KEY_V,
GLFW_KEY_W,
GLFW_KEY_X,
GLFW_KEY_Y,
GLFW_KEY_Z,
GLFW_KEY_0,
GLFW_KEY_1,
GLFW_KEY_2,
GLFW_KEY_3,
GLFW_KEY_4,
GLFW_KEY_5,
GLFW_KEY_6,
GLFW_KEY_7,
GLFW_KEY_8,
GLFW_KEY_9,
GLFW_KEY_KP_0,
GLFW_KEY_KP_1,
GLFW_KEY_KP_2,
GLFW_KEY_KP_3,
GLFW_KEY_KP_4,
GLFW_KEY_KP_5,
GLFW_KEY_KP_6,
GLFW_KEY_KP_7,
GLFW_KEY_KP_8,
GLFW_KEY_KP_9,
GLFW_KEY_ESCAPE,
GLFW_KEY_LEFT_SHIFT,
GLFW_KEY_RIGHT_SHIFT,
GLFW_KEY_LEFT_CONTROL,
GLFW_KEY_RIGHT_CONTROL,
GLFW_KEY_TAB,
GLFW_KEY_BACKSPACE,
GLFW_KEY_BACKSLASH,
GLFW_KEY_MINUS,
GLFW_KEY_EQUAL,
GLFW_KEY_LEFT_BRACKET,
GLFW_KEY_RIGHT_BRACKET,
GLFW_KEY_SEMICOLON,
GLFW_KEY_APOSTROPHE,
GLFW_KEY_COMMA,
GLFW_KEY_PERIOD,
GLFW_KEY_SLASH,
GLFW_KEY_ENTER,
GLFW_KEY_LEFT_ALT,
GLFW_KEY_RIGHT_ALT,
GLFW_KEY_SPACE,
GLFW_KEY_UP,
GLFW_KEY_DOWN,
GLFW_KEY_LEFT,
GLFW_KEY_RIGHT,
GLFW_KEY_F1,
GLFW_KEY_F2,
GLFW_KEY_F3,
GLFW_KEY_F4,
GLFW_KEY_F5,
GLFW_KEY_F6,
GLFW_KEY_F7,
GLFW_KEY_F8,
GLFW_KEY_F9,
GLFW_KEY_F10,
GLFW_KEY_F11,
GLFW_KEY_F12,
GLFW_KEY_GRAVE_ACCENT,
};
std::unordered_map<int, int> openGLtoKey = {
{ GLFW_KEY_A, Key::A},
{ GLFW_KEY_B, Key::B },
{ GLFW_KEY_C, Key::C },
{ GLFW_KEY_D, Key::D },
{ GLFW_KEY_E, Key::E },
{ GLFW_KEY_F, Key::F },
{ GLFW_KEY_G, Key::G },
{ GLFW_KEY_H, Key::H },
{ GLFW_KEY_I, Key::I },
{ GLFW_KEY_J, Key::J },
{ GLFW_KEY_K, Key::K },
{ GLFW_KEY_L, Key::L },
{ GLFW_KEY_M, Key::M },
{ GLFW_KEY_N, Key::N },
{ GLFW_KEY_O, Key::O },
{ GLFW_KEY_P, Key::P },
{ GLFW_KEY_Q, Key::Q },
{ GLFW_KEY_R, Key::R },
{ GLFW_KEY_S, Key::S },
{ GLFW_KEY_T, Key::T },
{ GLFW_KEY_U, Key::U },
{ GLFW_KEY_V, Key::V },
{ GLFW_KEY_W, Key::W },
{ GLFW_KEY_X, Key::X },
{ GLFW_KEY_Y, Key::Y },
{ GLFW_KEY_Z, Key::Z },
{ GLFW_KEY_0, Key::KEY_0 },
{ GLFW_KEY_1, Key::KEY_1 },
{ GLFW_KEY_2, Key::KEY_2 },
{ GLFW_KEY_3, Key::KEY_3 },
{ GLFW_KEY_4, Key::KEY_4 },
{ GLFW_KEY_5, Key::KEY_5 },
{ GLFW_KEY_6, Key::KEY_6 },
{ GLFW_KEY_7, Key::KEY_7 },
{ GLFW_KEY_8, Key::KEY_8 },
{ GLFW_KEY_9, Key::KEY_9 },
{ GLFW_KEY_KP_0, Key::NUMPAD_0 },
{ GLFW_KEY_KP_1, Key::NUMPAD_1 },
{ GLFW_KEY_KP_2, Key::NUMPAD_2 },
{ GLFW_KEY_KP_3, Key::NUMPAD_3 },
{ GLFW_KEY_KP_4, Key::NUMPAD_4 },
{ GLFW_KEY_KP_5, Key::NUMPAD_5 },
{ GLFW_KEY_KP_6, Key::NUMPAD_6 },
{ GLFW_KEY_KP_7, Key::NUMPAD_7 },
{ GLFW_KEY_KP_8, Key::NUMPAD_8 },
{ GLFW_KEY_KP_9, Key::NUMPAD_9 },
{ GLFW_KEY_ESCAPE, Key::ESC },
{ GLFW_KEY_LEFT_SHIFT, Key::L_SHIFT },
{ GLFW_KEY_RIGHT_SHIFT, Key::R_SHIFT },
{ GLFW_KEY_LEFT_CONTROL, Key::L_CONTROL },
{ GLFW_KEY_RIGHT_CONTROL, Key::R_CONTROL },
{ GLFW_KEY_TAB, Key::TAB },
{ GLFW_KEY_BACKSPACE, Key::BACKSPACE },
{ GLFW_KEY_BACKSLASH, Key::BACKSLASH },
{ GLFW_KEY_MINUS, Key::MINUS },
{ GLFW_KEY_EQUAL, Key::EQUAL },
{ GLFW_KEY_LEFT_BRACKET, Key::LEFT_BRACKET },
{ GLFW_KEY_RIGHT_BRACKET, Key::RIGHT_BRACKET },
{ GLFW_KEY_SEMICOLON, Key::SEMICOLON },
{ GLFW_KEY_APOSTROPHE, Key::APOSTROPHE },
{ GLFW_KEY_COMMA, Key::COMMA },
{ GLFW_KEY_PERIOD, Key::PERIOD },
{ GLFW_KEY_SLASH, Key::FORWARD_SLASH },
{ GLFW_KEY_ENTER, Key::ENTER },
{ GLFW_KEY_LEFT_ALT, Key::L_ALT },
{ GLFW_KEY_RIGHT_ALT, Key::R_ALT },
{ GLFW_KEY_SPACE, Key::SPACE },
{ GLFW_KEY_UP, Key::ARROW_KEY_UP },
{ GLFW_KEY_DOWN, Key::ARROW_KEY_DOWN },
{ GLFW_KEY_LEFT, Key::ARROW_KEY_LEFT },
{ GLFW_KEY_RIGHT, Key::ARROW_KEY_RIGHT },
{ GLFW_KEY_F1, Key::F1 },
{ GLFW_KEY_F2, Key::F2 },
{ GLFW_KEY_F3, Key::F3 },
{ GLFW_KEY_F4, Key::F4 },
{ GLFW_KEY_F5, Key::F5 },
{ GLFW_KEY_F6, Key::F6 },
{ GLFW_KEY_F7, Key::F7 },
{ GLFW_KEY_F8, Key::F8 },
{ GLFW_KEY_F9, Key::F9 },
{ GLFW_KEY_F10, Key::F10 },
{ GLFW_KEY_F11, Key::F11 },
{ GLFW_KEY_F12, Key::F12 },
{ GLFW_KEY_GRAVE_ACCENT, Key::BACKTICK},
};
}