public static NodePanel CreateDefaultNodePanel(Node node, CanvasState canvasState) { // create the nodePanel rect Rect nodePanelRect = new Rect(new Vector2(0, 0), new Vector2(BehaviourEditorStyles.NODE_DEFAULT_WIDTH, BehaviourEditorStyles.NODE_DEFAULT_HEIGHT)); int handleSize = 16; int handlePadding = 2; Rect inHandleRect = new Rect(Vector2.zero, new Vector2(handleSize, handleSize)); inHandleRect.center = new Vector2(nodePanelRect.width / 2, 0 - handleSize / 2 - handlePadding); Rect outHandleRect = new Rect(Vector2.zero, new Vector2(handleSize, handleSize)); outHandleRect.center = new Vector2(nodePanelRect.width / 2, (nodePanelRect.size.y) + (handleSize / 2) + handlePadding); //NodePanel nodePanel = new NodePanel(node, nodePanelRect, inHandleRect, outHandleRect); NodePanel nodePanel = node.CanHaveChildren ? new NodePanel(node, nodePanelRect, inHandleRect, outHandleRect, canvasState) : new NodePanel(node, nodePanelRect, inHandleRect, canvasState); nodePanel.SetIcon(CanvasUtility.GetIcon(node.GetType())); nodePanel.SetColours(Color.white, BehaviourEditorStyles.nodeNormalColour, 1); return(nodePanel); }