public void OnGUI() { if (Event.current.isKey && Event.current.keyCode == KeyCode.Escape) { Close(); return; } if (!initialized) { Initialize(); if (current_windowType == WindowType.CALLBACK) { SelctList = new List <int>(); //init select display } } if (!FirstLoadFlag) { FirstLoadFlag = true; Reload(); } EditorGUILayout.Space(); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); if (GUILayout.Button("Refresh", GUI.skin.GetStyle("ButtonLeft"), new GUILayoutOption[] { GUILayout.Height(30) })) { Reload(); } if (!configSetting.Setting.DisableCreate && current_windowType != WindowType.CALLBACK) { NewLineButton(); } if (!configSetting.Setting.DisableSave && current_windowType != WindowType.CALLBACK) { SaveButton(); } GUILayout.EndHorizontal(); if (!configSetting.Setting.DisableSearch) { SearchField(); } GUILayout.BeginScrollView(new Vector2(posv.x, 0), false, false, GUIStyle.none, GUIStyle.none, new GUILayoutOption[] { GUILayout.Height(45) }); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); GUILayout.Space(20); //TODO Set Order foreach (var item in Chache) { if (GUILayout.Button(item.config_editor_setting.Display == "" ? item.field_info.Name : item.config_editor_setting.Display, GUI.skin.GetStyle("WhiteLabel"), GUILayout.Width(item.config_editor_setting.Width))) { HeadButton_Click(item.field_info.Name); } GUILayout.Space(20); } if (current_windowType != WindowType.CALLBACK) { EditorGUILayout.LabelField(new GUIContent(Language.Operation), GUILayout.Width(80)); } if (current_windowType == WindowType.CALLBACK) { EditorGUILayout.LabelField(new GUIContent(Language.Select), GUILayout.Width(80)); } GUILayout.EndHorizontal(); GUILayout.EndScrollView(); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); posv = GUILayout.BeginScrollView(posv, true, false, GUI.skin.GetStyle("horizontalScrollbar"), GUIStyle.none, GUI.skin.GetStyle("GroupBox")); GUILayout.BeginVertical(); if (!string.IsNullOrEmpty(SearchResourceName)) { ItemMaxCount = config_current.ConfigList.Count(x => x.NickName.ToLower().Contains(SearchResourceName.ToLower().Trim())); Finallylist = config_current.ConfigList.Where(x => x.NickName.ToLower().Contains(SearchResourceName.ToLower().Trim())).Skip(PageIndex * PageAmount).Take(PageAmount).ToList(); } else { ItemMaxCount = config_current.ConfigList.Count; Finallylist = config_current.ConfigList.Skip(PageIndex * PageAmount).Take(PageAmount).ToList(); } //foreach (var item in Finallylist) for (int i = 0; i < Finallylist.Count; i++) { T item = Finallylist[i]; if (deleteList.Contains(item.ID)) { continue; } //Select effect diaplay if (current_windowType == WindowType.CALLBACK && SelctList.Contains(item.ID)) { GUI.backgroundColor = Color.green; } else { GUI.backgroundColor = Color.white; } GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); foreach (var schema in Chache) { var rawData = schema.field_info.GetValue(item); RenderRawLine(schema, rawData, item); GUILayout.Space(20); } RenderExtensionButton(item); GUILayout.Space(20); GUILayout.EndHorizontal(); } GUILayout.EndVertical(); GUILayout.EndScrollView(); GUILayout.EndHorizontal(); Page(); GUILayout.BeginHorizontal(); GUILayout.Label(Language.Contract); GUILayout.EndHorizontal(); }
public void OnGUI() { if (Event.current.isKey && Event.current.keyCode == KeyCode.Escape) { Close(); return; } if (!initialized) { Initialize(); } if (!FirstLoadFlag) { FirstLoadFlag = true; Reload(); } EditorGUILayout.Space(); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); if (GUILayout.Button("Refresh", GUI.skin.GetStyle("ButtonLeft"), new GUILayoutOption[] { GUILayout.Height(30) })) { Reload(); } if (!configSetting.DisableCreate) { NewLineButton(); } if (!configSetting.DisableSave) { SaveButton(); } GUILayout.EndHorizontal(); if (!configSetting.DisableSearch) { SearchField(); } GUILayout.BeginScrollView(new Vector2(posv.x, 0), false, false, GUIStyle.none, GUIStyle.none, new GUILayoutOption[] { GUILayout.Height(45) }); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); GUILayout.Space(20); foreach (var item in Chache) { if (item.config_editor_field == null) { EditorGUILayout.LabelField(new GUIContent(item.field_info.Name), GUILayout.Width(80)); } else { EditorGUILayout.LabelField(new GUIContent(item.config_editor_field.Display == "" ? item.field_info.Name : item.config_editor_field.Display), GUILayout.Width(item.config_editor_field.Width)); } GUILayout.Space(20); } EditorGUILayout.LabelField(new GUIContent(EditorConfig.Delete), GUILayout.Width(80)); GUILayout.EndHorizontal(); GUILayout.EndScrollView(); GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); posv = GUILayout.BeginScrollView(posv, true, false, GUI.skin.GetStyle("horizontalScrollbar"), GUIStyle.none, GUI.skin.GetStyle("GroupBox")); GUILayout.BeginVertical(); if (!string.IsNullOrEmpty(SearchResourceName)) { ItemMaxCount = config_current.ConfigList.Count(x => x.NickName.ToLower().Contains(SearchResourceName.ToLower().Trim())); Finallylist = config_current.ConfigList.Where(x => x.NickName.ToLower().Contains(SearchResourceName.ToLower().Trim())).Skip(PageIndex * PageAmount).Take(PageAmount).ToList(); } else { ItemMaxCount = config_current.ConfigList.Count; Finallylist = config_current.ConfigList.Skip(PageIndex * PageAmount).Take(PageAmount).ToList(); } foreach (var item in Finallylist) { if (deleteList.Contains(item.ID)) { continue; } GUILayout.BeginHorizontal(GUI.skin.GetStyle("GroupBox")); foreach (var schema in Chache) { var rawData = schema.field_info.GetValue(item); RenderRawLine(schema, rawData, item); GUILayout.Space(20); } if (GUILayout.Button("Delete", new GUILayoutOption[] { GUILayout.Width(80) })) { deleteList.Add(item.ID); ShowNotification(new GUIContent("SUCCESS !!!")); } GUILayout.Space(20); GUILayout.EndHorizontal(); } GUILayout.EndVertical(); GUILayout.EndScrollView(); GUILayout.EndHorizontal(); Page(); GUILayout.BeginHorizontal(); GUILayout.Label(EditorConfig.Contract); GUILayout.EndHorizontal(); }