Files
orni-attack/source/core/system/global_events.cpp
T
2025-12-03 17:40:27 +01:00

49 lines
1.3 KiB
C++

// global_events.cpp - Implementació dels events globals
// © 2025 Port a C++20
#include "global_events.hpp"
#include "core/input/mouse.hpp"
#include "core/rendering/sdl_manager.hpp"
#include "gestor_escenes.hpp"
namespace GlobalEvents {
bool handle(const SDL_Event& event, SDLManager& sdl) {
// Tecles globals de finestra (F1/F2/F3)
if (event.type == SDL_EVENT_KEY_DOWN) {
switch (event.key.key) {
case SDLK_F1:
sdl.decreaseWindowSize();
return true;
case SDLK_F2:
sdl.increaseWindowSize();
return true;
case SDLK_F3:
sdl.toggleFullscreen();
return true;
case SDLK_F4:
sdl.toggleVSync();
return true;
case SDLK_ESCAPE:
GestorEscenes::actual = GestorEscenes::Escena::EIXIR;
return true;
default:
break;
}
}
// Tancar finestra
if (event.type == SDL_EVENT_QUIT) {
GestorEscenes::actual = GestorEscenes::Escena::EIXIR;
return true;
}
// Gestió del ratolí (auto-ocultar)
Mouse::handleEvent(event);
return false; // Event no processat
}
} // namespace GlobalEvents