diff options
author | Johannes Schickel | 2012-02-15 02:09:46 +0100 |
---|---|---|
committer | Johannes Schickel | 2012-02-15 02:23:37 +0100 |
commit | 5b3ebdf43de0bd9f04138a6e841f816f34377021 (patch) | |
tree | dc31ec081cc8d4895fda56967928ff04bb44235d /backends | |
parent | 05af37c08e9d359d509a29f7c5a85b70c0c10fdd (diff) | |
download | scummvm-rg350-5b3ebdf43de0bd9f04138a6e841f816f34377021.tar.gz scummvm-rg350-5b3ebdf43de0bd9f04138a6e841f816f34377021.tar.bz2 scummvm-rg350-5b3ebdf43de0bd9f04138a6e841f816f34377021.zip |
OPENGL: Prevent access to a few more members in the SDL OpenGL code.
Diffstat (limited to 'backends')
-rw-r--r-- | backends/graphics/opengl/opengl-graphics.cpp | 4 | ||||
-rw-r--r-- | backends/graphics/opengl/opengl-graphics.h | 19 | ||||
-rw-r--r-- | backends/graphics/openglsdl/openglsdl-graphics.cpp | 5 |
3 files changed, 17 insertions, 11 deletions
diff --git a/backends/graphics/opengl/opengl-graphics.cpp b/backends/graphics/opengl/opengl-graphics.cpp index f4ffd47f75..b69764f7c5 100644 --- a/backends/graphics/opengl/opengl-graphics.cpp +++ b/backends/graphics/opengl/opengl-graphics.cpp @@ -594,10 +594,8 @@ void OpenGLGraphicsManager::warpMouse(int x, int y) { scaledY += _displayY; } + setMousePosition(scaledX, scaledY); setInternalMousePosition(scaledX, scaledY); - - _cursorState.x = scaledX; - _cursorState.y = scaledY; } void OpenGLGraphicsManager::setMouseCursor(const byte *buf, uint w, uint h, int hotspotX, int hotspotY, uint32 keycolor, int cursorTargetScale, const Graphics::PixelFormat *format) { diff --git a/backends/graphics/opengl/opengl-graphics.h b/backends/graphics/opengl/opengl-graphics.h index 17810ddb78..ad8765bab1 100644 --- a/backends/graphics/opengl/opengl-graphics.h +++ b/backends/graphics/opengl/opengl-graphics.h @@ -217,6 +217,7 @@ protected: uint getAspectRatio() const; + void setFormatIsBGR(bool isBGR) { _formatBGR = isBGR; } bool _formatBGR; // @@ -285,6 +286,14 @@ protected: int _cursorTargetScale; bool _cursorNeedsRedraw; + /** + * Set up the mouse position for graphics output. + * + * @param x X coordinate in native coordinates. + * @param y Y coordinate in native coordinates. + */ + void setMousePosition(int x, int y) { _cursorState.x = x; _cursorState.y = y; } + virtual void refreshCursor(); virtual void refreshCursorScale(); @@ -312,11 +321,6 @@ protected: #ifdef USE_OSD /** - * The OSD contents. - */ - Common::Array<Common::String> _osdLines; - - /** * Returns the font used for on screen display */ virtual const Graphics::Font *getFontOSD(); @@ -326,6 +330,11 @@ protected: */ void updateOSD(); + /** + * The OSD contents. + */ + Common::Array<Common::String> _osdLines; + GLTexture *_osdTexture; Graphics::Surface _osdSurface; uint8 _osdAlpha; diff --git a/backends/graphics/openglsdl/openglsdl-graphics.cpp b/backends/graphics/openglsdl/openglsdl-graphics.cpp index 4154b6731b..53688e2fb5 100644 --- a/backends/graphics/openglsdl/openglsdl-graphics.cpp +++ b/backends/graphics/openglsdl/openglsdl-graphics.cpp @@ -376,7 +376,7 @@ bool OpenGLSdlGraphicsManager::loadGFXMode() { } // Check if the screen is BGR format - _formatBGR = _hwscreen->format->Rshift != 0; + setFormatIsBGR(_hwscreen->format->Rshift != 0); if (isFullscreen) { _lastFullscreenModeWidth = _videoMode.hardwareWidth; @@ -671,8 +671,7 @@ void OpenGLSdlGraphicsManager::transformMouseCoordinates(Common::Point &point) { } void OpenGLSdlGraphicsManager::notifyMousePos(Common::Point mouse) { - _cursorState.x = mouse.x; - _cursorState.y = mouse.y; + setMousePosition(mouse.x, mouse.y); } #endif |