Elaztek Developer Hub
Blamite Game Engine - blam!  00388.06.24.23.2301.blamite
The core library for the Blamite Game Engine.
keyboard.h
Go to the documentation of this file.
1 // Blamite Game Engine - Keyboard Input Handling //
3 // (c) Elaztek Studios 2019 //
5 
6 #pragma once
7 
8 #include <Windows.h>
9 #include <sdl2/SDL_keyboard.h>
10 
11 #ifndef BLAM
12 #define BLAM
13 #endif
14 
15 namespace Blam::Input
16 {
29  BLAM int HandleCharacterInput(WPARAM wParam);
30 
43  BLAM int HandleKeyPress(WPARAM wParam);
44 
50  BLAM void FireKeyPress(SDL_Keycode key);
51 
57  BLAM void FireCharacterInput(char character);
58 
59  BLAM void SetKeyState(SDL_Keycode key, bool down);
60 
61  BLAM bool IsKeyDown(SDL_Keycode key);
62 
63  BLAM void FireMouseClick(uint8_t button);
64  BLAM void FireMouseMove(int x, int y);
65 
66  BLAM void SetMouseButtonState(uint8_t button, bool down);
67  BLAM bool IsMouseButtonDown(uint8_t button);
68 }
SDLK_BACKSPACE
@ SDLK_BACKSPACE
Definition: SdlEmulationLayer.h:387
BLAM
#define BLAM
Definition: keyboard.h:12
uint8_t
unsigned char uint8_t
Definition: stdint.h:124
special_keys
std::vector< int > special_keys
List of all special keys, or non-alphanumeric keys to be handled from the WM_KEYDOWN message.
Definition: keyboard.cpp:24
Blam::Input::HandleKeyPress
BLAM int HandleKeyPress(WPARAM wParam)
Handles virtual key based input.
Definition: keyboard.cpp:131
SDLK_HOME
@ SDLK_HOME
Definition: SdlEmulationLayer.h:477
Blam::Input::FireCharacterInput
BLAM void FireCharacterInput(char character)
Fires a character input event.
Definition: keyboard.cpp:158
SDLK_F10
@ SDLK_F10
Definition: SdlEmulationLayer.h:469
isSpecialKey
bool isSpecialKey(WPARAM virtual_key)
Checks if the provided virtual key is found within the list of special keys.
Definition: keyboard.cpp:51
Blam::Input::FireMouseMove
BLAM void FireMouseMove(int x, int y)
Definition: mouse.cpp:17
keyboard.h
SDL_Keycode
Ogre::int32 SDL_Keycode
Definition: SdlEmulationLayer.h:10
Blam::Input::FireKeyPress
BLAM void FireKeyPress(SDL_Keycode key)
Fires a key press event.
Definition: keyboard.cpp:152
SDLK_F12
@ SDLK_F12
Definition: SdlEmulationLayer.h:471
SDLK_F1
@ SDLK_F1
Definition: SdlEmulationLayer.h:460
SDLK_UP
@ SDLK_UP
Definition: SdlEmulationLayer.h:485
SDLK_F8
@ SDLK_F8
Definition: SdlEmulationLayer.h:467
Blam::Input::IsMouseButtonDown
BLAM bool IsMouseButtonDown(uint8_t button)
Definition: mouse.cpp:60
Blam::Input::SetMouseButtonState
BLAM void SetMouseButtonState(uint8_t button, bool down)
Definition: mouse.cpp:25
SDLK_F4
@ SDLK_F4
Definition: SdlEmulationLayer.h:463
SDLK_RETURN
@ SDLK_RETURN
Definition: SdlEmulationLayer.h:385
normal_chars
std::vector< char > normal_chars
List of all standard characters to be handled from the WM_CHAR message.
Definition: keyboard.cpp:33
isRegularKey
bool isRegularKey(WPARAM virtual_key)
Determines whether or not the provided key is found in the list of normal characters.
Definition: keyboard.cpp:74
y
font DisplayOffset y
Definition: README.txt:68
SDLK_RIGHT
@ SDLK_RIGHT
Definition: SdlEmulationLayer.h:482
SDLK_F2
@ SDLK_F2
Definition: SdlEmulationLayer.h:461
Blam::Input
Definition: keyboard.h:15
SDLK_F7
@ SDLK_F7
Definition: SdlEmulationLayer.h:466
Blam::Input::HandleCharacterInput
BLAM int HandleCharacterInput(WPARAM wParam)
Handles character based input.
Definition: keyboard.cpp:116
SDLK_LEFT
@ SDLK_LEFT
Definition: SdlEmulationLayer.h:483
SDLK_DOWN
@ SDLK_DOWN
Definition: SdlEmulationLayer.h:484
SDLK_F9
@ SDLK_F9
Definition: SdlEmulationLayer.h:468
Blam::Input::IsKeyDown
BLAM bool IsKeyDown(SDL_Keycode key)
Definition: keyboard.cpp:204
Blam::Input::FireMouseClick
BLAM void FireMouseClick(uint8_t button)
Definition: mouse.cpp:11
SDLK_TAB
@ SDLK_TAB
Definition: SdlEmulationLayer.h:388
SDLK_F6
@ SDLK_F6
Definition: SdlEmulationLayer.h:465
Blam::Input::SetKeyState
BLAM void SetKeyState(SDL_Keycode key, bool down)
Definition: keyboard.cpp:169
active_keys
std::vector< SDL_Keycode > active_keys
Definition: keyboard.cpp:42
SDLK_F11
@ SDLK_F11
Definition: SdlEmulationLayer.h:470
x
config GlyphExtraSpacing x
Definition: README.txt:30
lock_keystate
bool lock_keystate
Definition: keyboard.cpp:167
SDLK_F5
@ SDLK_F5
Definition: SdlEmulationLayer.h:464
SDLK_F3
@ SDLK_F3
Definition: SdlEmulationLayer.h:462