Clone in a terminal:
Commit 2d84241
Johan Mattsson - 2016-06-24T15:16:37+00:00
2d8424147e5dcf70927890cd3689a1e8e28c0ea6johan.mattsson.m@gmail.com

Fix symmetrical handles

Changed files (4)

Diff

diff --git a/libbirdfont/DrawingTools.vala b/libbirdfont/DrawingTools.valaindex 552c994..b77b0f0 100644--- a/libbirdfont/DrawingTools.vala+++ b/libbirdfont/DrawingTools.vala@@ -537,7 +537,7 @@ public class DrawingTools : ToolCollection  { 					 					if (!p.path.is_open () || !end_point) { 						p.point.set_reflective_handles (!symmetrical);-						p.point.process_symmetrical_handles ();+						p.point.get_right_handle ().process_symmetrical_handle (); 						 						if (symmetrical) { 							ep.point.set_tie_handle (false);diff --git a/libbirdfont/EditPoint.vala b/libbirdfont/EditPoint.valaindex d5d6be7..4a41cb8 100644--- a/libbirdfont/EditPoint.vala+++ b/libbirdfont/EditPoint.vala@@ -267,12 +267,6 @@ public class EditPoint : GLib.Object { 		tie_handles = tie; 	} 	-	public void process_symmetrical_handles () {-		process_tied_handle ();-		right_handle.process_symmetrical_handle ();-		left_handle.process_symmetrical_handle ();-	}-	 	public void to_curve () { 		convert_from_line_to_curve (get_right_handle ()); 		convert_from_line_to_curve (get_left_handle ());diff --git a/libbirdfont/EditPointHandle.vala b/libbirdfont/EditPointHandle.valaindex efc5cf0..6425cc2 100644--- a/libbirdfont/EditPointHandle.vala+++ b/libbirdfont/EditPointHandle.vala@@ -48,7 +48,7 @@ public class EditPointHandle : GLib.Object { 			}  			if (parent.reflective_point) {-				parent.process_symmetrical_handles ();+				process_symmetrical_handle (); 			} 			 			process_connected_handle ();@@ -75,7 +75,7 @@ public class EditPointHandle : GLib.Object { 			}  			if (parent.reflective_point) {-				parent.process_symmetrical_handles ();+				process_symmetrical_handle (); 			} 			 			process_connected_handle ();diff --git a/libbirdfont/PenTool.vala b/libbirdfont/PenTool.valaindex 74e032a..2c2c5e7 100644--- a/libbirdfont/PenTool.vala+++ b/libbirdfont/PenTool.vala@@ -815,7 +815,7 @@ public class PenTool : Tool { 				GridTool.tie_coordinate (ref coordinate_x, ref coordinate_y); 				delta_coordinate_x = coordinate_x - last_point_x; 				delta_coordinate_y = coordinate_y - last_point_y;			-				selected_handle.move_to_coordinate (selected_handle.x + delta_coordinate_x, selected_handle.y + delta_coordinate_y);+				selected_handle.move_delta_coordinate (delta_coordinate_x, delta_coordinate_y); 			} else if (GridTool.has_ttf_grid ()) { 				coordinate_x = Glyph.path_coordinate_x (x); 				coordinate_y = Glyph.path_coordinate_y (y);@@ -826,8 +826,8 @@ public class PenTool : Tool { 			} else { 				coordinate_x = Glyph.path_coordinate_x (x); 				coordinate_y = Glyph.path_coordinate_y (y);-				selected_handle.x = coordinate_x;-				selected_handle.y = coordinate_y;+				+				selected_handle.move_to_coordinate (coordinate_x, coordinate_y); 				 				if (on_axis) { 					double tied_x = 0;@@ -835,9 +835,8 @@ public class PenTool : Tool { 					  					PointTool.tie_angle (selected_handle.parent.x, selected_handle.parent.y, 							coordinate_x, coordinate_y, out tied_x, out tied_y);-							-					selected_handle.x = tied_x;-					selected_handle.y = tied_y;+					+					selected_handle.move_to_coordinate (tied_x, tied_y); 				} 			} @@ -1243,7 +1242,7 @@ public class PenTool : Tool { 				// alt+click creates a point with symmetrical handles 				if (KeyBindings.has_alt () || KeyBindings.has_ctrl ()) { 					selected_point.set_reflective_handles (true);-					selected_point.process_symmetrical_handles ();+					selected_point.get_right_handle ().process_symmetrical_handle (); 					GlyphCanvas.redraw (); 				} 			}

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112