aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorJaromir Wysoglad2019-07-22 19:42:30 +0200
committerFilippos Karapetis2019-09-01 22:47:55 +0300
commit324a90f4f6e64ec4b92e2b746df5d4a75893044b (patch)
tree774cfbc19875503ca06f93fff7803fd16b512aef /engines
parent33549d9c0225a1ecfc5924b5584cdcee466498cc (diff)
downloadscummvm-rg350-324a90f4f6e64ec4b92e2b746df5d4a75893044b.tar.gz
scummvm-rg350-324a90f4f6e64ec4b92e2b746df5d4a75893044b.tar.bz2
scummvm-rg350-324a90f4f6e64ec4b92e2b746df5d4a75893044b.zip
TTS: Implement tts state switching when needed.
The state has to be pushed and poped when there is a transition between game and gui code.
Diffstat (limited to 'engines')
-rw-r--r--engines/engine.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/engine.cpp b/engines/engine.cpp
index b9859776fc..d34f1a6510 100644
--- a/engines/engine.cpp
+++ b/engines/engine.cpp
@@ -61,6 +61,10 @@
#include "graphics/pixelformat.h"
#include "image/bmp.h"
+#ifdef USE_TTS
+#include "common/text-to-speech.h"
+#endif
+
#ifdef _WIN32_WCE
extern bool isSmartphone();
#endif
@@ -515,6 +519,11 @@ void Engine::pauseEngineIntern(bool pause) {
void Engine::openMainMenuDialog() {
if (!_mainMenuDialog)
_mainMenuDialog = new MainMenuDialog(this);
+#ifdef USE_TTS
+ Common::TextToSpeechManager *ttsMan = g_system->getTextToSpeechManager();
+ ttsMan->pushState();
+ GUI::GuiManager::initTextToSpeech();
+#endif
setGameToLoadSlot(-1);
@@ -536,6 +545,9 @@ void Engine::openMainMenuDialog() {
}
syncSoundSettings();
+#ifdef USE_TTS
+ ttsMan->popState();
+#endif
}
bool Engine::warnUserAboutUnsupportedGame() {