Skip to content

Commit 6298278

Browse files
committed
Improve connection bind deleting
1 parent 037956d commit 6298278

2 files changed

Lines changed: 5 additions & 13 deletions

File tree

editor/scene/connections_dialog.cpp

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -223,12 +223,8 @@ void ConnectDialog::_add_bind() {
223223
/*
224224
* Remove parameter bind from connection.
225225
*/
226-
void ConnectDialog::_remove_bind() {
227-
String st = bind_editor->get_selected_path();
228-
if (st.is_empty()) {
229-
return;
230-
}
231-
int idx = st.get_slicec('/', 1).to_int() - 1;
226+
void ConnectDialog::_remove_bind(const String &p_bind) {
227+
int idx = p_bind.get_slicec('/', 1).to_int() - 1;
232228

233229
ERR_FAIL_INDEX(idx, cdbinds->params.size());
234230
cdbinds->params.remove_at(idx);
@@ -855,17 +851,13 @@ ConnectDialog::ConnectDialog() {
855851
add_bind->connect(SceneStringName(pressed), callable_mp(this, &ConnectDialog::_add_bind));
856852
bind_controls.push_back(add_bind);
857853

858-
Button *del_bind = memnew(Button);
859-
del_bind->set_text(TTR("Remove"));
860-
add_bind_hb->add_child(del_bind);
861-
del_bind->connect(SceneStringName(pressed), callable_mp(this, &ConnectDialog::_remove_bind));
862-
bind_controls.push_back(del_bind);
863-
864854
vbc_right->add_margin_child(TTR("Add Extra Call Argument:"), add_bind_hb);
865855

866856
bind_editor = memnew(EditorInspector);
867857
bind_editor->set_accessibility_name(TTRC("Extra Call Arguments:"));
858+
bind_editor->set_use_deletable_properties(true);
868859
bind_controls.push_back(bind_editor);
860+
bind_editor->connect("property_deleted", callable_mp(this, &ConnectDialog::_remove_bind));
869861

870862
vbc_right->add_margin_child(TTR("Extra Call Arguments:"), bind_editor, true);
871863

editor/scene/connections_dialog.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ class ConnectDialog : public ConfirmationDialog {
159159

160160
void _unbind_count_changed(double p_count);
161161
void _add_bind();
162-
void _remove_bind();
162+
void _remove_bind(const String &p_bind);
163163
void _advanced_pressed();
164164
void _update_ok_enabled();
165165
void _update_warning_label();

0 commit comments

Comments
 (0)