Commit 3f5c424
Merge branch 'master' into many_improvments Conflicts: src/EditPoint.vala src/EditPointHandle.vala
Changed files (3)
Diff
@@ -105,6 +105,10 @@ class EditPoint { unowned EditPoint n; double nx, ny; + if (prev == null && next != null) {+ prev = get_next ().last ();+ }+ // left handle if (prev != null) { n = get_prev ().data;@@ -119,11 +123,14 @@ class EditPoint { h = n.get_right_handle (); - if (h.type == PointType.LINE) { + // on the other side+ h = n.get_right_handle ();+ + if (h.type == PointType.LINE) { nx = n.x + ((x - n.x) / 3); ny = n.y + ((y - n.y) / 3);- - h.move_to_coordinate (nx, ny); + + h.move_to_coordinate (nx, ny); } } @@ -138,14 +145,14 @@ class EditPoint { h.move_to_coordinate (nx, ny); }- + h = n.get_left_handle (); if (h.type == PointType.LINE) { nx = n.x + ((x - n.x) / 3); ny = n.y + ((y - n.y) / 3);- - h.move_to_coordinate (nx, ny); ++ h.move_to_coordinate (nx, ny); } } }@@ -27,10 +27,10 @@ class EditPointHandle { public double angle; public double length; - public PointType type;- public EditPoint parent; + public PointType type;+ EditPoint? visual_handle = null; static EditPoint none = new EditPoint ();@@ -862,6 +862,13 @@ class Path { foreach (EditPoint ep in points) { ep.set_active_handle (false); }+ + create_list ();+ + if (points.length () > 2) {+ points.first ().data.recalculate_linear_handles ();+ points.last ().data.recalculate_linear_handles ();+ } } public void reopen () {