1
0
Fork 0
spectre/source/Platform/Win32/Win32Mouse.h

41 lines
747 B
C++

#ifndef PLATFORM_WIN32_MOUSE_H
#define PLATFORM_WIN32_MOUSE_H
#include <Windows.h>
#include <Spectre/System/Event.h>
#include <Spectre/Input/Mouse.h>
namespace sp {
class Win32Mouse : public Mouse
{
public :
~Win32Mouse() {}
virtual void init();
// Get mouse position
virtual Vector2f getPosition() const;
virtual Vector2f getAbsPosition() const;
virtual bool isButtonDown(Mouse::Button button) const;
static bool handleMessage(MSG msg, Event& event);
protected :
virtual void update(InputModule *input);
protected :
// position in relative (focused window) coordinates.
Vector2f m_position;
// position in absolute (screen) coordinates.
Vector2f m_abs_position;
};
} // namespace sp
#endif /* PLATFORM_WIN32_MOUSE_H */