diff options
author | RĂ©mi Verschelde <remi@verschelde.fr> | 2016-10-09 14:35:24 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-09 14:35:24 +0200 |
commit | 369865f01aac33499e69bff7c619108b91dea06b (patch) | |
tree | dac36ff820538eadd741c54310d78ab764b40e7c /scene/gui | |
parent | 93127070a65d8622f670ddd81f779abb61480327 (diff) | |
parent | 83278a1ac41b5595e3d96f74ad0c2ce73d41835e (diff) |
Merge pull request #6705 from volzhs/graphedit
Fix GraphEdit grab random node when delete or deselect by clicking empty space
Diffstat (limited to 'scene/gui')
-rw-r--r-- | scene/gui/graph_edit.cpp | 10 | ||||
-rw-r--r-- | scene/gui/graph_node.cpp | 1 |
2 files changed, 7 insertions, 4 deletions
diff --git a/scene/gui/graph_edit.cpp b/scene/gui/graph_edit.cpp index 0de6add8cb..4eecabd10c 100644 --- a/scene/gui/graph_edit.cpp +++ b/scene/gui/graph_edit.cpp @@ -912,18 +912,20 @@ void GraphEdit::_input_event(const InputEvent& p_ev) { if (b.button_index==BUTTON_LEFT && b.pressed) { GraphNode *gn = NULL; + GraphNode *gn_selected = NULL; for(int i=get_child_count()-1;i>=0;i--) { - gn=get_child(i)->cast_to<GraphNode>(); + gn_selected=get_child(i)->cast_to<GraphNode>(); - if (gn) { + if (gn_selected) { - if (gn->is_resizing()) + if (gn_selected->is_resizing()) continue; - Rect2 r = gn->get_rect(); + Rect2 r = gn_selected->get_rect(); r.size*=zoom; if (r.has_point(get_local_mouse_pos())) + gn = gn_selected; break; } } diff --git a/scene/gui/graph_node.cpp b/scene/gui/graph_node.cpp index da298a795a..38e2e06ac5 100644 --- a/scene/gui/graph_node.cpp +++ b/scene/gui/graph_node.cpp @@ -788,4 +788,5 @@ GraphNode::GraphNode() { comment=false; resizeable=false; resizing=false; + selected=false; } |