From 4b2430290c9cb86c5217f115ec4137fe74cbff43 Mon Sep 17 00:00:00 2001 From: Keavon Chambers Date: Wed, 29 Apr 2026 19:27:44 -0700 Subject: [PATCH] New nodes: 'Gradient Type' and 'Spread Method', and add Gradient tool support for controlling these nodes (#4084) * Use 'Transform', 'Gradient Type', and 'Spread Method' nodes for table gradients * Add gradient widget to the tool's control bar and update where the two swap buttons go * Fix gradient rendering * Format * Code review --- .vscode/settings.json | 3 +- .../graph_operation_message.rs | 20 +- .../graph_operation_message_handler.rs | 19 +- .../document/graph_operation/utility_types.rs | 119 ++++- .../document/node_graph/node_properties.rs | 126 +++--- .../graph_modification_utils.rs | 33 ++ .../tool/tool_messages/gradient_tool.rs | 426 ++++++++++++------ node-graph/graph-craft/src/document/value.rs | 10 +- .../libraries/rendering/src/renderer.rs | 16 +- .../libraries/vector-types/src/gradient.rs | 4 - node-graph/libraries/vector-types/src/lib.rs | 2 +- node-graph/nodes/gstd/src/render_node.rs | 12 +- node-graph/nodes/math/src/lib.rs | 18 + 13 files changed, 584 insertions(+), 224 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index f9831b6d..74ad90c5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -70,5 +70,6 @@ "*.graphite": "json" }, "editor.renderWhitespace": "boundary", - "editor.minimap.markSectionHeaderRegex": "// ===+\\n\\s*//\\s*(?