updated sdl keybard and added a - z keys along with esc
This commit is contained in:
parent
22be02259a
commit
78401ba1b2
3 changed files with 68 additions and 4 deletions
|
|
@ -23,7 +23,38 @@ void ARC_Keyboard_Create(ARC_Keyboard **keyboard, ARC_KeyboardInfo *info);
|
||||||
void ARC_Keyboard_Destroy(ARC_Keyboard *keyboard);
|
void ARC_Keyboard_Destroy(ARC_Keyboard *keyboard);
|
||||||
void ARC_Keyboard_Update(ARC_Keyboard *keyboard);
|
void ARC_Keyboard_Update(ARC_Keyboard *keyboard);
|
||||||
|
|
||||||
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, uint8_t keys);
|
typedef enum ARC_KeyboardKey {
|
||||||
|
ARC_KEY_A,
|
||||||
|
ARC_KEY_B,
|
||||||
|
ARC_KEY_C,
|
||||||
|
ARC_KEY_D,
|
||||||
|
ARC_KEY_E,
|
||||||
|
ARC_KEY_F,
|
||||||
|
ARC_KEY_G,
|
||||||
|
ARC_KEY_H,
|
||||||
|
ARC_KEY_I,
|
||||||
|
ARC_KEY_J,
|
||||||
|
ARC_KEY_K,
|
||||||
|
ARC_KEY_L,
|
||||||
|
ARC_KEY_M,
|
||||||
|
ARC_KEY_N,
|
||||||
|
ARC_KEY_O,
|
||||||
|
ARC_KEY_P,
|
||||||
|
ARC_KEY_Q,
|
||||||
|
ARC_KEY_R,
|
||||||
|
ARC_KEY_S,
|
||||||
|
ARC_KEY_T,
|
||||||
|
ARC_KEY_U,
|
||||||
|
ARC_KEY_V,
|
||||||
|
ARC_KEY_W,
|
||||||
|
ARC_KEY_X,
|
||||||
|
ARC_KEY_Y,
|
||||||
|
ARC_KEY_Z,
|
||||||
|
|
||||||
|
ARC_KEY_ESC,
|
||||||
|
} ARC_Keyboard_Key;
|
||||||
|
|
||||||
|
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, enum ARC_KeyboardKey key);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ void ARC_Keyboard_Destroy(ARC_Keyboard *keyboard){
|
||||||
void ARC_Keyboard_Update(ARC_Keyboard *keyboard){
|
void ARC_Keyboard_Update(ARC_Keyboard *keyboard){
|
||||||
}
|
}
|
||||||
|
|
||||||
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, uint8_t key){
|
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, enum ARC_KeyboardKey key){
|
||||||
return ARC_KEY_NONE;
|
return ARC_KEY_NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
#include "SDL_keycode.h"
|
||||||
#ifdef ARC_SDL
|
#ifdef ARC_SDL
|
||||||
#include "arc/input/sdl/keyboard.h"
|
#include "arc/input/sdl/keyboard.h"
|
||||||
#include "arc/input/keyboard.h"
|
#include "arc/input/keyboard.h"
|
||||||
|
|
@ -49,8 +50,40 @@ void ARC_Keyboard_Update(ARC_Keyboard *keyboard){
|
||||||
keyboard->released = (keyboard->keys + keyboard->event->key.keysym.sym);
|
keyboard->released = (keyboard->keys + keyboard->event->key.keysym.sym);
|
||||||
}
|
}
|
||||||
|
|
||||||
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, uint8_t key){
|
ARC_KeyboardState ARC_Keyboard_GetState(ARC_Keyboard *keyboard, enum ARC_KeyboardKey key){
|
||||||
return keyboard->keys[key];
|
switch(key){
|
||||||
|
case ARC_KEY_A: return keyboard->keys[SDLK_a];
|
||||||
|
case ARC_KEY_B: return keyboard->keys[SDLK_b];
|
||||||
|
case ARC_KEY_C: return keyboard->keys[SDLK_c];
|
||||||
|
case ARC_KEY_D: return keyboard->keys[SDLK_d];
|
||||||
|
case ARC_KEY_E: return keyboard->keys[SDLK_e];
|
||||||
|
case ARC_KEY_F: return keyboard->keys[SDLK_f];
|
||||||
|
case ARC_KEY_G: return keyboard->keys[SDLK_g];
|
||||||
|
case ARC_KEY_H: return keyboard->keys[SDLK_h];
|
||||||
|
case ARC_KEY_I: return keyboard->keys[SDLK_i];
|
||||||
|
case ARC_KEY_J: return keyboard->keys[SDLK_j];
|
||||||
|
case ARC_KEY_K: return keyboard->keys[SDLK_k];
|
||||||
|
case ARC_KEY_L: return keyboard->keys[SDLK_l];
|
||||||
|
case ARC_KEY_M: return keyboard->keys[SDLK_m];
|
||||||
|
case ARC_KEY_N: return keyboard->keys[SDLK_n];
|
||||||
|
case ARC_KEY_O: return keyboard->keys[SDLK_o];
|
||||||
|
case ARC_KEY_P: return keyboard->keys[SDLK_p];
|
||||||
|
case ARC_KEY_Q: return keyboard->keys[SDLK_q];
|
||||||
|
case ARC_KEY_R: return keyboard->keys[SDLK_r];
|
||||||
|
case ARC_KEY_S: return keyboard->keys[SDLK_s];
|
||||||
|
case ARC_KEY_T: return keyboard->keys[SDLK_t];
|
||||||
|
case ARC_KEY_U: return keyboard->keys[SDLK_u];
|
||||||
|
case ARC_KEY_V: return keyboard->keys[SDLK_v];
|
||||||
|
case ARC_KEY_W: return keyboard->keys[SDLK_w];
|
||||||
|
case ARC_KEY_X: return keyboard->keys[SDLK_x];
|
||||||
|
case ARC_KEY_Y: return keyboard->keys[SDLK_y];
|
||||||
|
case ARC_KEY_Z: return keyboard->keys[SDLK_z];
|
||||||
|
|
||||||
|
case ARC_KEY_ESC: return keyboard->keys[SDLK_ESCAPE];
|
||||||
|
|
||||||
|
default: return ARC_KEY_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // ARC_SDL
|
#endif // ARC_SDL
|
||||||
Loading…
Add table
Add a link
Reference in a new issue