コード例 #1
0
    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);
    }
コード例 #2
0
 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;
     }
 }
コード例 #3
0
 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;
     }
 }