mirror of
https://github.com/love2d/love.git
synced 2026-08-19 12:14:20 +02:00
Added support for a few more mouse buttons (via "x3", "x4", and "x5" button constants.)
This commit is contained in:
@@ -798,11 +798,14 @@ std::map<SDL_Keycode, love::keyboard::Keyboard::Key> Event::keys = Event::create
|
|||||||
|
|
||||||
EnumMap<love::mouse::Mouse::Button, Uint8, love::mouse::Mouse::BUTTON_MAX_ENUM>::Entry Event::buttonEntries[] =
|
EnumMap<love::mouse::Mouse::Button, Uint8, love::mouse::Mouse::BUTTON_MAX_ENUM>::Entry Event::buttonEntries[] =
|
||||||
{
|
{
|
||||||
{ love::mouse::Mouse::BUTTON_LEFT, SDL_BUTTON_LEFT},
|
{love::mouse::Mouse::BUTTON_LEFT, SDL_BUTTON_LEFT},
|
||||||
{ love::mouse::Mouse::BUTTON_MIDDLE, SDL_BUTTON_MIDDLE},
|
{love::mouse::Mouse::BUTTON_MIDDLE, SDL_BUTTON_MIDDLE},
|
||||||
{ love::mouse::Mouse::BUTTON_RIGHT, SDL_BUTTON_RIGHT},
|
{love::mouse::Mouse::BUTTON_RIGHT, SDL_BUTTON_RIGHT},
|
||||||
{ love::mouse::Mouse::BUTTON_X1, SDL_BUTTON_X1},
|
{love::mouse::Mouse::BUTTON_X1, SDL_BUTTON_X1},
|
||||||
{ love::mouse::Mouse::BUTTON_X2, SDL_BUTTON_X2},
|
{love::mouse::Mouse::BUTTON_X2, SDL_BUTTON_X2+0},
|
||||||
|
{love::mouse::Mouse::BUTTON_X3, SDL_BUTTON_X2+1},
|
||||||
|
{love::mouse::Mouse::BUTTON_X4, SDL_BUTTON_X2+2},
|
||||||
|
{love::mouse::Mouse::BUTTON_X5, SDL_BUTTON_X2+3},
|
||||||
};
|
};
|
||||||
|
|
||||||
EnumMap<love::mouse::Mouse::Button, Uint8, love::mouse::Mouse::BUTTON_MAX_ENUM> Event::buttons(Event::buttonEntries, sizeof(Event::buttonEntries));
|
EnumMap<love::mouse::Mouse::Button, Uint8, love::mouse::Mouse::BUTTON_MAX_ENUM> Event::buttons(Event::buttonEntries, sizeof(Event::buttonEntries));
|
||||||
|
|||||||
@@ -37,11 +37,14 @@ bool Mouse::getConstant(Button in, const char *&out)
|
|||||||
|
|
||||||
StringMap<Mouse::Button, Mouse::BUTTON_MAX_ENUM>::Entry Mouse::buttonEntries[] =
|
StringMap<Mouse::Button, Mouse::BUTTON_MAX_ENUM>::Entry Mouse::buttonEntries[] =
|
||||||
{
|
{
|
||||||
{"l", Mouse::BUTTON_LEFT},
|
{"l", BUTTON_LEFT},
|
||||||
{"m", Mouse::BUTTON_MIDDLE},
|
{"m", BUTTON_MIDDLE},
|
||||||
{"r", Mouse::BUTTON_RIGHT},
|
{"r", BUTTON_RIGHT},
|
||||||
{"x1", Mouse::BUTTON_X1},
|
{"x1", BUTTON_X1},
|
||||||
{"x2", Mouse::BUTTON_X2},
|
{"x2", BUTTON_X2},
|
||||||
|
{"x3", BUTTON_X3},
|
||||||
|
{"x4", BUTTON_X4},
|
||||||
|
{"x5", BUTTON_X5},
|
||||||
};
|
};
|
||||||
|
|
||||||
StringMap<Mouse::Button, Mouse::BUTTON_MAX_ENUM> Mouse::buttons(Mouse::buttonEntries, sizeof(Mouse::buttonEntries));
|
StringMap<Mouse::Button, Mouse::BUTTON_MAX_ENUM> Mouse::buttons(Mouse::buttonEntries, sizeof(Mouse::buttonEntries));
|
||||||
|
|||||||
@@ -36,14 +36,18 @@ class Mouse : public Module
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
// FIXME: We should probably just use button numbers.
|
||||||
enum Button
|
enum Button
|
||||||
{
|
{
|
||||||
BUTTON_INVALID,
|
BUTTON_INVALID = 0,
|
||||||
BUTTON_LEFT,
|
BUTTON_LEFT,
|
||||||
BUTTON_MIDDLE,
|
BUTTON_MIDDLE,
|
||||||
BUTTON_RIGHT,
|
BUTTON_RIGHT,
|
||||||
BUTTON_X1,
|
BUTTON_X1,
|
||||||
BUTTON_X2,
|
BUTTON_X2,
|
||||||
|
BUTTON_X3,
|
||||||
|
BUTTON_X4,
|
||||||
|
BUTTON_X5,
|
||||||
BUTTON_MAX_ENUM
|
BUTTON_MAX_ENUM
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user