diff options
author | Johannes Schickel | 2013-10-24 00:06:32 +0200 |
---|---|---|
committer | Johannes Schickel | 2013-10-24 00:06:32 +0200 |
commit | ea6d38d5f3b123b765e5bf8e2dc4f957e4b43eb6 (patch) | |
tree | 7ae9023d618e271f202e0847092ec2f92b9a9048 /backends/platform | |
parent | 281672e1718d5f960061b714f79924125922e1e5 (diff) | |
download | scummvm-rg350-ea6d38d5f3b123b765e5bf8e2dc4f957e4b43eb6.tar.gz scummvm-rg350-ea6d38d5f3b123b765e5bf8e2dc4f957e4b43eb6.tar.bz2 scummvm-rg350-ea6d38d5f3b123b765e5bf8e2dc4f957e4b43eb6.zip |
SDL: Make activateManager/deactivateManager SdlGraphicsManager specific.
We can do this now that we can use virtual inheritance and dynamic_cast
because we enabled RTTI.
Diffstat (limited to 'backends/platform')
-rw-r--r-- | backends/platform/sdl/sdl.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp index c240727069..6175f07a53 100644 --- a/backends/platform/sdl/sdl.cpp +++ b/backends/platform/sdl/sdl.cpp @@ -91,7 +91,7 @@ OSystem_SDL::~OSystem_SDL() { delete _savefileManager; _savefileManager = 0; if (_graphicsManager) { - _graphicsManager->deactivateManager(); + dynamic_cast<SdlGraphicsManager *>(_graphicsManager)->deactivateManager(); } delete _graphicsManager; _graphicsManager = 0; @@ -240,7 +240,7 @@ void OSystem_SDL::initBackend() { // so the virtual keyboard can be initialized, but we have to add the // graphics manager as an event observer after initializing the event // manager. - _graphicsManager->activateManager(); + dynamic_cast<SdlGraphicsManager *>(_graphicsManager)->activateManager(); } #if defined(USE_TASKBAR) @@ -585,14 +585,14 @@ bool OSystem_SDL::setGraphicsMode(int mode) { // manager, delete and create the new mode graphics manager if (_graphicsMode >= _firstGLMode && mode < _firstGLMode) { debug(1, "switching to plain SDL graphics"); - _graphicsManager->deactivateManager(); + dynamic_cast<SdlGraphicsManager *>(_graphicsManager)->deactivateManager(); delete _graphicsManager; _graphicsManager = new SurfaceSdlGraphicsManager(_eventSource); switchedManager = true; } else if (_graphicsMode < _firstGLMode && mode >= _firstGLMode) { debug(1, "switching to OpenGL graphics"); - _graphicsManager->deactivateManager(); + dynamic_cast<SdlGraphicsManager *>(_graphicsManager)->deactivateManager(); delete _graphicsManager; _graphicsManager = new OpenGLSdlGraphicsManager(_desktopWidth, _desktopHeight, _eventSource); @@ -602,7 +602,7 @@ bool OSystem_SDL::setGraphicsMode(int mode) { _graphicsMode = mode; if (switchedManager) { - _graphicsManager->activateManager(); + dynamic_cast<SdlGraphicsManager *>(_graphicsManager)->activateManager(); _graphicsManager->beginGFXTransaction(); #ifdef USE_RGB_COLOR |