Example #1
0
 private void ShowNodeCreationMenuFromEdge(BaseConnectionView connectionView, Vector2 position)
 {
     if (edgeNodeCreateMenuWindow == null)
     {
         edgeNodeCreateMenuWindow = ScriptableObject.CreateInstance <CreateNodeMenuWindow>();
     }
     edgeNodeCreateMenuWindow.Initialize(graphView, graphView.GetNodeTypes());
     edgeNodeCreateMenuWindow.ConnectionFilter = connectionView;
     SearchWindow.Open(new SearchWindowContext(position + EditorWindow.focusedWindow.position.position), edgeNodeCreateMenuWindow);
 }
Example #2
0
        /// <summary> 拖到空白松开时触发 </summary>
        public void OnDropOutsidePort(Edge edge, Vector2 position)
        {
            BaseConnectionView connectionView = edge as BaseConnectionView;

            if (!edge.isGhostEdge)
            {
                if (connectionView.Model != null)
                {
                    graphView.Model.Disconnect(connectionView.Model);
                }
            }

            if (edge.input == null || edge.output == null)
            {
                ShowNodeCreationMenuFromEdge(connectionView, position);
            }
        }