diff options
author | poke1024 <poke1024@gmx.org> | 2017-08-29 20:23:54 +0200 |
---|---|---|
committer | poke1024 <poke1024@gmx.org> | 2017-08-29 20:29:03 +0200 |
commit | d8fcc7d1c28992cac74c6f0b78ffc4fd95c30bc2 (patch) | |
tree | 90897150479c46870c99633f10795832434c99c9 | |
parent | c812c176330bfc53a780c0a7c8a9091ddb90f352 (diff) |
Fixes two glitches in polygon2d wip mode introduced with #10614
-rw-r--r-- | editor/plugins/polygon_2d_editor_plugin.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/editor/plugins/polygon_2d_editor_plugin.cpp b/editor/plugins/polygon_2d_editor_plugin.cpp index d04184f055..f140b25028 100644 --- a/editor/plugins/polygon_2d_editor_plugin.cpp +++ b/editor/plugins/polygon_2d_editor_plugin.cpp @@ -402,10 +402,13 @@ bool Polygon2DEditor::forward_gui_input(const Ref<InputEvent> &p_event) { cpoint = canvas_item_editor->snap_point(cpoint); edited_point_pos = node->get_global_transform().affine_inverse().xform(cpoint); - Vector<Vector2> poly = Variant(node->get_polygon()); - ERR_FAIL_INDEX_V(edited_point, poly.size(), false); - poly[edited_point] = edited_point_pos - node->get_offset(); - node->set_polygon(Variant(poly)); + if (!wip_active) { + + Vector<Vector2> poly = Variant(node->get_polygon()); + ERR_FAIL_INDEX_V(edited_point, poly.size(), false); + poly[edited_point] = edited_point_pos - node->get_offset(); + node->set_polygon(Variant(poly)); + } canvas_item_editor->get_viewport_control()->update(); } @@ -430,7 +433,7 @@ void Polygon2DEditor::_canvas_draw() { Transform2D xform = canvas_item_editor->get_canvas_transform() * node->get_global_transform(); Ref<Texture> handle = get_icon("EditorHandle", "EditorIcons"); - if (edited_point >= 0 && EDITOR_DEF("editors/poly_editor/show_previous_outline", true)) { + if (!wip_active && edited_point >= 0 && EDITOR_DEF("editors/poly_editor/show_previous_outline", true)) { const Color col = node->get_color().contrasted(); const int n = pre_move_edit.size(); |