/* * Copyright 2022-2025 Frederico de Oliveira Linhares * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "key.hpp" void cg_key_init(mrb_state *mrb) { struct RClass *cg_m, *cg_mKey; cg_m = mrb_module_get(mrb, "CandyGear"); cg_mKey = mrb_define_module_under(mrb, cg_m, "Key"); mrb_define_const(mrb, cg_mKey, "A", mrb_int_value(mrb, SDLK_A)); mrb_define_const(mrb, cg_mKey, "B", mrb_int_value(mrb, SDLK_B)); mrb_define_const(mrb, cg_mKey, "C", mrb_int_value(mrb, SDLK_C)); mrb_define_const(mrb, cg_mKey, "D", mrb_int_value(mrb, SDLK_D)); mrb_define_const(mrb, cg_mKey, "E", mrb_int_value(mrb, SDLK_E)); mrb_define_const(mrb, cg_mKey, "F", mrb_int_value(mrb, SDLK_F)); mrb_define_const(mrb, cg_mKey, "G", mrb_int_value(mrb, SDLK_G)); mrb_define_const(mrb, cg_mKey, "H", mrb_int_value(mrb, SDLK_H)); mrb_define_const(mrb, cg_mKey, "I", mrb_int_value(mrb, SDLK_I)); mrb_define_const(mrb, cg_mKey, "J", mrb_int_value(mrb, SDLK_J)); mrb_define_const(mrb, cg_mKey, "K", mrb_int_value(mrb, SDLK_K)); mrb_define_const(mrb, cg_mKey, "L", mrb_int_value(mrb, SDLK_L)); mrb_define_const(mrb, cg_mKey, "M", mrb_int_value(mrb, SDLK_M)); mrb_define_const(mrb, cg_mKey, "N", mrb_int_value(mrb, SDLK_N)); mrb_define_const(mrb, cg_mKey, "O", mrb_int_value(mrb, SDLK_O)); mrb_define_const(mrb, cg_mKey, "P", mrb_int_value(mrb, SDLK_P)); mrb_define_const(mrb, cg_mKey, "Q", mrb_int_value(mrb, SDLK_Q)); mrb_define_const(mrb, cg_mKey, "R", mrb_int_value(mrb, SDLK_R)); mrb_define_const(mrb, cg_mKey, "S", mrb_int_value(mrb, SDLK_S)); mrb_define_const(mrb, cg_mKey, "T", mrb_int_value(mrb, SDLK_T)); mrb_define_const(mrb, cg_mKey, "U", mrb_int_value(mrb, SDLK_U)); mrb_define_const(mrb, cg_mKey, "V", mrb_int_value(mrb, SDLK_V)); mrb_define_const(mrb, cg_mKey, "W", mrb_int_value(mrb, SDLK_W)); mrb_define_const(mrb, cg_mKey, "X", mrb_int_value(mrb, SDLK_X)); mrb_define_const(mrb, cg_mKey, "Y", mrb_int_value(mrb, SDLK_Y)); mrb_define_const(mrb, cg_mKey, "Z", mrb_int_value(mrb, SDLK_Z)); mrb_define_const(mrb, cg_mKey, "UP", mrb_int_value(mrb, SDLK_UP)); mrb_define_const(mrb, cg_mKey, "DOWN", mrb_int_value(mrb, SDLK_DOWN)); mrb_define_const(mrb, cg_mKey, "LEFT", mrb_int_value(mrb, SDLK_LEFT)); mrb_define_const(mrb, cg_mKey, "RIGHT", mrb_int_value(mrb, SDLK_RIGHT)); mrb_define_const( mrb, cg_mKey, "BACKSPACE", mrb_int_value(mrb, SDLK_BACKSPACE)); mrb_define_const(mrb, cg_mKey, "TAB", mrb_int_value(mrb, SDLK_TAB)); mrb_define_const( mrb, cg_mKey, "LEFT_SHIFT", mrb_int_value(mrb, SDLK_LSHIFT)); mrb_define_const( mrb, cg_mKey, "RIGHT_SHIFT", mrb_int_value(mrb, SDLK_RSHIFT)); mrb_define_const(mrb, cg_mKey, "SPACE", mrb_int_value(mrb, SDLK_SPACE)); mrb_define_const(mrb, cg_mKey, "LEFT_ALT", mrb_int_value(mrb, SDLK_LALT)); mrb_define_const(mrb, cg_mKey, "RIGHT_ALT", mrb_int_value(mrb, SDLK_RALT)); mrb_define_const(mrb, cg_mKey, "LEFT_CTRL", mrb_int_value(mrb, SDLK_LCTRL)); mrb_define_const(mrb, cg_mKey, "RIGHT_CTRL", mrb_int_value(mrb, SDLK_RCTRL)); }