private void OnGetLanguages(Languages languages)
        {
            if (languages != null && languages.languages.Length > 0)
            {
                Log.Status("TranslatorWidget", "OnGetLanguagesAndGetModelsAfter as {0}", languages.languages.Length);
                m_LanguageIDToName.Clear();

                foreach (var lang in languages.languages)
                {
                    m_LanguageIDToName[lang.language] = lang.name;
                    m_LanguageNameToID[lang.name]     = lang.language;
                }

                m_LanguageIDToName[m_DetectLanguageID]   = m_DetectLanguageName;
                m_LanguageNameToID[m_DetectLanguageName] = m_DetectLanguageID;
                m_Translate.GetModels(OnGetModels); //To fill dropdown with models to use in Translation
            }
            else
            {
                Log.Error("TranslatorWidget", "OnGetLanguages - There is no language to translate. Check the connections and service of Translation Service.");
            }
        }
예제 #2
0
        public override IEnumerator RunTest()
        {
            if (Config.Instance.FindCredentials(m_Translate.GetServiceID()) == null)
            {
                yield break;
            }

            m_Translate.GetModel("en-es", OnGetModel);
            while (!m_GetModelTested)
            {
                yield return(null);
            }

            m_Translate.GetModels(OnGetModels);
            while (!m_GetModelsTested)
            {
                yield return(null);
            }

            m_Translate.GetLanguages(OnGetLanguages);
            while (!m_GetLanguagesTested)
            {
                yield return(null);
            }

            m_Translate.Identify("What does the fox say?", OnIdentify);
            while (!m_IdentifyTested)
            {
                yield return(null);
            }

            m_Translate.GetTranslation("What does the fox say?", "en", "es", OnGetTranslation);
            while (!m_TranslateTested)
            {
                yield return(null);
            }

            yield break;
        }