diff options
author | rsn8887 | 2017-02-18 12:25:47 -0600 |
---|---|---|
committer | rsn8887 | 2017-02-18 18:20:10 -0600 |
commit | c0b095d793cf2ffa71830cc7d1ebb153ac70eccb (patch) | |
tree | b1c2c3c7ee479f1f03739238f540e14789cd2ee7 /backends/events/sdl | |
parent | 75004c429c2eb114b28cbb8adb10c6e34b2716c0 (diff) | |
download | scummvm-rg350-c0b095d793cf2ffa71830cc7d1ebb153ac70eccb.tar.gz scummvm-rg350-c0b095d793cf2ffa71830cc7d1ebb153ac70eccb.tar.bz2 scummvm-rg350-c0b095d793cf2ffa71830cc7d1ebb153ac70eccb.zip |
SDL: Cleanup, replaced _km.multiplier with #define
Diffstat (limited to 'backends/events/sdl')
-rw-r--r-- | backends/events/sdl/sdl-events.cpp | 68 | ||||
-rw-r--r-- | backends/events/sdl/sdl-events.h | 3 |
2 files changed, 36 insertions, 35 deletions
diff --git a/backends/events/sdl/sdl-events.cpp b/backends/events/sdl/sdl-events.cpp index dccdef971b..378e0370fb 100644 --- a/backends/events/sdl/sdl-events.cpp +++ b/backends/events/sdl/sdl-events.cpp @@ -179,8 +179,8 @@ void SdlEventSource::processMouseEvent(Common::Event &event, int x, int y) { } // Update the "keyboard mouse" coords - _km.x = x * _km.multiplier; - _km.y = y * _km.multiplier; + _km.x = x * MULTIPLIER; + _km.y = y * MULTIPLIER; } bool SdlEventSource::handleKbdMouse(Common::Event &event) { @@ -207,36 +207,36 @@ bool SdlEventSource::handleKbdMouse(Common::Event &event) { if (_km.x_down_count) { if (curTime > _km.x_down_time + 300) { if (_km.x_vel > 0) - _km.x_vel += _km.multiplier; + _km.x_vel += MULTIPLIER; else - _km.x_vel -= _km.multiplier; + _km.x_vel -= MULTIPLIER; } else if (curTime > _km.x_down_time + 200) { if (_km.x_vel > 0) - _km.x_vel = 5 * _km.multiplier; + _km.x_vel = 5 * MULTIPLIER; else - _km.x_vel = -5 * _km.multiplier; + _km.x_vel = -5 * MULTIPLIER; } } if (_km.y_down_count) { if (curTime > _km.y_down_time + 300) { if (_km.y_vel > 0) - _km.y_vel += _km.multiplier; + _km.y_vel += MULTIPLIER; else - _km.y_vel -= _km.multiplier; + _km.y_vel -= MULTIPLIER; } else if (curTime > _km.y_down_time + 200) { if (_km.y_vel > 0) - _km.y_vel = 5 * _km.multiplier; + _km.y_vel = 5 * MULTIPLIER; else - _km.y_vel = -5 * _km.multiplier; + _km.y_vel = -5 * MULTIPLIER; } } - // The modifier key makes the mouse movement slower - // The extra factor of delay/25 makes velocities - // independent of kbdMouse update rate - // all velovities were originally chosen - // at a delay of 25, so that is the reference - // operator order is important to avoid overflow + // - The modifier key makes the mouse movement slower + // - The extra factor "delay/25" ensures velocities + // are independent of the kbdMouse update rate + // - all velocities were originally chosen + // at a delay of 25, so that is the reference used here + // - note: operator order is important to avoid overflow if (_km.modifier) { _km.x += ((_km.x_vel / 10) * ((int16)_km.delay_time)) / 25; _km.y += ((_km.y_vel / 10) * ((int16)_km.delay_time)) / 25; @@ -247,31 +247,31 @@ bool SdlEventSource::handleKbdMouse(Common::Event &event) { if (_km.x < 0) { _km.x = 0; - _km.x_vel = -1 * _km.multiplier; + _km.x_vel = -1 * MULTIPLIER; _km.x_down_count = 1; - } else if (_km.x > _km.x_max * _km.multiplier) { - _km.x = _km.x_max * _km.multiplier; - _km.x_vel = 1 * _km.multiplier; + } else if (_km.x > _km.x_max * MULTIPLIER) { + _km.x = _km.x_max * MULTIPLIER; + _km.x_vel = 1 * MULTIPLIER; _km.x_down_count = 1; } if (_km.y < 0) { _km.y = 0; - _km.y_vel = -1 * _km.multiplier; + _km.y_vel = -1 * MULTIPLIER; _km.y_down_count = 1; - } else if (_km.y > _km.y_max * _km.multiplier) { - _km.y = _km.y_max * _km.multiplier; - _km.y_vel = 1 * _km.multiplier; + } else if (_km.y > _km.y_max * MULTIPLIER) { + _km.y = _km.y_max * MULTIPLIER; + _km.y_vel = 1 * MULTIPLIER; _km.y_down_count = 1; } if (_graphicsManager) { - _graphicsManager->getWindow()->warpMouseInWindow((Uint16)(_km.x / _km.multiplier), (Uint16)(_km.y / _km.multiplier)); + _graphicsManager->getWindow()->warpMouseInWindow((Uint16)(_km.x / MULTIPLIER), (Uint16)(_km.y / MULTIPLIER)); } if (_km.x != oldKmX || _km.y != oldKmY) { event.type = Common::EVENT_MOUSEMOVE; - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); return true; } } @@ -517,7 +517,7 @@ bool SdlEventSource::dispatchSDLEvent(SDL_Event &ev, Common::Event &event) { // with a mouse wheel event. However, SDL2 does not supply // these, thus we use whatever we got last time. It seems // these are always stored in _km.x, _km.y. - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); if (yDir < 0) { event.type = Common::EVENT_WHEELDOWN; return true; @@ -744,10 +744,10 @@ bool SdlEventSource::handleMouseButtonUp(SDL_Event &ev, Common::Event &event) { bool SdlEventSource::handleJoyButtonDown(SDL_Event &ev, Common::Event &event) { if (ev.jbutton.button == JOY_BUT_LMOUSE) { event.type = Common::EVENT_LBUTTONDOWN; - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); } else if (ev.jbutton.button == JOY_BUT_RMOUSE) { event.type = Common::EVENT_RBUTTONDOWN; - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); } else { event.type = Common::EVENT_KEYDOWN; switch (ev.jbutton.button) { @@ -775,10 +775,10 @@ bool SdlEventSource::handleJoyButtonDown(SDL_Event &ev, Common::Event &event) { bool SdlEventSource::handleJoyButtonUp(SDL_Event &ev, Common::Event &event) { if (ev.jbutton.button == JOY_BUT_LMOUSE) { event.type = Common::EVENT_LBUTTONUP; - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); } else if (ev.jbutton.button == JOY_BUT_RMOUSE) { event.type = Common::EVENT_RBUTTONUP; - processMouseEvent(event, _km.x / _km.multiplier, _km.y / _km.multiplier); + processMouseEvent(event, _km.x / MULTIPLIER, _km.y / MULTIPLIER); } else { event.type = Common::EVENT_KEYUP; switch (ev.jbutton.button) { @@ -808,7 +808,7 @@ bool SdlEventSource::handleJoyAxisMotion(SDL_Event &ev, Common::Event &event) { int axis = ev.jaxis.value; #ifdef JOY_ANALOG // conversion factor between keyboard mouse and joy axis value - int vel_to_axis = (1500 / _km.multiplier); + int vel_to_axis = (1500 / MULTIPLIER); #else if (axis > JOY_DEADZONE) { axis -= JOY_DEADZONE; @@ -824,7 +824,7 @@ bool SdlEventSource::handleJoyAxisMotion(SDL_Event &ev, Common::Event &event) { _km.x_down_count = 0; #else if (axis != 0) { - _km.x_vel = (axis > 0) ? 1 * _km.multiplier:-1 * _km.multiplier; + _km.x_vel = (axis > 0) ? 1 * MULTIPLIER:-1 * MULTIPLIER; _km.x_down_count = 1; } else { _km.x_vel = 0; @@ -840,7 +840,7 @@ bool SdlEventSource::handleJoyAxisMotion(SDL_Event &ev, Common::Event &event) { _km.y_down_count = 0; #else if (axis != 0) { - _km.y_vel = (-axis > 0) ? 1 * _km.multiplier: -1 * _km.multiplier; + _km.y_vel = (-axis > 0) ? 1 * MULTIPLIER: -1 * MULTIPLIER; _km.y_down_count = 1; } else { _km.y_vel = 0; diff --git a/backends/events/sdl/sdl-events.h b/backends/events/sdl/sdl-events.h index c1d6057dac..334bf8acfc 100644 --- a/backends/events/sdl/sdl-events.h +++ b/backends/events/sdl/sdl-events.h @@ -28,6 +28,8 @@ #include "common/events.h" +// multiplier used to increase resolution for keyboard/joystick mouse +#define MULTIPLIER 16 /** * The SDL event source. @@ -59,7 +61,6 @@ protected: struct KbdMouse { int16 x, y, x_vel, y_vel, x_max, y_max, x_down_count, y_down_count; - static const int16 multiplier = 16; uint32 last_time, delay_time, x_down_time, y_down_time; bool modifier; }; |