From 66e8b9c0153766e3a0cd3a8725c5bf5ec9021315 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 19 Oct 2009 21:50:53 +0000 Subject: [PATCH] added mousebutton_{up/down} and mouse_motion events, renamed "pressed" to "down" and "released" to "up" in event names git-svn-id: svn://anubis/anaglym/trunk@112 99a6e188-d820-4881-8870-2d33a10e2619 --- Engine.cc | 56 ++++++++++++++++++++++---------------------- Engine.h | 16 ++++++------- tests/ballstairs.lua | 2 +- tests/cratestack.lua | 2 +- 4 files changed, 38 insertions(+), 38 deletions(-) diff --git a/Engine.cc b/Engine.cc index 0cd2fca..38e59a8 100644 --- a/Engine.cc +++ b/Engine.cc @@ -51,10 +51,10 @@ Engine::Engine(const string & path) userEvent.user.code = 0; m_event_update_present = false; - m_event_key_pressed_present = false; - m_event_key_released_present = false; - m_event_mousebutton_pressed_present = false; - m_event_mousebutton_released_present = false; + m_event_key_down_present = false; + m_event_key_up_present = false; + m_event_mousebutton_down_present = false; + m_event_mousebutton_up_present = false; m_event_mouse_motion_present = false; } @@ -102,10 +102,10 @@ bool Engine::load(const char * program) } checkForFunction("update_event", update); - checkForFunction("key_pressed_event", key_pressed); - checkForFunction("key_released_event", key_released); - checkForFunction("mousebutton_pressed_event", mousebutton_pressed); - checkForFunction("mousebutton_released_event", mousebutton_released); + checkForFunction("key_down_event", key_down); + checkForFunction("key_up_event", key_up); + checkForFunction("mousebutton_down_event", mousebutton_down); + checkForFunction("mousebutton_up_event", mousebutton_up); checkForFunction("mouse_motion_event", mouse_motion); return true; @@ -316,17 +316,17 @@ void Engine::run() { goto RET; } - key_pressed_event(event.key.keysym.sym); + key_down_event(event.key.keysym.sym); break; case SDL_KEYUP: - key_released_event(event.key.keysym.sym); + key_up_event(event.key.keysym.sym); break; case SDL_MOUSEBUTTONDOWN: - mousebutton_pressed_event(event.button.button, + mousebutton_down_event(event.button.button, event.button.x, event.button.y); break; case SDL_MOUSEBUTTONUP: - mousebutton_released_event(event.button.button, + mousebutton_up_event(event.button.button, event.button.x, event.button.y); break; case SDL_MOUSEMOTION: @@ -370,62 +370,62 @@ void Engine::update_event() m_drawing = false; } -void Engine::key_pressed_event(int keysym) +void Engine::key_down_event(int keysym) { m_keysDown[sdl_keymap[keysym]] = true; - if (m_event_key_pressed_present) + if (m_event_key_down_present) { lua_getfield(m_luaState, LUA_GLOBALSINDEX, - AG_EVENT_PREFIX "key_pressed"); + AG_EVENT_PREFIX "key_down"); lua_pushstring(m_luaState, sdl_keymap[keysym]); - /* call the key pressed event function + /* call the key down event function * This pops the function ref and arguments from the stack */ int s = lua_pcall(m_luaState, 1, LUA_MULTRET, 0); reportErrors(s); } } -void Engine::key_released_event(int keysym) +void Engine::key_up_event(int keysym) { m_keysDown.erase(sdl_keymap[keysym]); - if (m_event_key_pressed_present) + if (m_event_key_up_present) { lua_getfield(m_luaState, LUA_GLOBALSINDEX, - AG_EVENT_PREFIX "key_released"); + AG_EVENT_PREFIX "key_up"); lua_pushstring(m_luaState, sdl_keymap[keysym]); - /* call the key released event function + /* call the key up event function * This pops the function ref and arguments from the stack */ int s = lua_pcall(m_luaState, 1, LUA_MULTRET, 0); reportErrors(s); } } -void Engine::mousebutton_pressed_event(int button, int x, int y) +void Engine::mousebutton_down_event(int button, int x, int y) { - if (m_event_mousebutton_pressed_present) + if (m_event_mousebutton_down_present) { lua_getfield(m_luaState, LUA_GLOBALSINDEX, - AG_EVENT_PREFIX "mousebutton_pressed"); + AG_EVENT_PREFIX "mousebutton_down"); lua_pushinteger(m_luaState, button); lua_pushnumber(m_luaState, x); lua_pushnumber(m_luaState, y); - /* call the mouse button pressed event function + /* call the mouse button down event function * This pops the function ref and arguments from the stack */ int s = lua_pcall(m_luaState, 3, LUA_MULTRET, 0); reportErrors(s); } } -void Engine::mousebutton_released_event(int button, int x, int y) +void Engine::mousebutton_up_event(int button, int x, int y) { - if (m_event_mousebutton_released_present) + if (m_event_mousebutton_up_present) { lua_getfield(m_luaState, LUA_GLOBALSINDEX, - AG_EVENT_PREFIX "mousebutton_released"); + AG_EVENT_PREFIX "mousebutton_up"); lua_pushinteger(m_luaState, button); lua_pushnumber(m_luaState, x); lua_pushnumber(m_luaState, y); - /* call the mouse button released event function + /* call the mouse button up event function * This pops the function ref and arguments from the stack */ int s = lua_pcall(m_luaState, 3, LUA_MULTRET, 0); reportErrors(s); diff --git a/Engine.h b/Engine.h index 4138041..e4a4af6 100644 --- a/Engine.h +++ b/Engine.h @@ -117,10 +117,10 @@ class Engine void registerLibraries(); bool fileExists(const std::string & path); void update_event(); - void key_pressed_event(int keysym); - void key_released_event(int keysym); - void mousebutton_pressed_event(int button, int x, int y); - void mousebutton_released_event(int button, int x, int y); + void key_down_event(int keysym); + void key_up_event(int keysym); + void mousebutton_down_event(int button, int x, int y); + void mousebutton_up_event(int button, int x, int y); void mouse_motion_event(int x, int y, int xrel, int yrel); Object * createObject(bool is_static, GLuint display_list, float scale = 1.0f) @@ -149,10 +149,10 @@ class Engine std::map m_keysDown; bool m_event_update_present; - bool m_event_key_pressed_present; - bool m_event_key_released_present; - bool m_event_mousebutton_pressed_present; - bool m_event_mousebutton_released_present; + bool m_event_key_down_present; + bool m_event_key_up_present; + bool m_event_mousebutton_down_present; + bool m_event_mousebutton_up_present; bool m_event_mouse_motion_present; }; diff --git a/tests/ballstairs.lua b/tests/ballstairs.lua index 65fce3d..4324f18 100755 --- a/tests/ballstairs.lua +++ b/tests/ballstairs.lua @@ -7,7 +7,7 @@ function update_event() end end -function key_pressed_event(key) +function key_down_event(key) if (key == "d") then ball2:destroy() elseif (key == "p") then diff --git a/tests/cratestack.lua b/tests/cratestack.lua index 176adc3..499a7e3 100644 --- a/tests/cratestack.lua +++ b/tests/cratestack.lua @@ -21,7 +21,7 @@ ground = ag.loadStaticModel("crate", 10) ground:setPosition(0, 0, -10) ag.setCamera(2, -12, 8, 0, 0, 2, 0, 0, 1) -function key_pressed_event(key) +function key_down_event(key) if (key == "d") then if (cratenum >= 1) then local idx = math.random(cratenum)