From 96c36d53984dc2047af5542a5378adeb8e42be7c Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 26 Dec 2016 21:10:17 -0500 Subject: TITANIC: Hide any active PET text cursor when loading a savegame --- engines/titanic/core/project_item.cpp | 4 ++++ engines/titanic/support/screen_manager.cpp | 5 +++++ engines/titanic/support/screen_manager.h | 5 +++++ 3 files changed, 14 insertions(+) (limited to 'engines') diff --git a/engines/titanic/core/project_item.cpp b/engines/titanic/core/project_item.cpp index f9c7dbdd55..1093a5c6e7 100644 --- a/engines/titanic/core/project_item.cpp +++ b/engines/titanic/core/project_item.cpp @@ -309,6 +309,10 @@ void CProjectItem::saveData(SimpleFile *file, CTreeItem *item) const { void CProjectItem::preLoad() { if (_gameManager) _gameManager->preLoad(); + + CScreenManager *scrManager = CScreenManager::_currentScreenManagerPtr; + if (scrManager) + scrManager->preLoad(); } void CProjectItem::postLoad() { diff --git a/engines/titanic/support/screen_manager.cpp b/engines/titanic/support/screen_manager.cpp index 553486d094..cc9054e688 100644 --- a/engines/titanic/support/screen_manager.cpp +++ b/engines/titanic/support/screen_manager.cpp @@ -73,6 +73,11 @@ int CScreenManager::setFontNumber(int fontNumber) { return oldFontNumber; } +void CScreenManager::preLoad() { + if (_textCursor) + _textCursor->hide(); +} + /*------------------------------------------------------------------------*/ OSScreenManager::OSScreenManager(TitanicEngine *vm): CScreenManager(vm), diff --git a/engines/titanic/support/screen_manager.h b/engines/titanic/support/screen_manager.h index a7c929fb5f..7140001bd4 100644 --- a/engines/titanic/support/screen_manager.h +++ b/engines/titanic/support/screen_manager.h @@ -228,6 +228,11 @@ public: * Set the current font number */ int setFontNumber(int fontNumber); + + /** + * Called when a game is about to be loaded + */ + void preLoad(); }; class OSScreenManager: CScreenManager { -- cgit v1.2.3