28 lines
833 B
C++
28 lines
833 B
C++
#include "mouse.h"
|
|
|
|
#include <SDL3/SDL.h> // Para SDL_GetTicks, Uint32, SDL_HideCursor, SDL_Show...
|
|
|
|
namespace Mouse {
|
|
Uint32 cursor_hide_time = 3000; // Tiempo en milisegundos para ocultar el cursor
|
|
Uint32 last_mouse_move_time = 0; // Última vez que el ratón se movió
|
|
bool cursor_visible = true; // Estado del cursor
|
|
|
|
void handleEvent(const SDL_Event &event) {
|
|
if (event.type == SDL_EVENT_MOUSE_MOTION) {
|
|
last_mouse_move_time = SDL_GetTicks();
|
|
if (!cursor_visible) {
|
|
SDL_ShowCursor();
|
|
cursor_visible = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
void updateCursorVisibility() {
|
|
Uint32 current_time = SDL_GetTicks();
|
|
if (cursor_visible && (current_time - last_mouse_move_time > cursor_hide_time)) {
|
|
SDL_HideCursor();
|
|
cursor_visible = false;
|
|
}
|
|
}
|
|
} // namespace Mouse
|