aboutsummaryrefslogtreecommitdiff
path: root/gui/options.cpp
diff options
context:
space:
mode:
authorJaromir Wysoglad2019-07-14 19:28:04 +0200
committerFilippos Karapetis2019-09-01 22:47:55 +0300
commit7d72fc0d60fef9babbb5a8579b152a42d7f5d3d2 (patch)
treecd3ffee9e15b7615d2169bbbd35291b68a92b69b /gui/options.cpp
parent8bd7e392657989dd49da592d8b0bf6e14fe50166 (diff)
downloadscummvm-rg350-7d72fc0d60fef9babbb5a8579b152a42d7f5d3d2.tar.gz
scummvm-rg350-7d72fc0d60fef9babbb5a8579b152a42d7f5d3d2.tar.bz2
scummvm-rg350-7d72fc0d60fef9babbb5a8579b152a42d7f5d3d2.zip
TTS: Restrict TTS on linux to only english
Unfortunatedly the encoding used by ScummVM breaks the speech-dispatcher, so after trying to say non-ascii character the connection has to be restarted. So for now I am restricting the GUI TTS to english only.
Diffstat (limited to 'gui/options.cpp')
-rw-r--r--gui/options.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/gui/options.cpp b/gui/options.cpp
index b871e92d11..e0e0cdf6b7 100644
--- a/gui/options.cpp
+++ b/gui/options.cpp
@@ -2149,6 +2149,15 @@ void GlobalOptionsDialog::apply() {
error.runModal();
}
#ifdef USE_TTS
+ bool ttsCheckboxChanged = _ttsCheckbox->getState() &&
+ (!ConfMan.hasKey("tts_enabled") || !ConfMan.getBool("tts_enabled"));
+ bool languageChanged = (newLang != oldLang);
+ if (ttsCheckboxChanged || languageChanged) {
+#if defined(USE_TRANSLATION) && defined(USE_LINUX_TTS)
+ if (ConfMan.get("gui_language") != "C")
+ warning("TTS on linux is supported only for english");
+#endif
+ }
ConfMan.setBool("tts_enabled", _ttsCheckbox->getState(), _domain);
int selectedVoice = _ttsVoiceSelectionPopUp->getSelectedTag();
ConfMan.setInt("tts_voice", selectedVoice, _domain);