void DisplayListArea() { EditorGUILayout.BeginVertical(GUILayout.Width(250)); EditorGUILayout.Space(); EditorGUILayout.LabelField(currentDatabase.name); _scrollPos = EditorGUILayout.BeginScrollView(_scrollPos, "box", GUILayout.ExpandHeight(true)); for (int i = 0; i < currentDatabase.Count; i++) { EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("-", GUILayout.Width(25))) { currentDatabase.RemoveAt(i); EditorUtility.SetDirty(currentDatabase); state = State.BLANK; return; } if (currentDatabase[i] != null) { if (GUILayout.Button(currentDatabase[i].Key, "box", GUILayout.ExpandWidth(true))) { selectedEvent = i; state = State.EDIT; } } EditorGUILayout.LabelField(i.ToString(), GUILayout.Width(25)); EditorGUILayout.EndHorizontal(); } if (GUILayout.Button("+", GUILayout.Width(100))) { selectedEvent = currentDatabase.Add(new GameEvent()); state = State.EDIT; } EditorGUILayout.EndScrollView(); EditorGUILayout.BeginHorizontal(GUILayout.ExpandWidth(true)); EditorGUILayout.LabelField("Events: " + currentDatabase.Count, GUILayout.Width(100)); if (GUILayout.Button("Parse")) { state = State.PARSE; } if (GUILayout.Button("Verify")) { Verify(); } EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.EndVertical(); }