Afegit mouse.cpp per amagar el cursor quan no està moventse
This commit is contained in:
32
source/mouse.cpp
Normal file
32
source/mouse.cpp
Normal file
@@ -0,0 +1,32 @@
|
||||
#include "mouse.h"
|
||||
#include <SDL.h>
|
||||
|
||||
namespace Mouse
|
||||
{
|
||||
Uint32 cursorHideTime = 3000; // Tiempo en milisegundos para ocultar el cursor
|
||||
Uint32 lastMouseMoveTime = 0; // Última vez que el ratón se movió
|
||||
bool cursorVisible = true; // Estado del cursor
|
||||
|
||||
void handleEvent(const SDL_Event &event)
|
||||
{
|
||||
if (event.type == SDL_MOUSEMOTION)
|
||||
{
|
||||
lastMouseMoveTime = SDL_GetTicks();
|
||||
if (!cursorVisible)
|
||||
{
|
||||
SDL_ShowCursor(SDL_ENABLE);
|
||||
cursorVisible = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void updateCursorVisibility()
|
||||
{
|
||||
Uint32 currentTime = SDL_GetTicks();
|
||||
if (cursorVisible && (currentTime - lastMouseMoveTime > cursorHideTime))
|
||||
{
|
||||
SDL_ShowCursor(SDL_DISABLE);
|
||||
cursorVisible = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user