private async void LoadTTSConfigPage( string ttsType) { var content = default(object); switch (ttsType) { case TTSType.Yukkuri: try { var ctrl = SpeechController.Default as YukkuriSpeechController; if (ctrl != null) { if (!ctrl.SetAppKey()) { this.ShowErrorMessage("AquesTalk の初期化でエラーが発生しました。Code=D", null, false); } } } catch (Exception ex) { this.ShowErrorMessage("AquesTalk の初期化で例外が発生しました。", ex); return; } content = new YukkuriConfigView(); break; case TTSType.HOYA: content = new HoyaConfigView(); break; case TTSType.OpenJTalk: content = new OpenJTalkConfigView(); break; case TTSType.Sasara: try { // リモートからささらの設定を取得する await Task.Run(() => Settings.Default.SasaraSettings.LoadRemoteConfig()); } catch (Exception ex) { this.ShowErrorMessage("CeVIO Creative Studio との接続で例外が発生しました。", ex); return; } content = new SasaraConfigView(); break; case TTSType.Boyomichan: content = new BoyomiConfigView(); break; case TTSType.VOICEROID: try { var ctrl = SpeechController.Default as VoiceroidSpeechController; Settings.Default.VoiceroidSettings.Load(); var err = await ctrl?.Start(); if (!string.IsNullOrEmpty(err)) { this.ShowErrorMessage($"VOICEROIDの初期化でエラーが発生しました。\n\n{err}"); return; } } catch (Exception ex) { this.ShowErrorMessage("VOICEROIDの初期化で例外が発生しました。", ex); return; } content = new VoiceroidConfigView(); break; case TTSType.SAPI5: content = new SAPI5ConfigView(); break; default: return; } this.ContentGrid.Children.Clear(); this.ContentGrid.Children.Add((UIElement)content); }
private async void LoadTTSConfigPage( string ttsType) { // コントローラを更新する _ = SpeechController.Default; var content = default(object); switch (ttsType) { case TTSType.Yukkuri: try { if (SpeechController.Default is YukkuriSpeechController ctrl) { if (!ctrl.SetAppKey()) { this.ShowErrorMessage("AquesTalk の初期化でエラーが発生しました。Code=D", null, false); } } } catch (Exception ex) { this.ShowErrorMessage("AquesTalk の初期化で例外が発生しました。", ex); return; } content = new YukkuriConfigTabView(); break; case TTSType.HOYA: content = new HoyaConfigTabView(); break; case TTSType.Polly: content = new PollyConfigTabView(); break; case TTSType.OpenJTalk: content = new OpenJTalkConfigTabView(); break; case TTSType.Sasara: /* * try * { * // リモートからささらの設定を取得する * await Task.Run(() => Settings.Default.SasaraSettings.LoadRemoteConfig()); * } * catch (Exception ex) * { * this.ShowErrorMessage("CeVIO 7 との接続で例外が発生しました。", ex); * return; * } */ content = new SasaraConfigView(); break; case TTSType.CevioAI: /* * try * { * // リモートからCeVIO AIの設定を取得する * await Task.Run(() => Settings.Default.CevioAISettings.LoadRemoteConfig()); * } * catch (Exception ex) * { * this.ShowErrorMessage("CeVIO AI との接続で例外が発生しました。", ex); * return; * } */ content = new CevioAIConfigView(); break; case TTSType.Boyomichan: content = new BoyomiConfigView(); break; case TTSType.VOICEROID: try { var ctrl = SpeechController.Default as VoiceroidSpeechController; Settings.Default.VoiceroidSettings.Load(); var err = await ctrl?.StartAsync(); if (!string.IsNullOrEmpty(err)) { this.ShowErrorMessage($"VOICEROIDの初期化でエラーが発生しました。\n\n{err}"); return; } } catch (Exception ex) { this.ShowErrorMessage("VOICEROIDの初期化で例外が発生しました。", ex); return; } content = new VoiceroidConfigView(); break; case TTSType.SAPI5: content = new SAPI5ConfigTabView(); break; case TTSType.GoogleCloudTextToSpeech: content = new GoogleCloudTextToSpeechConfigTabView(); break; } this.ContentGrid.Children.Clear(); if (content != null) { this.ContentGrid.Children.Add((UIElement)content); } }