AllGraphView.cs 883 B

12345678910111213141516171819202122232425262728
  1. using UnityEngine.UIElements;
  2. using UnityEditor.Experimental.GraphView;
  3. using UnityEngine;
  4. using GraphProcessor;
  5. using System;
  6. using UnityEditor;
  7. public class AllGraphView : BaseGraphView
  8. {
  9. // Nothing special to add for now
  10. public AllGraphView(EditorWindow window) : base(window) {}
  11. public override void BuildContextualMenu(ContextualMenuPopulateEvent evt)
  12. {
  13. BuildStackNodeContextualMenu(evt);
  14. base.BuildContextualMenu(evt);
  15. }
  16. /// <summary>
  17. /// Add the New Stack entry to the context menu
  18. /// </summary>
  19. /// <param name="evt"></param>
  20. protected void BuildStackNodeContextualMenu(ContextualMenuPopulateEvent evt)
  21. {
  22. Vector2 position = (evt.currentTarget as VisualElement).ChangeCoordinatesTo(contentViewContainer, evt.localMousePosition);
  23. evt.menu.AppendAction("New Stack", (e) => AddStackNode(new BaseStackNode(position)), DropdownMenuAction.AlwaysEnabled);
  24. }
  25. }