public void OnGUI() { scrollPos = EditorGUILayout.BeginScrollView(scrollPos); int count = EditorGUILayout.IntField("Level count", levelXML.levelData.Count); ItemWindow.EqualizeLength <TextAsset>(levelXML.levelData, count); for (int i = 0; i < levelXML.levelData.Count; i++) { levelXML.levelData[i] = EditorGUILayout.ObjectField("Level " + (i + 1).ToString(), levelXML.levelData[i], typeof(TextAsset), false) as TextAsset; } // This is necessary to save between Unity sessions EditorGUILayout.Space(); EditorGUILayout.Space(); path = EditorGUILayout.TextField("Asset path", path); GUILayout.BeginHorizontal(); if (GUILayout.Button("Load")) { Load(path); } if (GUILayout.Button("Save")) { levelXML.SaveAsset(path); } GUILayout.EndHorizontal(); EditorGUILayout.EndScrollView(); }