diff options
-rw-r--r-- | backends/text-to-speech/linux/linux-text-to-speech.cpp | 16 | ||||
-rw-r--r-- | backends/text-to-speech/linux/linux-text-to-speech.h | 2 | ||||
-rw-r--r-- | backends/text-to-speech/windows/windows-text-to-speech.cpp | 21 | ||||
-rw-r--r-- | backends/text-to-speech/windows/windows-text-to-speech.h | 2 | ||||
-rw-r--r-- | common/text-to-speech.cpp | 17 | ||||
-rw-r--r-- | common/text-to-speech.h | 2 |
6 files changed, 20 insertions, 40 deletions
diff --git a/backends/text-to-speech/linux/linux-text-to-speech.cpp b/backends/text-to-speech/linux/linux-text-to-speech.cpp index 4241b76c7b..85faec1c1d 100644 --- a/backends/text-to-speech/linux/linux-text-to-speech.cpp +++ b/backends/text-to-speech/linux/linux-text-to-speech.cpp @@ -258,22 +258,6 @@ void LinuxTextToSpeechManager::updateVoices() { } -bool LinuxTextToSpeechManager::popState() { - if (_ttsState->_next == nullptr) - return true; - - Common::TTSState *oldState = _ttsState; - _ttsState = _ttsState->_next; - - delete oldState; - - setLanguage(_ttsState->_language); - setPitch(_ttsState->_pitch); - setVolume(_ttsState->_volume); - setRate(_ttsState->_rate); - return false; -} - void LinuxTextToSpeechManager::freeVoiceData(void *data) { free(data); } diff --git a/backends/text-to-speech/linux/linux-text-to-speech.h b/backends/text-to-speech/linux/linux-text-to-speech.h index 1bb3ad5ce2..feb595095e 100644 --- a/backends/text-to-speech/linux/linux-text-to-speech.h +++ b/backends/text-to-speech/linux/linux-text-to-speech.h @@ -63,7 +63,7 @@ public: virtual void setLanguage(Common::String language); - virtual bool popState(); + bool popState(); void updateState(SpeechState state); diff --git a/backends/text-to-speech/windows/windows-text-to-speech.cpp b/backends/text-to-speech/windows/windows-text-to-speech.cpp index c646b9b3b3..506220a9c7 100644 --- a/backends/text-to-speech/windows/windows-text-to-speech.cpp +++ b/backends/text-to-speech/windows/windows-text-to-speech.cpp @@ -347,27 +347,6 @@ void WindowsTextToSpeechManager::updateVoices() { _speechState = READY; } -bool WindowsTextToSpeechManager::popState() { - if (_ttsState->_next == nullptr) - return true; - - for (Common::TTSVoice *i = _ttsState->_availaibleVoices.begin(); i < _ttsState->_availaibleVoices.end(); i++) { - ISpObjectToken *voiceToken = (ISpObjectToken *) i->getData(); - voiceToken->Release(); - } - - Common::TTSState *oldState = _ttsState; - _ttsState = _ttsState->_next; - - delete oldState; - - setLanguage(_ttsState->_language); - setPitch(_ttsState->_pitch); - setVolume(_ttsState->_volume); - setRate(_ttsState->_rate); - setVoice(_ttsState->_activeVoice); - return false; -} void WindowsTextToSpeechManager::freeVoiceData(void *data) { ISpObjectToken *voiceToken = (ISpObjectToken *) data; voiceToken->Release(); diff --git a/backends/text-to-speech/windows/windows-text-to-speech.h b/backends/text-to-speech/windows/windows-text-to-speech.h index 848ae854eb..6498c9cc2c 100644 --- a/backends/text-to-speech/windows/windows-text-to-speech.h +++ b/backends/text-to-speech/windows/windows-text-to-speech.h @@ -64,7 +64,7 @@ public: virtual void setLanguage(Common::String language); - virtual bool popState(); + bool popState(); virtual void freeVoiceData(void *data); diff --git a/common/text-to-speech.cpp b/common/text-to-speech.cpp index ce9f4a9076..9ff8d50641 100644 --- a/common/text-to-speech.cpp +++ b/common/text-to-speech.cpp @@ -109,5 +109,22 @@ void TextToSpeechManager::pushState() { updateVoices(); } +bool TextToSpeechManager::popState() { + if (_ttsState->_next == nullptr) + return true; + + Common::TTSState *oldState = _ttsState; + _ttsState = _ttsState->_next; + + delete oldState; + + setLanguage(_ttsState->_language); + setPitch(_ttsState->_pitch); + setVolume(_ttsState->_volume); + setRate(_ttsState->_rate); + setVoice(_ttsState->_activeVoice); + return false; +} + } #endif diff --git a/common/text-to-speech.h b/common/text-to-speech.h index 589b99834b..d52e1de3d2 100644 --- a/common/text-to-speech.h +++ b/common/text-to-speech.h @@ -259,7 +259,7 @@ public: /** * Pops the TTS state */ - virtual bool popState() { return true; } + bool popState(); virtual void freeVoiceData(void *data) {} |