Ejemplo n.º 1
0
        private static void FillAddNodes(NodeEditorInputInfo inputInfo, GenericMenu canvasContextMenu)
        {         // Show all nodes, and if a connection is drawn, only compatible nodes to auto-connect
            NodeEditorState state          = inputInfo.editorState;
            List <Node>     displayedNodes = state.connectOutput != null?NodeTypes.getCompatibleNodes(state.connectOutput) : NodeTypes.nodes.Keys.ToList();

            foreach (Node compatibleNode in displayedNodes)
            {
                canvasContextMenu.AddItem(new GUIContent("Add " + NodeTypes.nodes[compatibleNode].adress), false, CreateNodeCallback, new NodeEditorInputInfo(compatibleNode.GetID, state));
            }
        }
Ejemplo n.º 2
0
        private static void FillAddNodes(NodeEditorInputInfo inputInfo, GenericMenu canvasContextMenu)
        {         // Fill context menu with nodes to add to the canvas
            NodeEditorState state = inputInfo.editorState;
            List <string>   nodes = NodeTypes.getCompatibleNodes(state.connectKnob);

            foreach (string node in nodes)
            {             // Only add nodes to the context menu that are compatible
                if (NodeCanvasManager.CheckCanvasCompability(node, inputInfo.editorState.canvas.GetType()) && inputInfo.editorState.canvas.CanAddNode(node))
                {
                    canvasContextMenu.AddItem(new GUIContent("Add " + NodeTypes.getNodeData(node).adress), false, CreateNodeCallback, new NodeEditorInputInfo(node, state));
                }
            }
        }
        private static void FillAddNodes(NodeEditorInputInfo inputInfo, GenericMenu canvasContextMenu)
        {
            NodeEditorState editorState    = inputInfo.editorState;
            List <Node>     displayedNodes = (!((UnityEngine.Object)editorState.connectOutput != (UnityEngine.Object)null)) ? NodeTypes.nodes.Keys.ToList() : NodeTypes.getCompatibleNodes(editorState.connectOutput);

            DeCafList(ref displayedNodes, editorState.canvas);
            foreach (Node item in displayedNodes)
            {
                NodeData nodeData = NodeTypes.nodes[item];
                canvasContextMenu.AddItem(new GUIContent("Add " + nodeData.adress), false, CreateNodeCallback, new NodeEditorInputInfo(item.GetID, editorState));
            }
        }