Misc Changes

This commit is contained in:
Nicole Rappe 2025-02-25 00:01:27 -07:00
parent 377e525e37
commit f21c5f9646

View File

@ -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))