From 0c55c0e1b48de55fea401ea1b2b3f2280ef0f93c Mon Sep 17 00:00:00 2001
From: sanine <sanine.not@pm.me>
Date: Mon, 3 Oct 2022 21:23:14 -0500
Subject: add all keycodes

---
 src/gl/window.c | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 124 insertions(+), 2 deletions(-)

diff --git a/src/gl/window.c b/src/gl/window.c
index db807f6..b088b86 100644
--- a/src/gl/window.c
+++ b/src/gl/window.c
@@ -49,7 +49,7 @@ void setup_window(lua_State *L, int honey_index)
 		hs_str_int("openGlCoreProfile", GLFW_OPENGL_CORE_PROFILE),
 	);
 
-	hs_create_table(L,
+	struct hs_tbl_entry tbl[] = {
 		hs_str_cfunc("create", window_create),
 		hs_str_cfunc("destroy", window_destroy),
 		hs_str_cfunc("makeContextCurrent", window_make_context_current),
@@ -69,8 +69,130 @@ void setup_window(lua_State *L, int honey_index)
 		hs_str_int("RELEASE", GLFW_RELEASE),
 
 		/* key buttons */
+		hs_str_int("KEY_UNKNOWN", GLFW_KEY_UNKNOWN),
+		hs_str_int("KEY_SPACE", GLFW_KEY_SPACE),
+		hs_str_int("KEY_APOSTROPHE", GLFW_KEY_APOSTROPHE),
+		hs_str_int("KEY_COMMA", GLFW_KEY_COMMA),
+		hs_str_int("KEY_MINUS", GLFW_KEY_MINUS),
+		hs_str_int("KEY_PERIOD", GLFW_KEY_PERIOD),
+		hs_str_int("KEY_SLASH", GLFW_KEY_SLASH),
+		hs_str_int("KEY_0", GLFW_KEY_0),
+		hs_str_int("KEY_1", GLFW_KEY_1),
+		hs_str_int("KEY_2", GLFW_KEY_2),
+		hs_str_int("KEY_3", GLFW_KEY_3),
+		hs_str_int("KEY_4", GLFW_KEY_4),
+		hs_str_int("KEY_5", GLFW_KEY_5),
+		hs_str_int("KEY_6", GLFW_KEY_6),
+		hs_str_int("KEY_7", GLFW_KEY_7),
+		hs_str_int("KEY_8", GLFW_KEY_8),
+		hs_str_int("KEY_9", GLFW_KEY_9),
+		hs_str_int("KEY_SEMICOLON", GLFW_KEY_SEMICOLON),
+		hs_str_int("KEY_EQUAL", GLFW_KEY_EQUAL),
+		hs_str_int("KEY_A", GLFW_KEY_A),
+		hs_str_int("KEY_B", GLFW_KEY_B),
+		hs_str_int("KEY_C", GLFW_KEY_C),
+		hs_str_int("KEY_D", GLFW_KEY_D),
+		hs_str_int("KEY_E", GLFW_KEY_E),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_G", GLFW_KEY_G),
+		hs_str_int("KEY_H", GLFW_KEY_H),
+		hs_str_int("KEY_I", GLFW_KEY_I),
+		hs_str_int("KEY_J", GLFW_KEY_J),
+		hs_str_int("KEY_K", GLFW_KEY_K),
+		hs_str_int("KEY_L", GLFW_KEY_L),
+		hs_str_int("KEY_M", GLFW_KEY_M),
+		hs_str_int("KEY_N", GLFW_KEY_N),
+		hs_str_int("KEY_O", GLFW_KEY_O),
+		hs_str_int("KEY_P", GLFW_KEY_P),
+		hs_str_int("KEY_Q", GLFW_KEY_Q),
+		hs_str_int("KEY_R", GLFW_KEY_R),
+		hs_str_int("KEY_S", GLFW_KEY_S),
+		hs_str_int("KEY_T", GLFW_KEY_T),
+		hs_str_int("KEY_U", GLFW_KEY_U),
+		hs_str_int("KEY_V", GLFW_KEY_V),
+		hs_str_int("KEY_W", GLFW_KEY_W),
+		hs_str_int("KEY_X", GLFW_KEY_X),
+		hs_str_int("KEY_Y", GLFW_KEY_Y),
+		hs_str_int("KEY_Z", GLFW_KEY_Z),
+		hs_str_int("KEY_LEFT_BRACKET", GLFW_KEY_LEFT_BRACKET),
+		hs_str_int("KEY_BACKSLASH", GLFW_KEY_BACKSLASH),
+		hs_str_int("KEY_RIGHT_BRACKET", GLFW_KEY_RIGHT_BRACKET),
+		hs_str_int("KEY_GRAVE_ACCENT", GLFW_KEY_GRAVE_ACCENT),
+		hs_str_int("KEY_WORLD_1", GLFW_KEY_WORLD_1),
+		hs_str_int("KEY_WORLD_2", GLFW_KEY_WORLD_2),
 		hs_str_int("KEY_ESCAPE", GLFW_KEY_ESCAPE),
-	);
+		hs_str_int("KEY_ENTER", GLFW_KEY_ENTER),
+		hs_str_int("KEY_TAB", GLFW_KEY_TAB),
+		hs_str_int("KEY_BACKSPACE", GLFW_KEY_BACKSPACE),
+		hs_str_int("KEY_INSERT", GLFW_KEY_INSERT),
+		hs_str_int("KEY_DELETE", GLFW_KEY_DELETE),
+		hs_str_int("KEY_RIGHT", GLFW_KEY_RIGHT),
+		hs_str_int("KEY_LEFT", GLFW_KEY_LEFT),
+		hs_str_int("KEY_DOWN", GLFW_KEY_DOWN),
+		hs_str_int("KEY_UP", GLFW_KEY_UP),
+		hs_str_int("KEY_PAGE_UP", GLFW_KEY_PAGE_UP),
+		hs_str_int("KEY_PAGE_DOWN", GLFW_KEY_PAGE_DOWN),
+		hs_str_int("KEY_HOME", GLFW_KEY_HOME),
+		hs_str_int("KEY_END", GLFW_KEY_END),
+		hs_str_int("KEY_CAPS_LOCK", GLFW_KEY_CAPS_LOCK),
+		hs_str_int("KEY_SCROLL_LOCK", GLFW_KEY_SCROLL_LOCK),
+		hs_str_int("KEY_NUM_LOCK", GLFW_KEY_NUM_LOCK),
+		hs_str_int("KEY_PRINT_SCREEN", GLFW_KEY_PRINT_SCREEN),
+		hs_str_int("KEY_PAUSE", GLFW_KEY_PAUSE),
+		hs_str_int("KEY_F1", GLFW_KEY_F1),
+		hs_str_int("KEY_F2", GLFW_KEY_F2),
+		hs_str_int("KEY_F3", GLFW_KEY_F3),
+		hs_str_int("KEY_F4", GLFW_KEY_F4),
+		hs_str_int("KEY_F5", GLFW_KEY_F5),
+		hs_str_int("KEY_F6", GLFW_KEY_F6),
+		hs_str_int("KEY_F7", GLFW_KEY_F7),
+		hs_str_int("KEY_F8", GLFW_KEY_F8),
+		hs_str_int("KEY_F9", GLFW_KEY_F9),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_F", GLFW_KEY_F),
+		hs_str_int("KEY_KP_0", GLFW_KEY_KP_0),
+		hs_str_int("KEY_KP_1", GLFW_KEY_KP_1),
+		hs_str_int("KEY_KP_2", GLFW_KEY_KP_2),
+		hs_str_int("KEY_KP_3", GLFW_KEY_KP_3),
+		hs_str_int("KEY_KP_4", GLFW_KEY_KP_4),
+		hs_str_int("KEY_KP_5", GLFW_KEY_KP_5),
+		hs_str_int("KEY_KP_6", GLFW_KEY_KP_6),
+		hs_str_int("KEY_KP_7", GLFW_KEY_KP_7),
+		hs_str_int("KEY_KP_8", GLFW_KEY_KP_8),
+		hs_str_int("KEY_KP_9", GLFW_KEY_KP_9),
+		hs_str_int("KEY_KP_DECIMAL", GLFW_KEY_KP_DECIMAL),
+		hs_str_int("KEY_KP_DIVIDE", GLFW_KEY_KP_DIVIDE),
+		hs_str_int("KEY_KP_MULTIPLY", GLFW_KEY_KP_MULTIPLY),
+		hs_str_int("KEY_KP_SUBTRACT", GLFW_KEY_KP_SUBTRACT),
+		hs_str_int("KEY_KP_ADD", GLFW_KEY_KP_ADD),
+		hs_str_int("KEY_KP_ENTER", GLFW_KEY_KP_ENTER),
+		hs_str_int("KEY_KP_EQUAL", GLFW_KEY_KP_EQUAL),
+		hs_str_int("KEY_LEFT_SHIFT", GLFW_KEY_LEFT_SHIFT),
+		hs_str_int("KEY_LEFT_CONTROL", GLFW_KEY_LEFT_CONTROL),
+		hs_str_int("KEY_LEFT_ALT", GLFW_KEY_LEFT_ALT),
+		hs_str_int("KEY_LEFT_SUPER", GLFW_KEY_LEFT_SUPER),
+		hs_str_int("KEY_RIGHT_SHIFT", GLFW_KEY_RIGHT_SHIFT),
+		hs_str_int("KEY_RIGHT_CONTROL", GLFW_KEY_RIGHT_CONTROL),
+		hs_str_int("KEY_RIGHT_ALT", GLFW_KEY_RIGHT_ALT),
+		hs_str_int("KEY_RIGHT_SUPER", GLFW_KEY_RIGHT_SUPER),
+		hs_str_int("KEY_MENU", GLFW_KEY_MENU),
+	};
+
+	hs_create_table_(L, sizeof(tbl)/sizeof(struct hs_tbl_entry), tbl);
 	lua_setfield(L, honey_index, "window");
 }
 
-- 
cgit v1.2.1