47 lines
1.4 KiB
C++
47 lines
1.4 KiB
C++
#ifndef MOUSE_BUTTONS_CODES_HPP
|
|
#define MOUSE_BUTTONS_CODES_HPP
|
|
|
|
#include <cstdint>
|
|
#include <ostream>
|
|
|
|
namespace OpenEngine
|
|
{
|
|
typedef enum class MouseCode : uint16_t
|
|
{
|
|
// From glfw3.h
|
|
Button0 = 0,
|
|
Button1 = 1,
|
|
Button2 = 2,
|
|
Button3 = 3,
|
|
Button4 = 4,
|
|
Button5 = 5,
|
|
Button6 = 6,
|
|
Button7 = 7,
|
|
|
|
ButtonLast = Button7,
|
|
ButtonLeft = Button0,
|
|
ButtonRight = Button1,
|
|
ButtonMiddle = Button2
|
|
} Mouse;
|
|
|
|
inline std::ostream& operator<<(std::ostream& os, MouseCode mouseCode)
|
|
{
|
|
os << static_cast<int32_t>(mouseCode);
|
|
return os;
|
|
}
|
|
}
|
|
|
|
#define OE_MOUSE_BUTTON_0 ::OpenEngine::Mouse::Button0
|
|
#define OE_MOUSE_BUTTON_1 ::OpenEngine::Mouse::Button1
|
|
#define OE_MOUSE_BUTTON_2 ::OpenEngine::Mouse::Button2
|
|
#define OE_MOUSE_BUTTON_3 ::OpenEngine::Mouse::Button3
|
|
#define OE_MOUSE_BUTTON_4 ::OpenEngine::Mouse::Button4
|
|
#define OE_MOUSE_BUTTON_5 ::OpenEngine::Mouse::Button5
|
|
#define OE_MOUSE_BUTTON_6 ::OpenEngine::Mouse::Button6
|
|
#define OE_MOUSE_BUTTON_7 ::OpenEngine::Mouse::Button7
|
|
#define OE_MOUSE_BUTTON_LAST ::OpenEngine::Mouse::ButtonLast
|
|
#define OE_MOUSE_BUTTON_LEFT ::OpenEngine::Mouse::ButtonLeft
|
|
#define OE_MOUSE_BUTTON_RIGHT ::OpenEngine::Mouse::ButtonRight
|
|
|
|
#endif // MOUSE_BUTTONS_CODES_HPP
|