private L10nAsset Parse(Parser <VslRow> parser, string csvData, L10nAsset asset, List <string> languages) { var enumerator = parser.Parse(csvData).GetEnumerator(); var row = 0; var error = string.Empty; var logger = new StringBuilder(); L10nTextRow text = null; while (enumerator.MoveNext()) { if (!enumerator.Current.IsValid) { error = enumerator.Current.Error.ToString(); break; } var vslRow = enumerator.Current.Result; row = enumerator.Current.RowIndex + 1; text = vslRow.Parse(asset, text, languages, row); if (vslRow.IsError) { error = vslRow.Error; break; } } if (!string.IsNullOrEmpty(error)) { Debug.LogError($"Vsl row {row}: {error}"); return(null); } if (logger.Length > 0) { Debug.LogError(logger); } return(asset); }
private ContentElement CreateContentGUI(VisualElement root, L10nAsset asset, L10nTextRow text, IList <ContentElement> contentElems, string language) { root.userData = asset; var contentText = asset.GetContent(text.ContentId)?.GetLocalization(language); if (string.IsNullOrEmpty(contentText)) { return(null); } var contentElem = new ContentElement { userData = text.ContentId, value = contentText, label = "Text" }; contentElems.Add(contentElem); root.Add(contentElem); return(contentElem); }
private L10nTextElement CreateLocalTextGUI(VisualElement root, L10nAsset asset, L10nTextRow text) { var contentElems = new List <ContentElement>(); var textElem = new L10nTextElement { userData = contentElems, text = text.Id }; var languages = new List <string>(asset.Languages); var languagesPopup = new LanguagePopup("Language Id", languages, 0); languagesPopup.RegisterValueChangedCallback(OnChangeLanguage); textElem.Content.Add(languagesPopup); CreateContentGUI(textElem.Content, asset, text, contentElems, languages[0]); root.Add(textElem); return(textElem); }
public L10nTextRow Parse(IL10nData data, L10nTextRow text, in Segment <string> languages, int row)