From 1efbed540948edcbf3ac2c72c0984def044274cf Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 3 Apr 2016 16:16:35 -0400 Subject: TITANIC: Move most of the root classes into new support/ folder --- engines/titanic/support/screen_manager.cpp | 265 +++++++++++++++++++++++++++++ 1 file changed, 265 insertions(+) create mode 100644 engines/titanic/support/screen_manager.cpp (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp new file mode 100644 index 0000000000..05dfa66854 --- /dev/null +++ b/engines/titanic/support/screen_manager.cpp @@ -0,0 +1,265 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#include "titanic/support/screen_manager.h" +#include "titanic/titanic.h" +#include "titanic/support/video_surface.h" + +namespace Titanic { + +CScreenManager *CScreenManager::_screenManagerPtr; +CScreenManager *CScreenManager::_currentScreenManagerPtr; + +CScreenManager::CScreenManager(TitanicEngine *vm): _vm(vm) { + _screenManagerPtr = nullptr; + _currentScreenManagerPtr = nullptr; + + _frontRenderSurface = nullptr; + _mouseCursor = nullptr; + _textCursor = nullptr; + _inputHandler = nullptr; + _fontNumber = 0; + // TODO: Further initialization + + _screenManagerPtr = this; +} + +CScreenManager::~CScreenManager() { + _screenManagerPtr = nullptr; +} + +void CScreenManager::setWindowHandle(int v) { + // Not needed +} + +bool CScreenManager::resetWindowHandle(int v) { + hideCursor(); + return true; +} + +CScreenManager *CScreenManager::setCurrent() { + if (!_currentScreenManagerPtr) + _currentScreenManagerPtr = _screenManagerPtr; + + return _currentScreenManagerPtr; +} + +void CScreenManager::setSurfaceBounds(SurfaceNum surfaceNum, const Rect &r) { + if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) + _backSurfaces[surfaceNum]._bounds = r; +} + +/*------------------------------------------------------------------------*/ + +OSScreenManager::OSScreenManager(TitanicEngine *vm): CScreenManager(vm), + _directDrawManager(vm, false) { + _field48 = 0; + _field4C = 0; + _field50 = 0; + _field54 = 0; +} + +OSScreenManager::~OSScreenManager() { + destroyFrontAndBackBuffers(); + delete _mouseCursor; + delete _textCursor; +} + +void OSScreenManager::setMode(int width, int height, int bpp, uint numBackSurfaces, bool flag2) { + assert(bpp == 16); + destroyFrontAndBackBuffers(); + _directDrawManager.initVideo(width, height, bpp, numBackSurfaces); + + _vm->_screen->create(width, height, g_system->getScreenFormat()); + _frontRenderSurface = new OSVideoSurface(this, nullptr); + _frontRenderSurface->setSurface(this, _directDrawManager._mainSurface); + + _backSurfaces.resize(numBackSurfaces); + for (uint idx = 0; idx < numBackSurfaces; ++idx) { + _backSurfaces[idx]._surface = new OSVideoSurface(this, nullptr); + _backSurfaces[idx]._surface->setSurface(this, _directDrawManager._backSurfaces[idx]); + } + + // Load fonts + _fonts[0].load(149); + _fonts[1].load(151); + _fonts[2].load(152); + _fonts[3].load(153); + + // Load the cursors + loadCursors(); +} + +void OSScreenManager::drawCursors() { + warning("OSScreenManager::drawCursors"); +} + +DirectDrawSurface *OSScreenManager::getDDSurface(SurfaceNum surfaceNum) { + if (surfaceNum == SURFACE_PRIMARY) + return _directDrawManager._mainSurface; + else if (surfaceNum < (int)_backSurfaces.size()) + return _directDrawManager._backSurfaces[surfaceNum]; + else + return nullptr; +} + +void OSScreenManager::proc6() {} +void OSScreenManager::proc7() {} + +CVideoSurface *OSScreenManager::getSurface(SurfaceNum surfaceNum) const { + if (surfaceNum == SURFACE_PRIMARY) + return _frontRenderSurface; + else if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) + return _backSurfaces[surfaceNum]._surface; + else + return nullptr; +} + +void OSScreenManager::proc9() {} + +void OSScreenManager::fillRect(SurfaceNum surfaceNum, Rect *rect, byte r, byte g, byte b) { + DirectDrawSurface *surface = getDDSurface(surfaceNum); + if (!surface) + return; + + // If bounds are provided, clip and use them. Otherwise, use entire surface area + Rect surfaceRect(0, 0, surface->getWidth(), surface->getHeight()); + Rect tempRect; + + if (rect) { + tempRect = *rect; + tempRect.clip(surfaceRect); + } else { + tempRect = surfaceRect; + } + + if (tempRect.isValidRect()) + surface->fillRect(&tempRect, r, g, b); +} + +void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, + const Point *destPos, const Rect *srcRect) { + // Get the dest surface + CVideoSurface *destSurface = _frontRenderSurface; + if (surfaceNum < -1) + return; + if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) + destSurface = _backSurfaces[surfaceNum]._surface; + if (!destSurface->hasSurface()) + return; + + Point destPoint = destPos ? *destPos : Point(0, 0); + Rect srcBounds = srcRect ? *srcRect : Rect(0, 0, src->getWidth(), src->getHeight()); + Rect *bounds = &srcBounds; + Rect rect2; + + if (surfaceNum >= 0 && !_backSurfaces[surfaceNum]._bounds.isEmpty()) { + // Perform clipping to the bounds of the back surface + rect2 = srcBounds; + rect2.translate(-srcBounds.left, -srcBounds.top); + rect2.translate(destPoint.x, destPoint.y); + rect2.constrain(_backSurfaces[surfaceNum]._bounds); + + rect2.translate(-destPoint.x, -destPoint.y); + rect2.translate(srcBounds.left, srcBounds.top); + + if (rect2.isEmpty()) + return; + + destPoint.x += rect2.left - srcBounds.left; + destPoint.y += rect2.top - srcBounds.top; + bounds = &rect2; + } + + if (!bounds->isEmpty()) + destSurface->blitFrom(destPoint, src, bounds); +} + +void OSScreenManager::proc12() {} +void OSScreenManager::proc13() {} +void OSScreenManager::proc14() {} +void OSScreenManager::proc15() {} + +void OSScreenManager::writeString(int maxWidth, const CString &text, int *v1, int *v2) { + _fonts[_fontNumber].writeString(maxWidth, text, v1, v2); +} + +void OSScreenManager::getFont() {} +void OSScreenManager::proc18() {} +void OSScreenManager::proc19() {} + +void OSScreenManager::clearSurface(SurfaceNum surfaceNum, Rect *bounds) { + if (surfaceNum == SURFACE_PRIMARY) + _directDrawManager._mainSurface->fill(bounds, 0); + else if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) + _directDrawManager._backSurfaces[surfaceNum]->fill(bounds, 0); +} + +void OSScreenManager::resizeSurface(CVideoSurface *surface, int width, int height) { + DirectDrawSurface *ddSurface = _directDrawManager.createSurface(width, height, 0); + surface->setSurface(this, ddSurface); +} + +CVideoSurface *OSScreenManager::createSurface(int w, int h) { + DirectDrawSurface *ddSurface = _directDrawManager.createSurface(w, h, 0); + return new OSVideoSurface(this, ddSurface); +} + +CVideoSurface *OSScreenManager::createSurface(const CResourceKey &key) { + return new OSVideoSurface(this, key); +} + +void OSScreenManager::proc23() {} +void OSScreenManager::proc24() {} +void OSScreenManager::proc25() {} + +void OSScreenManager::showCursor() { + +} + +void OSScreenManager::hideCursor() { + +} + +void OSScreenManager::destroyFrontAndBackBuffers() { + delete _frontRenderSurface; + _frontRenderSurface = nullptr; + + for (uint idx = 0; idx < _backSurfaces.size(); ++idx) + delete _backSurfaces[idx]._surface; + _backSurfaces.clear(); +} + +void OSScreenManager::loadCursors() { + if (_mouseCursor) { + hideCursor(); + delete _mouseCursor; + } + _mouseCursor = new CMouseCursor(this); + showCursor(); + + if (!_textCursor) { + _textCursor = new CTextCursor(); + } +} + +} // End of namespace Titanic -- cgit v1.2.3 From e7f2cb1ecbf2637db8dd7be3fe97d485a7c56bc8 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Thu, 7 Apr 2016 23:39:26 -0400 Subject: TITANIC: Add CComputer messages, more view change logic --- engines/titanic/support/screen_manager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 05dfa66854..d2f2468c89 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -110,7 +110,7 @@ void OSScreenManager::setMode(int width, int height, int bpp, uint numBackSurfac } void OSScreenManager::drawCursors() { - warning("OSScreenManager::drawCursors"); + // Nothing needed here, since ScummVM handles cursor drawing } DirectDrawSurface *OSScreenManager::getDDSurface(SurfaceNum surfaceNum) { -- cgit v1.2.3 From c75de59a28c94e364a38af39057af720ba8465d4 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 24 Apr 2016 17:16:32 -0400 Subject: TITANIC: Implementing font text bounds calculations --- engines/titanic/support/screen_manager.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index d2f2468c89..f772bc6f7e 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -199,12 +199,18 @@ void OSScreenManager::proc13() {} void OSScreenManager::proc14() {} void OSScreenManager::proc15() {} -void OSScreenManager::writeString(int maxWidth, const CString &text, int *v1, int *v2) { - _fonts[_fontNumber].writeString(maxWidth, text, v1, v2); +int OSScreenManager::getTextBounds(const CString &str, int maxWidth, Point *sizeOut) const { + return _fonts[_fontNumber].getTextBounds(str, maxWidth, sizeOut); +} + +int OSScreenManager::getFontHeight() const { + return _fonts[_fontNumber]._fontHeight; +} + +int OSScreenManager::stringWidth(const CString &str) { + return _fonts[_fontNumber].stringWidth(str); } -void OSScreenManager::getFont() {} -void OSScreenManager::proc18() {} void OSScreenManager::proc19() {} void OSScreenManager::clearSurface(SurfaceNum surfaceNum, Rect *bounds) { -- cgit v1.2.3 From 36faf0890fec6bab90531ade42c0eb924b31b64a Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 24 Apr 2016 22:22:12 -0400 Subject: TITANIC: Minor work towards text display --- engines/titanic/support/screen_manager.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index f772bc6f7e..b467c8593d 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -68,6 +68,12 @@ void CScreenManager::setSurfaceBounds(SurfaceNum surfaceNum, const Rect &r) { _backSurfaces[surfaceNum]._bounds = r; } +int CScreenManager::setFontNumber(int fontNumber) { + int oldFontNumber = _fontNumber; + _fontNumber = fontNumber; + return oldFontNumber; +} + /*------------------------------------------------------------------------*/ OSScreenManager::OSScreenManager(TitanicEngine *vm): CScreenManager(vm), @@ -197,7 +203,10 @@ void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, void OSScreenManager::proc12() {} void OSScreenManager::proc13() {} void OSScreenManager::proc14() {} -void OSScreenManager::proc15() {} + +void OSScreenManager::setFontColor(byte r, byte g, byte b) { + _fonts[_fontNumber].setColor(r, g, b); +} int OSScreenManager::getTextBounds(const CString &str, int maxWidth, Point *sizeOut) const { return _fonts[_fontNumber].getTextBounds(str, maxWidth, sizeOut); -- cgit v1.2.3 From 34c32e38e2659406e3556f752fcada8491860e92 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Tue, 26 Apr 2016 22:18:21 -0400 Subject: TITANIC: More font logic, beginnings of text cursor --- engines/titanic/support/screen_manager.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index b467c8593d..3005bdd446 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -201,7 +201,16 @@ void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, } void OSScreenManager::proc12() {} -void OSScreenManager::proc13() {} + +int OSScreenManager::writeString(int surfaceNum, const Rect &destRect, + int val1, const CString &str, CTextCursor *textCursor) { + if (_backSurfaces.empty()) + return -1; + + return _fonts[_fontNumber].writeString(_backSurfaces[surfaceNum]._surface, + destRect, _backSurfaces[surfaceNum]._bounds, val1, str, textCursor); +} + void OSScreenManager::proc14() {} void OSScreenManager::setFontColor(byte r, byte g, byte b) { @@ -273,7 +282,7 @@ void OSScreenManager::loadCursors() { showCursor(); if (!_textCursor) { - _textCursor = new CTextCursor(); + _textCursor = new CTextCursor(this); } } -- cgit v1.2.3 From 74e40be66e231a8eada9bc045828e17f044a7c55 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Wed, 27 Apr 2016 19:50:58 -0400 Subject: TITANIC: Implementing text cursor drawing --- engines/titanic/support/screen_manager.cpp | 2 -- 1 file changed, 2 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 3005bdd446..0c9d3ab4e0 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -140,8 +140,6 @@ CVideoSurface *OSScreenManager::getSurface(SurfaceNum surfaceNum) const { return nullptr; } -void OSScreenManager::proc9() {} - void OSScreenManager::fillRect(SurfaceNum surfaceNum, Rect *rect, byte r, byte g, byte b) { DirectDrawSurface *surface = getDDSurface(surfaceNum); if (!surface) -- cgit v1.2.3 From a8835043f54daf54a2c03ccdb02f125a62a7ddcd Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Wed, 27 Apr 2016 21:01:12 -0400 Subject: TITANIC: PET Text is now partially showing --- engines/titanic/support/screen_manager.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 0c9d3ab4e0..1a43d78dd0 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -201,12 +201,22 @@ void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, void OSScreenManager::proc12() {} int OSScreenManager::writeString(int surfaceNum, const Rect &destRect, - int val1, const CString &str, CTextCursor *textCursor) { - if (_backSurfaces.empty()) + int yOffset, const CString &str, CTextCursor *textCursor) { + CVideoSurface *surface; + Rect bounds; + + if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) { + surface = _backSurfaces[surfaceNum]._surface; + bounds = _backSurfaces[surfaceNum]._bounds; + } else if (surfaceNum == -1) { + surface = _frontRenderSurface; + bounds = Rect(0, 0, surface->getWidth(), surface->getHeight()); + } else { return -1; + } - return _fonts[_fontNumber].writeString(_backSurfaces[surfaceNum]._surface, - destRect, _backSurfaces[surfaceNum]._bounds, val1, str, textCursor); + return _fonts[_fontNumber].writeString(surface, destRect, bounds, + yOffset, str, textCursor); } void OSScreenManager::proc14() {} -- cgit v1.2.3 From 21f98fff46e48e79d3e977d4f20edf90022a825a Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 1 May 2016 09:46:25 -0400 Subject: TITANIC: Fix cursor and entering text in PET Conversations area --- engines/titanic/support/screen_manager.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 1a43d78dd0..b0e249d7b3 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -116,7 +116,9 @@ void OSScreenManager::setMode(int width, int height, int bpp, uint numBackSurfac } void OSScreenManager::drawCursors() { - // Nothing needed here, since ScummVM handles cursor drawing + // The original did both text and mouse cursor drawing here. + // For ScummVM, we only need to worry about the text cursor + _textCursor->draw(); } DirectDrawSurface *OSScreenManager::getDDSurface(SurfaceNum surfaceNum) { -- cgit v1.2.3 From 68f13646e185416bb74812ea489764b9b28b8e22 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 19 Jun 2016 09:58:00 -0400 Subject: TITANIC: Implementing more CGameObject/OSScreenManager draw methods --- engines/titanic/support/screen_manager.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index b0e249d7b3..27c0d9886e 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -163,7 +163,7 @@ void OSScreenManager::fillRect(SurfaceNum surfaceNum, Rect *rect, byte r, byte g } void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, - const Point *destPos, const Rect *srcRect) { + const Point *destPos, const Rect *srcRect) { // Get the dest surface CVideoSurface *destSurface = _frontRenderSurface; if (surfaceNum < -1) @@ -200,7 +200,19 @@ void OSScreenManager::blitFrom(SurfaceNum surfaceNum, CVideoSurface *src, destSurface->blitFrom(destPoint, src, bounds); } -void OSScreenManager::proc12() {} +void OSScreenManager::blitFrom(SurfaceNum surfaceNum, const Rect *rect, CVideoSurface *src, int v) { + // Get the dest surface + CVideoSurface *destSurface = _frontRenderSurface; + if (surfaceNum < -1) + return; + if (surfaceNum >= 0 && surfaceNum < (int)_backSurfaces.size()) + destSurface = _backSurfaces[surfaceNum]._surface; + if (!destSurface->hasSurface()) + return; + + if (!rect->isEmpty()) + destSurface->blitFrom(Point(rect->left, rect->top), src, rect); +} int OSScreenManager::writeString(int surfaceNum, const Rect &destRect, int yOffset, const CString &str, CTextCursor *textCursor) { -- cgit v1.2.3 From d9e05e215c1ba8ab93530e7263b527c03fcc61c8 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 3 Jul 2016 12:48:05 -0400 Subject: TITANIC: Fleshing out screen manager --- engines/titanic/support/screen_manager.cpp | 35 +++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 10 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 27c0d9886e..d795f78764 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -130,8 +130,15 @@ DirectDrawSurface *OSScreenManager::getDDSurface(SurfaceNum surfaceNum) { return nullptr; } -void OSScreenManager::proc6() {} -void OSScreenManager::proc7() {} +CVideoSurface *OSScreenManager::lockSurface(SurfaceNum surfaceNum) { + CVideoSurface *surface = getSurface(surfaceNum); + surface->lock(); + return surface; +} + +void OSScreenManager::unlockSurface(CVideoSurface *surface) { + surface->unlock(); +} CVideoSurface *OSScreenManager::getSurface(SurfaceNum surfaceNum) const { if (surfaceNum == SURFACE_PRIMARY) @@ -233,7 +240,11 @@ int OSScreenManager::writeString(int surfaceNum, const Rect &destRect, yOffset, str, textCursor); } -void OSScreenManager::proc14() {} +int OSScreenManager::writeString(int surfaceNum, const Rect &srcRect, + const Rect &destRect, const CString &str, CTextCursor *textCursor) { + // TODO + return 0; +} void OSScreenManager::setFontColor(byte r, byte g, byte b) { _fonts[_fontNumber].setColor(r, g, b); @@ -251,7 +262,15 @@ int OSScreenManager::stringWidth(const CString &str) { return _fonts[_fontNumber].stringWidth(str); } -void OSScreenManager::proc19() {} +void OSScreenManager::frameRect(SurfaceNum surfaceNum, const Rect &rect, byte r, byte g, byte b) { + Rect top(rect.left, rect.top, rect.right, rect.top + 1); + fillRect(surfaceNum, &top, r, g, b); + Rect bottom(rect.left, rect.bottom - 1, rect.right, rect.bottom); + fillRect(surfaceNum, &bottom, r, g, b); + Rect left(rect.left, rect.top, rect.left + 1, rect.bottom); + fillRect(surfaceNum, &left, r, g, b); + Rect right(rect.right - 1, rect.top, rect.right, rect.bottom); +} void OSScreenManager::clearSurface(SurfaceNum surfaceNum, Rect *bounds) { if (surfaceNum == SURFACE_PRIMARY) @@ -274,16 +293,12 @@ CVideoSurface *OSScreenManager::createSurface(const CResourceKey &key) { return new OSVideoSurface(this, key); } -void OSScreenManager::proc23() {} -void OSScreenManager::proc24() {} -void OSScreenManager::proc25() {} - void OSScreenManager::showCursor() { - + CScreenManager::_screenManagerPtr->_mouseCursor->show(); } void OSScreenManager::hideCursor() { - + CScreenManager::_screenManagerPtr->_mouseCursor->hide(); } void OSScreenManager::destroyFrontAndBackBuffers() { -- cgit v1.2.3 From 8b3829549a2c82a09f7475c35173238f7470d587 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 22 Aug 2016 20:22:41 -0400 Subject: TITANIC: Cleanup of engine references --- engines/titanic/support/screen_manager.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'engines/titanic/support/screen_manager.cpp') diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index d795f78764..b0d852104c 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -21,8 +21,8 @@ */ #include "titanic/support/screen_manager.h" -#include "titanic/titanic.h" #include "titanic/support/video_surface.h" +#include "titanic/titanic.h" namespace Titanic { @@ -38,7 +38,6 @@ CScreenManager::CScreenManager(TitanicEngine *vm): _vm(vm) { _textCursor = nullptr; _inputHandler = nullptr; _fontNumber = 0; - // TODO: Further initialization _screenManagerPtr = this; } -- cgit v1.2.3