mirror of
https://github.com/love2d/love.git
synced 2026-08-20 20:49:54 +02:00
Removed redundant code in the event module
This commit is contained in:
@@ -117,187 +117,5 @@ void Event::clear()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Event::getConstant(const char *in, love::mouse::Mouse::Button &out)
|
|
||||||
{
|
|
||||||
return buttons.find(in, out);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool Event::getConstant(love::mouse::Mouse::Button in, const char *&out)
|
|
||||||
{
|
|
||||||
return buttons.find(in, out);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool Event::getConstant(const char *in, love::keyboard::Keyboard::Key &out)
|
|
||||||
{
|
|
||||||
return keys.find(in, out);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool Event::getConstant(love::keyboard::Keyboard::Key in, const char *&out)
|
|
||||||
{
|
|
||||||
return keys.find(in, out);
|
|
||||||
}
|
|
||||||
|
|
||||||
StringMap<love::mouse::Mouse::Button, love::mouse::Mouse::BUTTON_MAX_ENUM>::Entry Event::buttonEntries[] =
|
|
||||||
{
|
|
||||||
{"l", love::mouse::Mouse::BUTTON_LEFT},
|
|
||||||
{"m", love::mouse::Mouse::BUTTON_MIDDLE},
|
|
||||||
{"r", love::mouse::Mouse::BUTTON_RIGHT},
|
|
||||||
{"wu", love::mouse::Mouse::BUTTON_WHEELUP},
|
|
||||||
{"wd", love::mouse::Mouse::BUTTON_WHEELDOWN},
|
|
||||||
{"x1", love::mouse::Mouse::BUTTON_X1},
|
|
||||||
{"x2", love::mouse::Mouse::BUTTON_X2},
|
|
||||||
};
|
|
||||||
|
|
||||||
StringMap<love::mouse::Mouse::Button, love::mouse::Mouse::BUTTON_MAX_ENUM> Event::buttons(Event::buttonEntries, sizeof(Event::buttonEntries));
|
|
||||||
|
|
||||||
StringMap<love::keyboard::Keyboard::Key, love::keyboard::Keyboard::KEY_MAX_ENUM>::Entry Event::keyEntries[] =
|
|
||||||
{
|
|
||||||
{"backspace", love::keyboard::Keyboard::KEY_BACKSPACE},
|
|
||||||
{"tab", love::keyboard::Keyboard::KEY_TAB},
|
|
||||||
{"clear", love::keyboard::Keyboard::KEY_CLEAR},
|
|
||||||
{"return", love::keyboard::Keyboard::KEY_RETURN},
|
|
||||||
{"pause", love::keyboard::Keyboard::KEY_PAUSE},
|
|
||||||
{"escape", love::keyboard::Keyboard::KEY_ESCAPE},
|
|
||||||
{" ", love::keyboard::Keyboard::KEY_SPACE},
|
|
||||||
{"!", love::keyboard::Keyboard::KEY_EXCLAIM},
|
|
||||||
{"\"", love::keyboard::Keyboard::KEY_QUOTEDBL},
|
|
||||||
{"#", love::keyboard::Keyboard::KEY_HASH},
|
|
||||||
{"$", love::keyboard::Keyboard::KEY_DOLLAR},
|
|
||||||
{"&", love::keyboard::Keyboard::KEY_AMPERSAND},
|
|
||||||
{"'", love::keyboard::Keyboard::KEY_QUOTE},
|
|
||||||
{"(", love::keyboard::Keyboard::KEY_LEFTPAREN},
|
|
||||||
{")", love::keyboard::Keyboard::KEY_RIGHTPAREN},
|
|
||||||
{"*", love::keyboard::Keyboard::KEY_ASTERISK},
|
|
||||||
{"+", love::keyboard::Keyboard::KEY_PLUS},
|
|
||||||
{",", love::keyboard::Keyboard::KEY_COMMA},
|
|
||||||
{"-", love::keyboard::Keyboard::KEY_MINUS},
|
|
||||||
{".", love::keyboard::Keyboard::KEY_PERIOD},
|
|
||||||
{"/", love::keyboard::Keyboard::KEY_SLASH},
|
|
||||||
{"0", love::keyboard::Keyboard::KEY_0},
|
|
||||||
{"1", love::keyboard::Keyboard::KEY_1},
|
|
||||||
{"2", love::keyboard::Keyboard::KEY_2},
|
|
||||||
{"3", love::keyboard::Keyboard::KEY_3},
|
|
||||||
{"4", love::keyboard::Keyboard::KEY_4},
|
|
||||||
{"5", love::keyboard::Keyboard::KEY_5},
|
|
||||||
{"6", love::keyboard::Keyboard::KEY_6},
|
|
||||||
{"7", love::keyboard::Keyboard::KEY_7},
|
|
||||||
{"8", love::keyboard::Keyboard::KEY_8},
|
|
||||||
{"9", love::keyboard::Keyboard::KEY_9},
|
|
||||||
{":", love::keyboard::Keyboard::KEY_COLON},
|
|
||||||
{";", love::keyboard::Keyboard::KEY_SEMICOLON},
|
|
||||||
{"<", love::keyboard::Keyboard::KEY_LESS},
|
|
||||||
{"=", love::keyboard::Keyboard::KEY_EQUALS},
|
|
||||||
{">", love::keyboard::Keyboard::KEY_GREATER},
|
|
||||||
{"?", love::keyboard::Keyboard::KEY_QUESTION},
|
|
||||||
{"@", love::keyboard::Keyboard::KEY_AT},
|
|
||||||
|
|
||||||
{"[", love::keyboard::Keyboard::KEY_LEFTBRACKET},
|
|
||||||
{"\\", love::keyboard::Keyboard::KEY_BACKSLASH},
|
|
||||||
{"]", love::keyboard::Keyboard::KEY_RIGHTBRACKET},
|
|
||||||
{"^", love::keyboard::Keyboard::KEY_CARET},
|
|
||||||
{"_", love::keyboard::Keyboard::KEY_UNDERSCORE},
|
|
||||||
{"`", love::keyboard::Keyboard::KEY_BACKQUOTE},
|
|
||||||
{"a", love::keyboard::Keyboard::KEY_A},
|
|
||||||
{"b", love::keyboard::Keyboard::KEY_B},
|
|
||||||
{"c", love::keyboard::Keyboard::KEY_C},
|
|
||||||
{"d", love::keyboard::Keyboard::KEY_D},
|
|
||||||
{"e", love::keyboard::Keyboard::KEY_E},
|
|
||||||
{"f", love::keyboard::Keyboard::KEY_F},
|
|
||||||
{"g", love::keyboard::Keyboard::KEY_G},
|
|
||||||
{"h", love::keyboard::Keyboard::KEY_H},
|
|
||||||
{"i", love::keyboard::Keyboard::KEY_I},
|
|
||||||
{"j", love::keyboard::Keyboard::KEY_J},
|
|
||||||
{"k", love::keyboard::Keyboard::KEY_K},
|
|
||||||
{"l", love::keyboard::Keyboard::KEY_L},
|
|
||||||
{"m", love::keyboard::Keyboard::KEY_M},
|
|
||||||
{"n", love::keyboard::Keyboard::KEY_N},
|
|
||||||
{"o", love::keyboard::Keyboard::KEY_O},
|
|
||||||
{"p", love::keyboard::Keyboard::KEY_P},
|
|
||||||
{"q", love::keyboard::Keyboard::KEY_Q},
|
|
||||||
{"r", love::keyboard::Keyboard::KEY_R},
|
|
||||||
{"s", love::keyboard::Keyboard::KEY_S},
|
|
||||||
{"t", love::keyboard::Keyboard::KEY_T},
|
|
||||||
{"u", love::keyboard::Keyboard::KEY_U},
|
|
||||||
{"v", love::keyboard::Keyboard::KEY_V},
|
|
||||||
{"w", love::keyboard::Keyboard::KEY_W},
|
|
||||||
{"x", love::keyboard::Keyboard::KEY_X},
|
|
||||||
{"y", love::keyboard::Keyboard::KEY_Y},
|
|
||||||
{"z", love::keyboard::Keyboard::KEY_Z},
|
|
||||||
{"delete", love::keyboard::Keyboard::KEY_DELETE},
|
|
||||||
|
|
||||||
{"kp0", love::keyboard::Keyboard::KEY_KP0},
|
|
||||||
{"kp1", love::keyboard::Keyboard::KEY_KP1},
|
|
||||||
{"kp2", love::keyboard::Keyboard::KEY_KP2},
|
|
||||||
{"kp3", love::keyboard::Keyboard::KEY_KP3},
|
|
||||||
{"kp4", love::keyboard::Keyboard::KEY_KP4},
|
|
||||||
{"kp5", love::keyboard::Keyboard::KEY_KP5},
|
|
||||||
{"kp6", love::keyboard::Keyboard::KEY_KP6},
|
|
||||||
{"kp7", love::keyboard::Keyboard::KEY_KP7},
|
|
||||||
{"kp8", love::keyboard::Keyboard::KEY_KP8},
|
|
||||||
{"kp9", love::keyboard::Keyboard::KEY_KP9},
|
|
||||||
{"kp.", love::keyboard::Keyboard::KEY_KP_PERIOD},
|
|
||||||
{"kp/", love::keyboard::Keyboard::KEY_KP_DIVIDE},
|
|
||||||
{"kp*", love::keyboard::Keyboard::KEY_KP_MULTIPLY},
|
|
||||||
{"kp-", love::keyboard::Keyboard::KEY_KP_MINUS},
|
|
||||||
{"kp+", love::keyboard::Keyboard::KEY_KP_PLUS},
|
|
||||||
{"kpenter", love::keyboard::Keyboard::KEY_KP_ENTER},
|
|
||||||
{"kp=", love::keyboard::Keyboard::KEY_KP_EQUALS},
|
|
||||||
|
|
||||||
{"up", love::keyboard::Keyboard::KEY_UP},
|
|
||||||
{"down", love::keyboard::Keyboard::KEY_DOWN},
|
|
||||||
{"right", love::keyboard::Keyboard::KEY_RIGHT},
|
|
||||||
{"left", love::keyboard::Keyboard::KEY_LEFT},
|
|
||||||
{"insert", love::keyboard::Keyboard::KEY_INSERT},
|
|
||||||
{"home", love::keyboard::Keyboard::KEY_HOME},
|
|
||||||
{"end", love::keyboard::Keyboard::KEY_END},
|
|
||||||
{"pageup", love::keyboard::Keyboard::KEY_PAGEUP},
|
|
||||||
{"pagedown", love::keyboard::Keyboard::KEY_PAGEDOWN},
|
|
||||||
|
|
||||||
{"f1", love::keyboard::Keyboard::KEY_F1},
|
|
||||||
{"f2", love::keyboard::Keyboard::KEY_F2},
|
|
||||||
{"f3", love::keyboard::Keyboard::KEY_F3},
|
|
||||||
{"f4", love::keyboard::Keyboard::KEY_F4},
|
|
||||||
{"f5", love::keyboard::Keyboard::KEY_F5},
|
|
||||||
{"f6", love::keyboard::Keyboard::KEY_F6},
|
|
||||||
{"f7", love::keyboard::Keyboard::KEY_F7},
|
|
||||||
{"f8", love::keyboard::Keyboard::KEY_F8},
|
|
||||||
{"f9", love::keyboard::Keyboard::KEY_F9},
|
|
||||||
{"f10", love::keyboard::Keyboard::KEY_F10},
|
|
||||||
{"f11", love::keyboard::Keyboard::KEY_F11},
|
|
||||||
{"f12", love::keyboard::Keyboard::KEY_F12},
|
|
||||||
{"f13", love::keyboard::Keyboard::KEY_F13},
|
|
||||||
{"f14", love::keyboard::Keyboard::KEY_F14},
|
|
||||||
{"f15", love::keyboard::Keyboard::KEY_F15},
|
|
||||||
|
|
||||||
{"numlock", love::keyboard::Keyboard::KEY_NUMLOCK},
|
|
||||||
{"capslock", love::keyboard::Keyboard::KEY_CAPSLOCK},
|
|
||||||
{"scrollock", love::keyboard::Keyboard::KEY_SCROLLOCK},
|
|
||||||
{"rshift", love::keyboard::Keyboard::KEY_RSHIFT},
|
|
||||||
{"lshift", love::keyboard::Keyboard::KEY_LSHIFT},
|
|
||||||
{"rctrl", love::keyboard::Keyboard::KEY_RCTRL},
|
|
||||||
{"lctrl", love::keyboard::Keyboard::KEY_LCTRL},
|
|
||||||
{"ralt", love::keyboard::Keyboard::KEY_RALT},
|
|
||||||
{"lalt", love::keyboard::Keyboard::KEY_LALT},
|
|
||||||
{"rmeta", love::keyboard::Keyboard::KEY_RMETA},
|
|
||||||
{"lmeta", love::keyboard::Keyboard::KEY_LMETA},
|
|
||||||
{"lsuper", love::keyboard::Keyboard::KEY_LSUPER},
|
|
||||||
{"rsuper", love::keyboard::Keyboard::KEY_RSUPER},
|
|
||||||
{"mode", love::keyboard::Keyboard::KEY_MODE},
|
|
||||||
{"compose", love::keyboard::Keyboard::KEY_COMPOSE},
|
|
||||||
|
|
||||||
{"help", love::keyboard::Keyboard::KEY_HELP},
|
|
||||||
{"print", love::keyboard::Keyboard::KEY_PRINT},
|
|
||||||
{"sysreq", love::keyboard::Keyboard::KEY_SYSREQ},
|
|
||||||
{"break", love::keyboard::Keyboard::KEY_BREAK},
|
|
||||||
{"menu", love::keyboard::Keyboard::KEY_MENU},
|
|
||||||
{"power", love::keyboard::Keyboard::KEY_POWER},
|
|
||||||
{"euro", love::keyboard::Keyboard::KEY_EURO},
|
|
||||||
{"undo", love::keyboard::Keyboard::KEY_UNDO},
|
|
||||||
|
|
||||||
{"unknown", love::keyboard::Keyboard::KEY_UNKNOWN},
|
|
||||||
};
|
|
||||||
|
|
||||||
StringMap<love::keyboard::Keyboard::Key, love::keyboard::Keyboard::KEY_MAX_ENUM> Event::keys(Event::keyEntries, sizeof(Event::keyEntries));
|
|
||||||
|
|
||||||
} // event
|
} // event
|
||||||
} // love
|
} // love
|
||||||
|
|||||||
@@ -63,18 +63,10 @@ public:
|
|||||||
|
|
||||||
virtual void pump() = 0;
|
virtual void pump() = 0;
|
||||||
|
|
||||||
static bool getConstant(const char *in, love::mouse::Mouse::Button &out);
|
|
||||||
static bool getConstant(love::mouse::Mouse::Button in, const char *&out);
|
|
||||||
static bool getConstant(const char *in, love::keyboard::Keyboard::Key &out);
|
|
||||||
static bool getConstant(love::keyboard::Keyboard::Key in, const char *&out);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
thread::Mutex *mutex;
|
thread::Mutex *mutex;
|
||||||
std::queue<Message *> queue;
|
std::queue<Message *> queue;
|
||||||
static StringMap<love::mouse::Mouse::Button, love::mouse::Mouse::BUTTON_MAX_ENUM>::Entry buttonEntries[];
|
|
||||||
static StringMap<love::mouse::Mouse::Button, love::mouse::Mouse::BUTTON_MAX_ENUM> buttons;
|
|
||||||
static StringMap<love::keyboard::Keyboard::Key, love::keyboard::Keyboard::KEY_MAX_ENUM>::Entry keyEntries[];
|
|
||||||
static StringMap<love::keyboard::Keyboard::Key, love::keyboard::Keyboard::KEY_MAX_ENUM> keys;
|
|
||||||
}; // Event
|
}; // Event
|
||||||
|
|
||||||
} // event
|
} // event
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ Message *Event::convert(SDL_Event &e)
|
|||||||
case SDL_KEYDOWN:
|
case SDL_KEYDOWN:
|
||||||
if (!keys.find(e.key.keysym.sym, key))
|
if (!keys.find(e.key.keysym.sym, key))
|
||||||
key = love::keyboard::Keyboard::KEY_UNKNOWN;
|
key = love::keyboard::Keyboard::KEY_UNKNOWN;
|
||||||
if (!love::event::Event::keys.find(key, txt))
|
if (!love::keyboard::Keyboard::getConstant(key, txt))
|
||||||
txt = "unknown";
|
txt = "unknown";
|
||||||
arg1 = new Variant(txt, strlen(txt));
|
arg1 = new Variant(txt, strlen(txt));
|
||||||
arg2 = new Variant((double) e.key.keysym.unicode);
|
arg2 = new Variant((double) e.key.keysym.unicode);
|
||||||
@@ -104,7 +104,7 @@ Message *Event::convert(SDL_Event &e)
|
|||||||
case SDL_KEYUP:
|
case SDL_KEYUP:
|
||||||
if (!keys.find(e.key.keysym.sym, key))
|
if (!keys.find(e.key.keysym.sym, key))
|
||||||
key = love::keyboard::Keyboard::KEY_UNKNOWN;
|
key = love::keyboard::Keyboard::KEY_UNKNOWN;
|
||||||
if (!love::event::Event::keys.find(key, txt))
|
if (!love::keyboard::Keyboard::getConstant(key, txt))
|
||||||
txt = "unknown";
|
txt = "unknown";
|
||||||
arg1 = new Variant(txt, strlen(txt));
|
arg1 = new Variant(txt, strlen(txt));
|
||||||
msg = new Message("keyreleased", arg1);
|
msg = new Message("keyreleased", arg1);
|
||||||
@@ -112,7 +112,7 @@ Message *Event::convert(SDL_Event &e)
|
|||||||
break;
|
break;
|
||||||
case SDL_MOUSEBUTTONDOWN:
|
case SDL_MOUSEBUTTONDOWN:
|
||||||
case SDL_MOUSEBUTTONUP:
|
case SDL_MOUSEBUTTONUP:
|
||||||
if (buttons.find(e.button.button, button) && love::event::Event::buttons.find(button, txt))
|
if (buttons.find(e.button.button, button) && love::mouse::Mouse::getConstant(button, txt))
|
||||||
{
|
{
|
||||||
arg1 = new Variant((double) e.button.x);
|
arg1 = new Variant((double) e.button.x);
|
||||||
arg2 = new Variant((double) e.button.y);
|
arg2 = new Variant((double) e.button.y);
|
||||||
|
|||||||
Reference in New Issue
Block a user