public static void DrawWindow(UdonGraph graph, UdonGraphGUI graphGUI) { if (_instance == null) { _instance = CreateInstance <UdonNodeSearchMenu>(); } Rect rect = GUILayoutUtility.GetLastRect(); bool goodState = graphGUI.selection.Count == 0; if (goodState) { goodState = GUI.GetNameOfFocusedControl() != "NodeField"; } if (goodState && KeyUpEvent(KeyCode.Space) && !Event.current.shift) { GUI.UnfocusWindow(); } if (!GUILayout.Button("Add Node", EditorStyles.toolbarButton, GUILayout.Width(120)) && !(KeyUpEvent(KeyCode.Space) && goodState)) { return; } rect = RemapRectForPopup(rect); _instance.InitWindow(graph, graphGUI, rect); _instance.Repaint(); }
private void DrawNodeSearchBox() { UdonNodeSearchMenu.DrawWindow(graph, graphGUI); }