private static void DisplayMergeItem(ref MergeItem item, string message) { if (!string.IsNullOrEmpty(item.path)) { GUILayout.Label(item.path); } if (GUILayout.Button(message)) { var path = LocalizationEditorUtils.GetFilePathFromUser("Select a localisation data file"); if (!string.IsNullOrEmpty(path)) { string jsonData = File.ReadAllText(path); item.data = JsonUtility.FromJson <LocalizationData>(jsonData); LocalizationEditorUtils.LastPath = path; if (LocalizationEditorUtils.IsDataInvalid(item.data)) { LocalizationEditorUtils.OnError("Couldn't read data from provided file! Please provide a valid file"); } else { item.path = path; LocalizationEditorUtils.LastPath = path; } } } GUILayout.Space(50.0f); }
private void SaveData() { //opens a save file panel and saves user-inputted path filePath = LocalizationEditorUtils.GetFilePathFromUser(); //if the path is valid if (!string.IsNullOrEmpty(filePath)) { //serialize pairs string jsonData = JsonUtility.ToJson(data); //write File.WriteAllText(filePath, jsonData); saved = true; LocalizationEditorUtils.LastPath = filePath; } }
private void LoadData() { if (!SaveCheck()) { return; } filePath = LocalizationEditorUtils.GetFilePathFromUser(); if (!string.IsNullOrEmpty(filePath)) { string jsonData = File.ReadAllText(filePath); data = JsonUtility.FromJson <LocalizationData>(jsonData); saved = true; LocalizationEditorUtils.LastPath = filePath; } }