public override void OnGUI(Rect rect) { if (memoEditorItem == null) { editorWindow.Close(); return; } EditorGUI.BeginChangeCheck(); memoEditorItem.OnGUI(); if (memoEditorItem.IsContextClick) { var menu = new GenericMenu(); menu.AddItem(new GUIContent("Edit"), false, () => { memoEditorItem.IsEdit = true; }); menu.AddItem(new GUIContent("Delete"), false, () => { UndoHelper.SceneMemoUndo(UndoHelper.UNDO_SCENEMEMO_DELETE); SceneMemoHelper.RemoveMemo(memo); memo = null; editorWindow.Close(); }); menu.ShowAsContext(); } if (EditorGUI.EndChangeCheck()) { SceneMemoHelper.SetDirty(); } }
private void DrawMemo() { Memo.OnGUI(); if (Memo.IsContextClick) { var menu = new GenericMenu(); menu.AddItem(new GUIContent("Edit"), false, () => { Memo.IsEdit = true; }); menu.AddItem(new GUIContent("Delete"), false, () => { UndoHelper.SceneMemoUndo(UndoHelper.UNDO_SCENEMEMO_DELETE); SceneMemoHelper.RemoveMemo(Memo); Memo = null; editorWindow.Close(); }); menu.ShowAsContext(); } }
private static void Draw(UnitySceneMemo memo) { EditorGUILayout.BeginVertical(); { // header GUI.backgroundColor = GUIHelper.Colors.SceneMemoLabelColor(memo.Label); EditorGUILayout.BeginHorizontal(GUIHelper.Styles.MemoHeader); { if (GUILayout.Button(InVisible ? "●" : "x", EditorStyles.toolbarButton, new GUILayoutOption[] { GUILayout.Width(18) })) { Undo.IncrementCurrentGroup(); UndoHelper.SceneMemoUndo(UndoHelper.UNDO_SCENEMEMO_EDIT); InVisible = !InVisible; } EditorGUILayout.BeginHorizontal(); { drawComponents(memo.Components); GUILayout.Label(memo.ObjectName); } EditorGUILayout.EndHorizontal(); GUILayout.FlexibleSpace(); } EditorGUILayout.EndHorizontal(); GUI.backgroundColor = Color.white; if (!InVisible) { // memo GUI.backgroundColor = GUIHelper.Colors.TransparentColor; scrollView = EditorGUILayout.BeginScrollView(scrollView, GUIHelper.Styles.NoSpaceBox); { GUIHelper.Styles.MemoLabel.normal.textColor = GUIHelper.Colors.SceneMemoTextColor(memo.TextCol); GUILayout.Label(memo.Memo, GUIHelper.Styles.MemoLabel); GUIHelper.Styles.MemoLabel.normal.textColor = GUIHelper.Colors.DefaultTextColor; } EditorGUILayout.EndScrollView(); GUI.backgroundColor = Color.white; } } EditorGUILayout.EndVertical(); }