1 #ifndef RAYLIB_CPP_INCLUDE_MOUSE_HPP_
2 #define RAYLIB_CPP_INCLUDE_MOUSE_HPP_
4 #include "./raylib.hpp"
5 #include "./Vector2.hpp"
17 return ::IsMouseButtonPressed(button);
24 return ::IsMouseButtonDown(button);
31 return ::IsMouseButtonReleased(button);
34 static inline bool IsButtonUp(
int button) {
35 return ::IsMouseButtonUp(button);
38 static inline int GetX() {
42 static inline int GetY() {
46 static inline void SetX(
int x) {
47 ::SetMousePosition(x, GetY());
50 static inline void SetY(
int y) {
51 ::SetMousePosition(GetX(), y);
54 static inline Vector2 GetPosition() {
55 return ::GetMousePosition();
58 static inline void SetPosition(
int x,
int y) {
59 ::SetMousePosition(x, y);
62 static inline void SetPosition(::Vector2 position) {
63 ::SetMousePosition(
static_cast<int>(position.x),
static_cast<int>(position.y));
66 static inline void SetOffset(
int offsetX = 0,
int offsetY = 0) {
67 ::SetMouseOffset(offsetX, offsetY);
70 static inline void SetOffset(::Vector2 offset) {
71 ::SetMouseOffset(
static_cast<int>(offset.x),
static_cast<int>(offset.y));
74 static inline void SetScale(
float scaleX = 1.0f,
float scaleY = 1.0f) {
75 ::SetMouseScale(scaleX, scaleY);
78 static inline void SetScale(::Vector2 scale) {
79 ::SetMouseScale(scale.x, scale.y);
82 static inline float GetWheelMove() {
83 return ::GetMouseWheelMove();
91 static inline void SetCursor(
int cursor = MOUSE_CURSOR_DEFAULT) {
92 ::SetMouseCursor(cursor);
106 return ::GetTouchY();
113 return ::GetTouchPosition(index);
118 #endif // RAYLIB_CPP_INCLUDE_MOUSE_HPP_