Wrap SDL event type enum (partially)
This commit is contained in:
parent
772f4b665a
commit
2feb486f20
|
|
@ -83,7 +83,7 @@ export namespace core
|
||||||
// Handles an SDL event. Returns true if the event has been handled.
|
// Handles an SDL event. Returns true if the event has been handled.
|
||||||
bool handle_event(const sdl::Event* event)
|
bool handle_event(const sdl::Event* event)
|
||||||
{
|
{
|
||||||
if (event->type == SDL_EVENT_QUIT) {
|
if (event->type == sdl::EventType::Quit) {
|
||||||
// Exit the application
|
// Exit the application
|
||||||
keep_running_ = false;
|
keep_running_ = false;
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,7 @@ export namespace game
|
||||||
// Handles an SDL event. Returns true if the event has been handled.
|
// Handles an SDL event. Returns true if the event has been handled.
|
||||||
bool handle_event(const sdl::Event* event)
|
bool handle_event(const sdl::Event* event)
|
||||||
{
|
{
|
||||||
if (event->type == SDL_EVENT_MOUSE_MOTION) {
|
if (event->type == sdl::EventType::MouseMotion) {
|
||||||
player_sprite_.move(
|
player_sprite_.move(
|
||||||
event->motion.x - 50,
|
event->motion.x - 50,
|
||||||
event->motion.y - 50
|
event->motion.y - 50
|
||||||
|
|
@ -70,7 +70,7 @@ export namespace game
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event->type == SDL_EVENT_MOUSE_BUTTON_UP) {
|
if (event->type == sdl::EventType::MouseButtonUp) {
|
||||||
sprites_.emplace_back(
|
sprites_.emplace_back(
|
||||||
engine_.get_render_server().load_texture("assets/neofox.png"),
|
engine_.get_render_server().load_texture("assets/neofox.png"),
|
||||||
sdl::FRect{
|
sdl::FRect{
|
||||||
|
|
|
||||||
|
|
@ -8,4 +8,23 @@ export namespace sdl
|
||||||
{
|
{
|
||||||
// Simple alias for SDL_Event union
|
// Simple alias for SDL_Event union
|
||||||
using Event = SDL_Event;
|
using Event = SDL_Event;
|
||||||
|
|
||||||
|
// Alias for EventType enum
|
||||||
|
using EventType_t = SDL_EventType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Wrapper for the SDL_EventType enum.
|
||||||
|
*
|
||||||
|
* We're using a namespace here to emulate an enum-like interface, without having to copy the entire enum.
|
||||||
|
* More constants can be added on demand.
|
||||||
|
*/
|
||||||
|
namespace EventType
|
||||||
|
{
|
||||||
|
constexpr EventType_t Quit = SDL_EVENT_QUIT;
|
||||||
|
constexpr EventType_t KeyDown = SDL_EVENT_KEY_DOWN;
|
||||||
|
constexpr EventType_t KeyUp = SDL_EVENT_KEY_UP;
|
||||||
|
constexpr EventType_t MouseMotion = SDL_EVENT_MOUSE_MOTION;
|
||||||
|
constexpr EventType_t MouseButtonUp = SDL_EVENT_MOUSE_BUTTON_UP;
|
||||||
|
constexpr EventType_t MouseButtonDown = SDL_EVENT_MOUSE_BUTTON_DOWN;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue