///All reflection type nodes public static UnityEditor.GenericMenu AppendAllReflectionNodesMenu(this FlowGraph graph, UnityEditor.GenericMenu menu, string baseCategory, Vector2 pos, Port sourcePort, object dropInstance) { foreach (var type in UserTypePrefs.GetPreferedTypesList()) { menu = graph.AppendTypeReflectionNodesMenu(menu, type, baseCategory, pos, sourcePort, dropInstance); } return(menu); }
///---------------------------------------------------------------------------------------------- ///Returns all nodes' menu public static UnityEditor.GenericMenu GetFullNodesMenu(this FlowGraph flowGraph, Vector2 mousePos, Port context, Object dropInstance) { var menu = new UnityEditor.GenericMenu(); if (context is ValueInput || context is ValueOutput) { menu = flowGraph.AppendTypeReflectionNodesMenu(menu, context.type, "", mousePos, context, dropInstance); } menu = flowGraph.AppendFlowNodesMenu(menu, "", mousePos, context, dropInstance); menu = flowGraph.AppendSimplexNodesMenu(menu, "Functions/Implemented", mousePos, context, dropInstance); menu = flowGraph.AppendAllReflectionNodesMenu(menu, "Functions/Reflected", mousePos, context, dropInstance); menu = flowGraph.AppendVariableNodesMenu(menu, "Variables", mousePos, context, dropInstance); menu = flowGraph.AppendMacroNodesMenu(menu, "MACROS", mousePos, context, dropInstance); menu = flowGraph.AppendMenuCallbackReceivers(menu, "", mousePos, context, dropInstance); return(menu); }