diff options
author | Max Horn | 2010-11-28 14:57:59 +0000 |
---|---|---|
committer | Max Horn | 2010-11-28 14:57:59 +0000 |
commit | d5840b72f9535e303d340cb8f5f164ddb6fc27ee (patch) | |
tree | 70b002148eced2d94e20bdbe7926bde5817cd60d /backends/events | |
parent | 0b5f6d4c979028b78c3b6c33f371b46b31cd0c9b (diff) | |
download | scummvm-rg350-d5840b72f9535e303d340cb8f5f164ddb6fc27ee.tar.gz scummvm-rg350-d5840b72f9535e303d340cb8f5f164ddb6fc27ee.tar.bz2 scummvm-rg350-d5840b72f9535e303d340cb8f5f164ddb6fc27ee.zip |
DINGUX: Attempt to fix the new code for this backend
It seems in the gsoc2010-opengl branch, the dingux port was not anymore
updated at some point, so some changes that were made in general did not
make it till here. This is my attempt to fix at least the most obvious
problems, but without being able to compile it, all these changes should
be very carefully reviewed.
svn-id: r54522
Diffstat (limited to 'backends/events')
-rw-r--r-- | backends/events/dinguxsdl/dinguxsdl-events.cpp | 46 | ||||
-rw-r--r-- | backends/events/dinguxsdl/dinguxsdl-events.h | 11 |
2 files changed, 1 insertions, 56 deletions
diff --git a/backends/events/dinguxsdl/dinguxsdl-events.cpp b/backends/events/dinguxsdl/dinguxsdl-events.cpp index 1eed96acfe..017b46189d 100644 --- a/backends/events/dinguxsdl/dinguxsdl-events.cpp +++ b/backends/events/dinguxsdl/dinguxsdl-events.cpp @@ -26,7 +26,6 @@ #if defined(DINGUX) #include "backends/events/dinguxsdl/dinguxsdl-events.h" -#include "graphics/scaler/aspect.h" // for aspect2Real #define PAD_UP SDLK_UP #define PAD_DOWN SDLK_DOWN @@ -58,10 +57,6 @@ static int mapKey(SDLKey key, SDLMod mod, Uint16 unicode) { return key; } -DINGUXSdlEventSource::DINGUXSdlEventSource() : SdlEventSource() { - ; -} - bool DINGUXSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { if (ev.key.keysym.sym == PAD_UP) { if (ev.type == SDL_KEYDOWN) { @@ -182,45 +177,4 @@ bool DINGUXSdlEventSource::remapKey(SDL_Event &ev, Common::Event &event) { return false; } -void DINGUXSdlEventSource::fillMouseEvent(Common::Event &event, int x, int y) { - if (_grpMan->getVideoMode()->mode == GFX_HALF && !(_grpMan->isOverlayVisible())) { - event.mouse.x = x * 2; - event.mouse.y = y * 2; - } else { - event.mouse.x = x; - event.mouse.y = y; - } - - // Update the "keyboard mouse" coords - _km.x = x; - _km.y = y; - - // Adjust for the screen scaling - if (!(_grpMan->isOverlayVisible())) { - event.mouse.x /= (_grpMan->getVideoMode())->scaleFactor; - event.mouse.y /= (_grpMan->getVideoMode())->scaleFactor; -#if 0 - if (_grpMan->getVideoMode()->aspectRatioCorrection) - event.mouse.y = aspect2Real(event.mouse.y); -#endif - } -} - -void DINGUXSdlEventSource::warpMouse(int x, int y) { - int mouse_cur_x = _grpMan->getMouseCurState()->x; - int mouse_cur_y = _grpMan->getMouseCurState()->y; - - if ((mouse_cur_x != x) || (mouse_cur_y != y)) { - if (_grpMan->getVideoMode()->mode == GFX_HALF && !(_grpMan->isOverlayVisible())) { - x = x / 2; - y = y / 2; - } - } - SDL_WarpMouse(x, y); -} - -void DINGUXSdlEventSource::setCurrentGraphMan(DINGUXSdlGraphicsManager *_graphicManager) { - _grpMan = _graphicManager; -} - #endif /* DINGUX */ diff --git a/backends/events/dinguxsdl/dinguxsdl-events.h b/backends/events/dinguxsdl/dinguxsdl-events.h index f269fcf358..87814437e0 100644 --- a/backends/events/dinguxsdl/dinguxsdl-events.h +++ b/backends/events/dinguxsdl/dinguxsdl-events.h @@ -27,20 +27,11 @@ #define BACKENDS_EVENTS_SDL_DINGUX_H #if defined(DINGUX) -#include "backends/platform/dingux/dingux.h" -#include "backends/events/dinguxsdl/dinguxsdl-events.h" +#include "backends/events/sdl/sdl-events.h" class DINGUXSdlEventSource : public SdlEventSource { -public: - DINGUXSdlEventSource(); - void setCurrentGraphMan(DINGUXSdlGraphicsManager *_graphicManager); - protected: - DINGUXSdlGraphicsManager *_grpMan; - bool remapKey(SDL_Event &ev, Common::Event &event); - void fillMouseEvent(Common::Event &event, int x, int y); - void warpMouse(int x, int y); }; #endif /* DINGUX */ |