From f21c5f9646e4ced35950cb16d7b95edef6d92698 Mon Sep 17 00:00:00 2001 From: Nicole Rappe Date: Tue, 25 Feb 2025 00:01:27 -0700 Subject: [PATCH] Misc Changes --- borealis.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/borealis.py b/borealis.py index 8701a3c..06beb99 100644 --- a/borealis.py +++ b/borealis.py @@ -184,27 +184,32 @@ if __name__ == "__main__": for node_class in node_classes: graph.register_node(node_class) - # Create categorized context menu + # Create root context menu graph_context_menu = graph.get_context_menu("graph") + # Create a top-level "Add Nodes" folder in the context menu + add_nodes_menu = graph_context_menu.add_menu("Add Nodes") + + # Insert each category as a submenu under "Add Nodes" for category, node_classes in custom_nodes_by_category.items(): - category_menu = graph_context_menu.add_menu(category) # Create submenu for category + category_menu = add_nodes_menu.add_menu(category) for node_class in node_classes: node_type = f"{node_class.__identifier__}.{node_class.__name__}" node_name = node_class.NODE_NAME + # Remove "Create:" prefix - use only the node name category_menu.add_command( - f"Create: {node_name}", + node_name, make_node_command(graph, node_type) ) - # Add a "Remove Selected Node" command + # Provide a way to remove selected nodes from the root menu (not in Add Nodes) graph_context_menu.add_command( "Remove Selected Node", lambda: [graph.remove_node(node) for node in graph.selected_nodes()] if graph.selected_nodes() else None ) - # Add workflow menu commands - workflow_menu = graph_context_menu.add_menu("Workflow") + # Add a top-level "Workflows" menu for saving/loading/closing + workflow_menu = graph_context_menu.add_menu("Workflows") workflow_menu.add_command("Load Workflow", lambda: load_workflow(graph)) workflow_menu.add_command("Save Workflow", lambda: save_workflow(graph)) workflow_menu.add_command("Close Workflow", lambda: close_workflow(graph))