summaryrefslogtreecommitdiff
path: root/core/extension/gdnative_interface.cpp
diff options
context:
space:
mode:
authorUmang Kalra <umangkalra10@gmail.com>2021-08-11 00:44:19 +0530
committerUmang Kalra <umangkalra10@gmail.com>2021-08-11 00:44:28 +0530
commit12fc3f1eefbe43a17e88f43f805e3c118459b7a8 (patch)
treead6c13ec87585364225479ed61fc5c00c23f65b1 /core/extension/gdnative_interface.cpp
parentda339f8ffcf4c33bb44129d718c0adde910e391d (diff)
Automatic arrangement of nodes in VisualScript/VisualShaders editors
This PR and commit adds the functionality to arrange nodes in VisualScript/VisualShader editor. The layout generated by this feature is compact, with minimum crossings between connections & uniform horizontal & vertical gaps between the nodes. This work has been sponsored by GSoC '21. Full list of additions/changes: • Added arrange_nodes() method in GraphEdit module. • This method computes new positions for all the selected nodes by forming blocks and compressing them. The nodes are moved to these new positions. • Adding this method to GraphEdit makes it available for use in VisualScript/VisualShaders editors and its other subclasses. • Button with an icon has been added to call arrange_nodes() in GraphEdit. • This button is inherited by VisualScript/VisualShaders editors to invoke the method. • Undo/redo is functional with this method. • By using signals in arrange_nodes(), position changes are registered in undo/redo stack of the subclass that is using the method. • Metadata of the method has been updated in ClassDB • Method description has been added to class reference of GraphEdit
Diffstat (limited to 'core/extension/gdnative_interface.cpp')
0 files changed, 0 insertions, 0 deletions