diff options
author | DennisManaa <dennis.manaa@gmx.net> | 2023-02-10 15:10:38 +0100 |
---|---|---|
committer | DennisManaa <dennis.manaa@gmx.net> | 2023-09-22 15:28:59 +0200 |
commit | f248420a2b721bc3d54e3335c3d5888caad0d113 (patch) | |
tree | 9ac05f3d586fa4c9d3d0ccedb15cc5060c452356 /editor/plugins/visual_shader_editor_plugin.cpp | |
parent | fe5b1c8d49313d63fbe91cb7cdf463e10fb86afa (diff) | |
download | redot-engine-f248420a2b721bc3d54e3335c3d5888caad0d113.tar.gz |
made visual shader ports expandable by default if there is only one output port and it's of any vector type
Co-authored-by: QbieShay <cislaghi.ilaria@gmail.com>
Diffstat (limited to 'editor/plugins/visual_shader_editor_plugin.cpp')
-rw-r--r-- | editor/plugins/visual_shader_editor_plugin.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp index b9b47c475b..d952a7be1e 100644 --- a/editor/plugins/visual_shader_editor_plugin.cpp +++ b/editor/plugins/visual_shader_editor_plugin.cpp @@ -859,11 +859,11 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id, bool } if (valid_right) { - if (vsnode->is_output_port_expandable(i)) { + if (expanded_port_counter == 0 && vsnode->is_output_port_expandable(i)) { TextureButton *expand = memnew(TextureButton); expand->set_toggle_mode(true); - expand->set_texture_normal(editor->get_editor_theme_icon(SNAME("GuiTreeArrowDown"))); - expand->set_texture_pressed(editor->get_editor_theme_icon(SNAME("GuiTreeArrowRight"))); + expand->set_texture_normal(editor->get_editor_theme_icon(SNAME("GuiTreeArrowRight"))); + expand->set_texture_pressed(editor->get_editor_theme_icon(SNAME("GuiTreeArrowDown"))); expand->set_v_size_flags(Control::SIZE_SHRINK_CENTER); expand->set_pressed(vsnode->_is_output_port_expanded(i)); expand->connect("pressed", callable_mp(editor, &VisualShaderEditor::_expand_output_port).bind(p_id, i, !vsnode->_is_output_port_expanded(i)), CONNECT_DEFERRED); @@ -892,6 +892,9 @@ void VisualShaderGraphPlugin::add_node(VisualShader::Type p_type, int p_id, bool if (!is_first_hbox) { node->add_child(hb); + if (curve_xyz.is_valid()) { + node->move_child(hb, 1 + expanded_port_counter); + } } if (expanded_type != VisualShaderNode::PORT_TYPE_SCALAR) { |