void LoadData() { data = null; selectedDataIndex = -1; gameDB.InitLocalDB(); if (allData != null) { allData.Clear(); } allData = gameDB.LoadConfig <GeneralParameterConfigData>() as List <GeneralParameterConfigData>; InitDataConfigNames(); }
bool DrawLoadService() { contentColor = GUI.contentColor; backgroundColor = GUI.backgroundColor; EditorGUILayout.BeginHorizontal(); GUI.backgroundColor = EditorHelpers.orangeColor; if (GUILayout.Button("Load", GUILayout.Width(60))) { LoadData(); } GUI.backgroundColor = EditorHelpers.yellowColor; if (GUILayout.Button("New", GUILayout.Width(60))) { GeneralParameterConfigData newData = new GeneralParameterConfigData(); newData.id = "New Parameter " + newDataConfigNameSufix.ToString(); ++newDataConfigNameSufix; allData.Insert(0, newData); InitDataConfigNames(); selectedDataIndex = 0; data = newData; ShowNotification(new GUIContent("New Parameter added.")); dirty = true; } GUI.backgroundColor = EditorHelpers.greenColor; if (GUILayout.Button("Save", GUILayout.Width(60))) { Save(); } GUI.backgroundColor = backgroundColor; EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); if (allData == null) { EditorGUILayout.HelpBox("It seems that there is no data... try reopening the editor.", MessageType.Error); return(false); } if (allData.Count > 0) { EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Parameters:", GUILayout.Width(70)); int oldIntValue = selectedDataIndex; selectedDataIndex = EditorGUILayout.Popup(oldIntValue, dataConfigNames, GUILayout.Width(250)); if (oldIntValue != selectedDataIndex) { data = allData[selectedDataIndex]; } if (data != null) { GUI.backgroundColor = EditorHelpers.redColor; if (GUILayout.Button("Delete", GUILayout.Width(70))) { if (EditorUtility.DisplayDialog("Deleting Parameter!", "Are you sure you want to delete parameter '" + data.id + "'?", "Yes, Delete it.", "No! I was wrong and I am sorry.")) { gameDB.DeleteConfig(data.GetTableName(), data.id); allData.Remove(data); InitDataConfigNames(); selectedDataIndex = -1; data = null; ShowNotification(new GUIContent("Parameter deleted.")); return(false); } } GUI.backgroundColor = backgroundColor; } EditorGUILayout.EndHorizontal(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); } return(data != null); }