private void DrawEditableList(List <string> list, ref Vector2 scroll, ref string newValue, string title) { EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField(title, EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); // == BEGIN SCROLL == scroll = EditorGUILayout.BeginScrollView(scroll); for (var i = 0; i < list.Count; i++) { DrawEditableListValue(list, i); } EditorGUILayout.EndScrollView(); // == END SCROLL == KLEditorUtils.DrawUILine(); if (DrawInputFieldWithButton(ref newValue, "Add")) { m_isDirty = true; if (!string.IsNullOrEmpty(newValue)) { list.Add(newValue); newValue = ""; } } EditorGUILayout.EndVertical(); }
private void DrawVariables() { EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Available variables", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); m_variableScrollPosition = GUILayout.BeginScrollView(m_variableScrollPosition); foreach (var variable in KLEditorCore.AvailableVariables) { KLEditorUtils.DrawVariable(variable); } EditorGUILayout.EndScrollView(); EditorGUILayout.EndVertical(); }
private void DrawTags() { EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Available tags", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); m_tagScrollPosition = EditorGUILayout.BeginScrollView(m_tagScrollPosition); foreach (var tag in KLEditorCore.AvailableTags) { KLEditorUtils.DrawTag(tag); } EditorGUILayout.EndScrollView(); EditorGUILayout.EndVertical(); // KLEditorUtility.DrawWindowDebug(this); }
private void Draw(KLContractDefinition contract) { // ===== BEGIN TAGS ===== EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Tags", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); contract.tags.ForEach(x => Draw(x)); EditorGUILayout.EndVertical(); // ===== END TAGS ===== // ===== BEGIN VARIABLES ===== EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Variables", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); contract.variables.ForEach(x => Draw(x)); EditorGUILayout.EndVertical(); // ===== END VARIABLES ===== // ===== BEGIN SOUNDBANKS ===== EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Soundbank files", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); contract.soundbank_files.ForEach(x => Draw(x)); EditorGUILayout.EndVertical(); // ===== END SOUNDBANKS ===== // ===== BEGIN CHANNELS ===== EditorGUILayout.BeginVertical(EditorStyles.helpBox); EditorGUILayout.LabelField("Channels", EditorStyles.boldLabel); KLEditorUtils.DrawUILine(); contract.channels.ForEach(x => Draw(x)); EditorGUILayout.EndVertical(); // ===== END CHANNELS ===== }