summaryrefslogtreecommitdiff
path: root/scene/gui
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2017-11-27 13:04:20 +0100
committerGitHub <noreply@github.com>2017-11-27 13:04:20 +0100
commit17b4f43e0e0a16d27bd769cab854e2be5e26833f (patch)
tree755ed27e9a273c09f2e308778641d01d3af393d9 /scene/gui
parent6aa331e5812ce48aa30ea08ed1adc598c9e5b4f6 (diff)
parentb8b5bb657767698b5864356fb2549ee9681f1bd6 (diff)
Merge pull request #13308 from Krakean/scenetreedock_additemsdeselect
Scene Tree Dock: added ability to deselect items when clicking on empty space
Diffstat (limited to 'scene/gui')
-rw-r--r--scene/gui/tree.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp
index 9213296c55..57c6737848 100644
--- a/scene/gui/tree.cpp
+++ b/scene/gui/tree.cpp
@@ -1923,6 +1923,9 @@ int Tree::propagate_mouse_event(const Point2i &p_pos, int x_ofs, int y_ofs, bool
c = c->next;
item_h += child_h;
}
+
+ if (!c && !p_mod->get_shift() && !p_mod->get_control() && !p_mod->get_command() && !click_handled && p_button != BUTTON_RIGHT)
+ emit_signal("nothing_selected");
}
}
@@ -3750,6 +3753,7 @@ void Tree::_bind_methods() {
ADD_SIGNAL(MethodInfo("custom_popup_edited", PropertyInfo(Variant::BOOL, "arrow_clicked")));
ADD_SIGNAL(MethodInfo("item_activated"));
ADD_SIGNAL(MethodInfo("column_title_pressed", PropertyInfo(Variant::INT, "column")));
+ ADD_SIGNAL(MethodInfo("nothing_selected"));
BIND_ENUM_CONSTANT(SELECT_SINGLE);
BIND_ENUM_CONSTANT(SELECT_ROW);