gitignore no ha deixat versionar cap fitxer de core
afegida gestió de ratolí
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
// global_events.cpp - Implementació dels events globals
|
||||
// © 2025 Port a C++20
|
||||
|
||||
#include "global_events.hpp"
|
||||
|
||||
#include "../rendering/sdl_manager.hpp"
|
||||
#include "gestor_escenes.hpp"
|
||||
#include "core/input/mouse.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
|
||||
Reference in New Issue
Block a user