Clone in a terminal:
Commit 65567cf
Johan Mattsson - 2016-01-06T15:09:03+00:00
65567cf1a323aed8594a94602a8671b6764590f6johan.mattsson.m@gmail.com

Rename FastPath to PathObject

Changed files (13)

Diff

diff --git a/libbirdfont/DrawingTools.vala b/libbirdfont/DrawingTools.valaindex 3360f9d..5d02755 100644--- a/libbirdfont/DrawingTools.vala+++ b/libbirdfont/DrawingTools.vala@@ -846,8 +846,8 @@ public class DrawingTools : ToolCollection  { 				foreach (Object p in g.active_paths) { 					p.stroke = StrokeTool.stroke_width; 					-					if (p is FastPath) {-						Path path = ((FastPath) p).get_path ();+					if (p is PathObject) {+						Path path = ((PathObject) p).get_path (); 						path.reset_stroke (); 					} 				}@@ -888,8 +888,8 @@ public class DrawingTools : ToolCollection  { 			foreach (Object p in g.active_paths) { 				p.line_cap = LineCap.BUTT; 				-				if (p is FastPath) {-					((FastPath) p).get_path ().reset_stroke ();+				if (p is PathObject) {+					((PathObject) p).get_path ().reset_stroke (); 				} 			} 			@@ -915,8 +915,8 @@ public class DrawingTools : ToolCollection  { 			foreach (Object p in g.active_paths) { 				p.line_cap = LineCap.ROUND; 				-				if (p is FastPath) {-					((FastPath) p).get_path ().reset_stroke ();+				if (p is PathObject) {+					((PathObject) p).get_path ().reset_stroke (); 				} 			} 			@@ -943,8 +943,8 @@ public class DrawingTools : ToolCollection  { 			foreach (Object p in g.active_paths) { 				p.line_cap = LineCap.SQUARE; -				if (p is FastPath) {-					((FastPath) p).get_path ().reset_stroke ();+				if (p is PathObject) {+					((PathObject) p).get_path ().reset_stroke (); 				} 			} 			diff --git a/libbirdfont/ExportTool.vala b/libbirdfont/ExportTool.valaindex e90e648..7ace92f 100644--- a/libbirdfont/ExportTool.vala+++ b/libbirdfont/ExportTool.vala@@ -104,8 +104,8 @@ public class ExportTool : GLib.Object { 		 		foreach (Object o in pl) { 			-			if (o is FastPath) {-				Path p = ((FastPath) o).get_path ();+			if (o is PathObject) {+				Path p = ((PathObject) o).get_path ();  				if (p.stroke > 0) { 					s.append (@"<path ");@@ -132,8 +132,8 @@ public class ExportTool : GLib.Object { 		 		if (only_selected_paths) { 			foreach (Object p in glyph.active_paths) {-				if (p is FastPath) {-					Path path = ((FastPath) p).get_path ();+				if (p is PathObject) {+					Path path = ((PathObject) p).get_path (); 					if (path.stroke == 0) { 						glyph_svg += Svg.to_svg_path (path, glyph); 					}diff --git a/libbirdfont/FastPath.vala b/libbirdfont/FastPath.valadeleted file mode 100644index dfd926e..0000000--- a/libbirdfont/FastPath.vala+++ /dev/null@@ -1,237 +0,0 @@-/*-	Copyright (C) 2015 Johan Mattsson--	This library is free software; you can redistribute it and/or modify -	it under the terms of the GNU Lesser General Public License as -	published by the Free Software Foundation; either version 3 of the -	License, or (at your option) any later version.--	This library is distributed in the hope that it will be useful, but -	WITHOUT ANY WARRANTY; without even the implied warranty of -	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -	Lesser General Public License for more details.-*/--using Cairo;--namespace BirdFont {--public class FastPath : Object {--	Path path;-	-	public override double stroke {-		get {-			return path.stroke;-		}--		set {-			path.stroke = value;-		}-	}--	public override double rotation {-		get {-			return path.rotation;-		}--		set {-			path.rotation = value;-		}-	}--	public override LineCap line_cap {-		get {-			return path.line_cap;-		}--		set {-			path.line_cap = value;-		}-	}--	public override bool fill {-		get {-			return path.fill;-		}--		set {-			path.fill = value;-		}-	}--	public override Color? color {-		get {-			return path.color;-		}--		set {-			path.color = value;-		}-	}--	public override Color? stroke_color {-		get {-			return path.stroke_color;-		}--		set {-			path.stroke_color = value;-		}-	}--	public override Gradient? gradient {-		get {-			return path.gradient;-		}--		set {-			path.gradient = value;-		}-	}--	public override double xmin {-		get {-			return path.xmin;-		}--		set {-			path.xmin = value;-		}-		-		default = Glyph.CANVAS_MAX;-	}--	public override double xmax {-		get {-			return path.xmax;-		}--		set {-			path.xmax = value;-		}-		-		default = Glyph.CANVAS_MIN;-	}--	public override double ymin {-		get {-			return path.ymin;-		}--		set {-			path.ymin = value;-		}-		-		default = Glyph.CANVAS_MAX;-	}--	public override double ymax {-		get {-			return path.ymax;-		}--		set {-			path.ymax = value;-		}-		-		default = Glyph.CANVAS_MIN;-	}-			-	public FastPath () {-		path = new Path ();-		update_region_boundaries ();-	}--	public FastPath.create_copy (FastPath p) {-		base.create_copy (p);-		path = p.path.copy ();-	}--	public FastPath.for_path (Path path) {-		this.path = path;-	}--	public override bool is_over (double x, double y) {-		return path.is_over (x, y);-	}-			-	public override void draw (Context cr, Color? c = null) {-		PathList path_stroke;-		Color path_color;-		bool open;-		-		cr.save ();-		-		if (c != null) {-			path_color = (!) c;-		} else if (color != null) {-			path_color = (!) color;-		} else {-			path_color = Color.black ();-		}--		if (path.stroke > 0) {-			path_stroke = path.get_stroke_fast ();-			draw_path_list (path_stroke, cr, path_color);-		} else {-			open = path.is_open ();-			-			if (open) {-				path.close ();-				path.recalculate_linear_handles ();-			}-			-			path.draw_path (cr, path_color);-			-			if (open) {-				path.reopen ();-			}-		}--		cr.restore ();-	}--	public static void draw_path_list (PathList pl, Context cr, Color? c = null) {-		foreach (Path p in pl.paths) {-			p.draw_path (cr, c);-		}-	}-		-	public override void move (double dx, double dy) {-		path.move (dx, dy);-		path.reset_stroke ();-	}-	-	public Path get_path () {-		return path;-	}--	public override void update_region_boundaries () {-		path.update_region_boundaries ();-	}--	public override void rotate (double theta, double xc, double yc) {-		path.rotate (theta, xc, yc);-	}-	-	public override bool is_empty () {-		return path.points.size == 0;-	}-	-	public override void resize (double ratio_x, double ratio_y) {-		path.resize (ratio_x, ratio_y);-		path.reset_stroke ();-	}-	-	public override Object copy () {-		return new FastPath.create_copy (this);-	}--	public override string to_string () {-		return "FastPath";-	}--}--}diff --git a/libbirdfont/Glyph.vala b/libbirdfont/Glyph.valaindex 52a9e90..15a2b17 100644--- a/libbirdfont/Glyph.vala+++ b/libbirdfont/Glyph.vala@@ -303,7 +303,7 @@ public class Glyph : FontDisplay {  	public void add_active_path (Layer? group, Path? p) { 		if (p != null) {-			FastPath path = new FastPath.for_path ((!) p);+			PathObject path = new PathObject.for_path ((!) p); 			add_active_object (group, path); 		} else { 			add_active_object (group, null);@@ -321,8 +321,8 @@ public class Glyph : FontDisplay { 				active_paths.add (object); 			} 			-			if (object is FastPath) {-				FastPath path = (FastPath) object;+			if (object is PathObject) {+				PathObject path = (PathObject) object; 				if (Toolbox.get_move_tool ().is_selected ()) { 					if (path.get_path ().stroke > 0) { 						Toolbox.set_object_stroke (path.get_path ().stroke);@@ -348,12 +348,12 @@ public class Glyph : FontDisplay { 			return true; 		} 		-		if (object is FastPath) {-			FastPath path = (FastPath) object;+		if (object is PathObject) {+			PathObject path = (PathObject) object; 			 			foreach (Object active in glyph.active_paths) {-				if (active is FastPath) {-					FastPath path_active = (FastPath) active;+				if (active is PathObject) {+					PathObject path_active = (PathObject) active; 					if (path_active.get_path () == path.get_path ()) { 						return true; 					}@@ -983,7 +983,7 @@ public class Glyph : FontDisplay { 			path.reopen (); 			path.create_list (); 			-			FastPath object = new FastPath.for_path (path);+			PathObject object = new PathObject.for_path (path); 			add_active_object (null, object); 		} @@ -1097,7 +1097,7 @@ public class Glyph : FontDisplay { 	public void set_active_path (Path p) { 		p.reopen (); 		clear_active_paths ();-		add_active_object (null, new FastPath.for_path (p));+		add_active_object (null, new PathObject.for_path (p)); 	}  	/** Move view port centrum to this coordinate. */@@ -1408,7 +1408,7 @@ public class Glyph : FontDisplay {  		foreach (Object object in active_paths) { 			EditPoint p;-			Path path = ((FastPath) object).get_path ();+			Path path = ((PathObject) object).get_path (); 			EditPoint pl = path.get_last_point ();  			if (pl.prev != null) {@@ -1737,7 +1737,7 @@ public class Glyph : FontDisplay { 					color = Color.black (); 				} -				FastPath.draw_path_list (stroke, cr, color);+				PathObject.draw_path_list (stroke, cr, color); 			} 		} 		cr.fill ();@@ -1750,12 +1750,12 @@ public class Glyph : FontDisplay { 			cr.save (); 			cr.new_path (); 			foreach (Object o in active_paths) {-				if (o is FastPath) {-					Path p = ((FastPath) o).get_path ();+				if (o is PathObject) {+					Path p = ((PathObject) o).get_path (); 					if (p.stroke > 0) { 						stroke = p.get_stroke_fast (); 						color = Theme.get_color ("Selected Objects");-						FastPath.draw_path_list (stroke, cr, color);+						PathObject.draw_path_list (stroke, cr, color); 					} 				} 			}@@ -1797,8 +1797,8 @@ public class Glyph : FontDisplay { 			 			foreach (Object o in get_visible_objects ()) { 				print("visible obj\n");-				if (o is FastPath) {-					Path p = ((FastPath) o).get_path ();+				if (o is PathObject) {+					Path p = ((PathObject) o).get_path ();  					if (p.stroke == 0) { 						color = p.color == null ? Color.black () : (!) p.color;@@ -1813,8 +1813,8 @@ public class Glyph : FontDisplay { 			cr.restore ();  			foreach (Object o in active_paths) {-				if (o is FastPath) {-					Path p = ((FastPath) o).get_path ();+				if (o is PathObject) {+					Path p = ((PathObject) o).get_path (); 					cr.save (); 					cr.new_path (); 					if (p.stroke == 0) {@@ -2590,8 +2590,8 @@ public class Glyph : FontDisplay { 		Gee.ArrayList<Path> paths = new Gee.ArrayList<Path> (); 		 		foreach (Object object in active_paths) {-			if (object is FastPath) {-				paths.add (((FastPath) object).get_path ());+			if (object is PathObject) {+				paths.add (((PathObject) object).get_path ()); 			} 		} 		diff --git a/libbirdfont/Layer.vala b/libbirdfont/Layer.valaindex bea608c..c78de2d 100644--- a/libbirdfont/Layer.vala+++ b/libbirdfont/Layer.vala@@ -53,8 +53,8 @@ public class Layer : GLib.Object { 		PathList paths = new PathList (); 		 		foreach (Object o in objects) {-			if (o is FastPath) {-				FastPath p = (FastPath) o;+			if (o is PathObject) {+				PathObject p = (PathObject) o; 				paths.add (p.get_path ()); 			} 		}@@ -89,8 +89,8 @@ public class Layer : GLib.Object { 		 		if (visible) { 			foreach (Object o in objects) {-				if (o is FastPath) {-					FastPath p = (FastPath) o;+				if (o is PathObject) {+					PathObject p = (PathObject) o; 					paths.add (p.get_path ()); 				} 			}@@ -110,7 +110,7 @@ public class Layer : GLib.Object { 	}  	public void add_path (Path path) {-		FastPath p = new FastPath.for_path (path);+		PathObject p = new PathObject.for_path (path); 		objects.add (p); 	} @@ -124,10 +124,10 @@ public class Layer : GLib.Object { 		} 	} -	private FastPath? get_fast_path (Path path) {+	private PathObject? get_fast_path (Path path) { 		foreach (Object o in objects) {-			if (o is FastPath) {-				FastPath p = (FastPath) o;+			if (o is PathObject) {+				PathObject p = (PathObject) o; 				if (p.get_path () == path) { 					return p; 				}@@ -138,7 +138,7 @@ public class Layer : GLib.Object { 	} 	 	public void remove_path (Path path) {-		FastPath? p = get_fast_path (path);+		PathObject? p = get_fast_path (path); 		 		if (p != null) { 			objects.remove ((!) p);@@ -252,8 +252,8 @@ public class Layer : GLib.Object { 		PathList paths = new PathList (); 		 		foreach (Object object in objects) {-			if (object is FastPath) {-				paths.add (((FastPath) object).get_path ());+			if (object is PathObject) {+				paths.add (((PathObject) object).get_path ()); 			} 		} 		diff --git a/libbirdfont/MoveTool.vala b/libbirdfont/MoveTool.valaindex cedaa36..bd7229f 100644--- a/libbirdfont/MoveTool.vala+++ b/libbirdfont/MoveTool.vala@@ -95,8 +95,8 @@ public class MoveTool : Tool { 			} 			 			foreach (Object p in g.active_paths) {-				if (p is FastPath) {-					g.layers.remove_path (((FastPath) p).get_path ());+				if (p is PathObject) {+					g.layers.remove_path (((PathObject) p).get_path ()); 				} else { 					g.layers.remove (p); 				}@@ -189,8 +189,8 @@ public class MoveTool : Tool { 			DrawingTools.resize_tool.signal_objects_rotated (); 			 			foreach (Object o in glyph.active_paths) {-				if (o is FastPath) {-					FastPath path = (FastPath) o;+				if (o is PathObject) {+					PathObject path = (PathObject) o; 					path.get_path ().create_full_stroke (); 				} 			}@@ -324,8 +324,8 @@ public class MoveTool : Tool { 		py2 = -10000; 		 		foreach (Object o in glyph.active_paths) {-			if (o is FastPath) {-				Path p = ((FastPath) o).get_path ();+			if (o is PathObject) {+				Path p = ((PathObject) o).get_path (); 				p.update_region_boundaries (); 				 				if (px > p.xmin) {@@ -457,8 +457,8 @@ public class MoveTool : Tool { 	public static void update_boundaries_for_selection () { 		Glyph glyph = MainWindow.get_current_glyph (); 		foreach (Object o in glyph.active_paths) {-			if (o is FastPath) {-				((FastPath)o).get_path ().update_region_boundaries ();+			if (o is PathObject) {+				((PathObject)o).get_path ().update_region_boundaries (); 			} 		} 	}@@ -482,8 +482,8 @@ public class MoveTool : Tool { 		yc = selection_box_center_y;  		foreach (Object p in glyph.active_paths) {-			if (p is FastPath) {-				Path path = ((FastPath) p).get_path ();+			if (p is PathObject) {+				Path path = ((PathObject) p).get_path (); 				 				// FIXME: move to object 				if (vertical) {diff --git a/libbirdfont/OrientationTool.vala b/libbirdfont/OrientationTool.valaindex 9e3c3f8..aa606d2 100644--- a/libbirdfont/OrientationTool.vala+++ b/libbirdfont/OrientationTool.vala@@ -31,8 +31,8 @@ public class OrientationTool : Tool { 			Glyph g = MainWindow.get_current_glyph (); 			 			foreach (Object o in g.active_paths) {-				if (o is FastPath) {-					FastPath p = (FastPath) o;+				if (o is PathObject) {+					PathObject p = (PathObject) o; 					p.get_path ().reverse (); 				} 			}@@ -58,8 +58,8 @@ public class OrientationTool : Tool { 		bool has_counter_clockwise_paths = false; 		 		foreach (Object o in glyph.active_paths) {-			if (o is FastPath) {-				Path p = ((FastPath) o).get_path ();+			if (o is PathObject) {+				Path p = ((PathObject) o).get_path (); 				 				if (p.is_clockwise ()) { 					has_clockwise_paths = true;diff --git a/libbirdfont/PathObject.vala b/libbirdfont/PathObject.valanew file mode 100644index 0000000..8453e48--- /dev/null+++ b/libbirdfont/PathObject.vala@@ -0,0 +1,237 @@+/*+	Copyright (C) 2015 Johan Mattsson++	This library is free software; you can redistribute it and/or modify +	it under the terms of the GNU Lesser General Public License as +	published by the Free Software Foundation; either version 3 of the +	License, or (at your option) any later version.++	This library is distributed in the hope that it will be useful, but +	WITHOUT ANY WARRANTY; without even the implied warranty of +	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +	Lesser General Public License for more details.+*/++using Cairo;++namespace BirdFont {++public class PathObject : Object {++	Path path;+	+	public override double stroke {+		get {+			return path.stroke;+		}++		set {+			path.stroke = value;+		}+	}++	public override double rotation {+		get {+			return path.rotation;+		}++		set {+			path.rotation = value;+		}+	}++	public override LineCap line_cap {+		get {+			return path.line_cap;+		}++		set {+			path.line_cap = value;+		}+	}++	public override bool fill {+		get {+			return path.fill;+		}++		set {+			path.fill = value;+		}+	}++	public override Color? color {+		get {+			return path.color;+		}++		set {+			path.color = value;+		}+	}++	public override Color? stroke_color {+		get {+			return path.stroke_color;+		}++		set {+			path.stroke_color = value;+		}+	}++	public override Gradient? gradient {+		get {+			return path.gradient;+		}++		set {+			path.gradient = value;+		}+	}++	public override double xmin {+		get {+			return path.xmin;+		}++		set {+			path.xmin = value;+		}+		+		default = Glyph.CANVAS_MAX;+	}++	public override double xmax {+		get {+			return path.xmax;+		}++		set {+			path.xmax = value;+		}+		+		default = Glyph.CANVAS_MIN;+	}++	public override double ymin {+		get {+			return path.ymin;+		}++		set {+			path.ymin = value;+		}+		+		default = Glyph.CANVAS_MAX;+	}++	public override double ymax {+		get {+			return path.ymax;+		}++		set {+			path.ymax = value;+		}+		+		default = Glyph.CANVAS_MIN;+	}+			+	public PathObject () {+		path = new Path ();+		update_region_boundaries ();+	}++	public PathObject.create_copy (PathObject p) {+		base.create_copy (p);+		path = p.path.copy ();+	}++	public PathObject.for_path (Path path) {+		this.path = path;+	}++	public override bool is_over (double x, double y) {+		return path.is_over (x, y);+	}+			+	public override void draw (Context cr, Color? c = null) {+		PathList path_stroke;+		Color path_color;+		bool open;+		+		cr.save ();+		+		if (c != null) {+			path_color = (!) c;+		} else if (color != null) {+			path_color = (!) color;+		} else {+			path_color = Color.black ();+		}++		if (path.stroke > 0) {+			path_stroke = path.get_stroke_fast ();+			draw_path_list (path_stroke, cr, path_color);+		} else {+			open = path.is_open ();+			+			if (open) {+				path.close ();+				path.recalculate_linear_handles ();+			}+			+			path.draw_path (cr, path_color);+			+			if (open) {+				path.reopen ();+			}+		}++		cr.restore ();+	}++	public static void draw_path_list (PathList pl, Context cr, Color? c = null) {+		foreach (Path p in pl.paths) {+			p.draw_path (cr, c);+		}+	}+		+	public override void move (double dx, double dy) {+		path.move (dx, dy);+		path.reset_stroke ();+	}+	+	public Path get_path () {+		return path;+	}++	public override void update_region_boundaries () {+		path.update_region_boundaries ();+	}++	public override void rotate (double theta, double xc, double yc) {+		path.rotate (theta, xc, yc);+	}+	+	public override bool is_empty () {+		return path.points.size == 0;+	}+	+	public override void resize (double ratio_x, double ratio_y) {+		path.resize (ratio_x, ratio_y);+		path.reset_stroke ();+	}+	+	public override Object copy () {+		return new PathObject.create_copy (this);+	}++	public override string to_string () {+		return "PathObject";+	}++}++}diff --git a/libbirdfont/PenTool.vala b/libbirdfont/PenTool.valaindex a2db71b..ba993e3 100644--- a/libbirdfont/PenTool.vala+++ b/libbirdfont/PenTool.vala@@ -766,8 +766,8 @@ public class PenTool : Tool { 		} 		 		foreach (Object path in g.active_paths) {-			if (path is FastPath) {-				FastPath p = (FastPath) path;+			if (path is PathObject) {+				PathObject p = (PathObject) path; 				p.get_path ().reset_stroke (); 			} 		}@@ -1059,8 +1059,8 @@ public class PenTool : Tool { 				// don't use set point to reflective to on open ends 				reflective = true; 				foreach (Object path in MainWindow.get_current_glyph ().active_paths) {-					if (path.is_open () && !path.is_empty () && path is FastPath) {-						Path p = ((FastPath) path).get_path ();+					if (path.is_open () && !path.is_empty () && path is PathObject) {+						Path p = ((PathObject) path).get_path (); 						if (selected_handle.parent == p.get_first_point ()	 							|| selected_handle.parent == p.get_last_point ()) { 							reflective = false;@@ -1234,7 +1234,7 @@ public class PenTool : Tool { 		if (active_edit_point != null) { 			glyph.clear_active_paths (); 			-			FastPath path = new FastPath.for_path (active_path);+			PathObject path = new PathObject.for_path (active_path); 			glyph.add_active_object (null, path); 			 			DrawingTools.update_stroke_settings ();@@ -1415,7 +1415,7 @@ public class PenTool : Tool {  			foreach (Path merge in paths) { 				if (merge.points.size > 0) {-					FastPath merged_path = new FastPath.for_path (merge);+					PathObject merged_path = new PathObject.for_path (merge); 					 					if (is_close_to_point (merge.points.get (merge.points.size - 1), px, py)) {	 						glyph.add_active_object (null, merged_path);@@ -1463,7 +1463,7 @@ public class PenTool : Tool { 			 			glyph.clear_active_paths (); 			-			FastPath closed_path = new FastPath.for_path (path);+			PathObject closed_path = new PathObject.for_path (path); 			glyph.add_active_object (null, closed_path); 			 			if (direction_changed) {@@ -1503,7 +1503,7 @@ public class PenTool : Tool { 				} else { 					union = merge_open_paths (path, merge);  -					FastPath union_path = new FastPath.for_path (union);+					PathObject union_path = new PathObject.for_path (union); 					glyph.add_path (union); 					glyph.delete_path (path); 					glyph.delete_path (merge);@@ -1791,8 +1791,8 @@ public class PenTool : Tool { 		return_val_if_fail (glyph.active_paths.size > 0, new PointSelection.empty ()); 		Object object = glyph.active_paths.get (glyph.active_paths.size - 1); 		-		if (object is FastPath) {		-			Path path = ((FastPath) object).get_path ();+		if (object is PathObject) {		+			Path path = ((PathObject) object).get_path (); 			 			add_selected_point (selected_point, path); @@ -1837,7 +1837,7 @@ public class PenTool : Tool { 		EditPoint inserted; 		bool stroke = StrokeTool.add_stroke; 		Glyph g = MainWindow.get_current_glyph ();-		FastPath path;+		PathObject path; 		 		if (g.active_paths.size == 0) { 			np = new Path ();@@ -1845,7 +1845,7 @@ public class PenTool : Tool { 			np.stroke = stroke ? StrokeTool.stroke_width : 0; 			np.line_cap = StrokeTool.line_cap; 			-			path = new FastPath.for_path (np);+			path = new PathObject.for_path (np); 			g.add_active_object (null, path); 			 			active_path = np;@@ -1872,7 +1872,7 @@ public class PenTool : Tool { 		}  		g.clear_active_paths ();-		path = new FastPath.for_path (np);+		path = new PathObject.for_path (np); 		g.add_active_object (null, path); 		active_path = np; 		selected_path = np;@@ -2083,7 +2083,7 @@ public class PenTool : Tool { 		selected_handle.selected = true; 		 		active_path = p.path;-		FastPath path = new FastPath.for_path (active_path);+		PathObject path = new PathObject.for_path (active_path); 		g.add_active_object (null, path); 	} diff --git a/libbirdfont/ResizeTool.vala b/libbirdfont/ResizeTool.valaindex 8ced1b8..d43b78d 100644--- a/libbirdfont/ResizeTool.vala+++ b/libbirdfont/ResizeTool.vala@@ -122,8 +122,8 @@ public class ResizeTool : Tool { 			GlyphCanvas.redraw (); 			 			foreach (Object p in MainWindow.get_current_glyph ().active_paths) {-				if (p is FastPath) {-					FastPath path = (FastPath) p;+				if (p is PathObject) {+					PathObject path = (PathObject) p; 					path.get_path ().create_full_stroke (); 				} 			}@@ -546,8 +546,8 @@ public class ResizeTool : Tool { 		glyph.selection_boundaries (out x, out y, out w, out h); 	 		foreach (Object path in glyph.active_paths) {-			if (path is FastPath) { // FIXME: other objects-				Path p = ((FastPath) path).get_path ();+			if (path is PathObject) { // FIXME: other objects+				Path p = ((PathObject) path).get_path (); 				SvgParser.apply_matrix (p, 1, 0, s, 1, 0, 0); 				p.skew = skew; 				path.update_region_boundaries ();diff --git a/libbirdfont/StrokeTool.vala b/libbirdfont/StrokeTool.valaindex c967648..fc51550 100644--- a/libbirdfont/StrokeTool.vala+++ b/libbirdfont/StrokeTool.vala@@ -52,8 +52,8 @@ public class StrokeTool : GLib.Object { 		g.store_undo_state (); 		 		foreach (Object o in g.active_paths) {-			if (o is FastPath) {-				FastPath path = (FastPath) o;+			if (o is PathObject) {+				PathObject path = (PathObject) o; 				Path p = path.get_path (); 				 				if (p.stroke > 0) {@@ -71,7 +71,7 @@ public class StrokeTool : GLib.Object {  			foreach (Path np in paths.paths) { 				g.add_path (np);-				g.active_paths.add (new FastPath.for_path (np));+				g.active_paths.add (new PathObject.for_path (np)); 			} 			 			PenTool.update_orientation ();@@ -140,8 +140,8 @@ public class StrokeTool : GLib.Object { 		g.store_undo_state ();  		foreach (Object object in g.active_paths) {-			if (object is FastPath) {-				Path p = ((FastPath) object).get_path ();+			if (object is PathObject) {+				Path p = ((PathObject) object).get_path (); 				 				if (p.stroke == 0) { 					o.add (p);@@ -235,7 +235,7 @@ public class StrokeTool : GLib.Object { 		remove_merged_curve_parts (new_paths); 	 		foreach (Path p in new_paths.paths) {-			FastPath path = new FastPath.for_path (p);+			PathObject path = new PathObject.for_path (p); 			g.add_object (path); 			g.add_active_object (null, path); 		}diff --git a/libbirdfont/Svg/SvgParser.vala b/libbirdfont/Svg/SvgParser.valaindex cde1dfb..10b47a8 100644--- a/libbirdfont/Svg/SvgParser.vala+++ b/libbirdfont/Svg/SvgParser.vala@@ -151,7 +151,7 @@ public class SvgParser { 	 		glyph = MainWindow.get_current_glyph (); 		foreach (Path p in path_list.paths) {-			FastPath path = new FastPath.for_path (p);+			PathObject path = new PathObject.for_path (p); 			glyph.add_object (path); 			glyph.add_active_object (null, path); // FIXME: groups 			path.update_region_boundaries ();@@ -294,8 +294,8 @@ public class SvgParser { 		PathList path_list = new PathList (); 		 		foreach (Object o in layer.objects) {-			if (o is FastPath) {-				path_list.add (((FastPath) o).get_path ());+			if (o is PathObject) {+				path_list.add (((PathObject) o).get_path ()); 			} 		} 		@@ -872,13 +872,13 @@ public class SvgParser { 		int inside_count; 		bool inside; 		foreach (Object o1 in layer.objects) {-			if (o1 is FastPath) {-				Path p1 = ((FastPath) o1).get_path ();+			if (o1 is PathObject) {+				Path p1 = ((PathObject) o1).get_path (); 				inside_count = 0; 				 				foreach (Object o2 in layer.objects) {-					if (o2 is FastPath) {-						Path p2 = ((FastPath) o2).get_path ();+					if (o2 is PathObject) {+						Path p2 = ((PathObject) o2).get_path (); 					 						if (p1 != p2) { 							inside = true;diff --git a/libbirdfont/TrackTool.vala b/libbirdfont/TrackTool.valaindex 03baa4e..1179cc0 100644--- a/libbirdfont/TrackTool.vala+++ b/libbirdfont/TrackTool.vala@@ -122,9 +122,9 @@ public class TrackTool : Tool { 				drawing = true; 				 				foreach (Object path in glyph.active_paths) {-					if (path is FastPath) {+					if (path is PathObject) { 						// cache merged stroke parts-						((FastPath) path).get_path ().create_full_stroke ();+						((PathObject) path).get_path ().create_full_stroke (); 					} 				} 			}@@ -150,7 +150,7 @@ public class TrackTool : Tool { 				 				if (g.active_paths.size > 0) { // set type for last point 					Object o = g.active_paths.get (g.active_paths.size - 1);-					p = ((FastPath) o).get_path ();+					p = ((PathObject) o).get_path (); 									 					if (p.points.size > 1) { 						previous = p.points.get (p.points.size - 1);@@ -169,8 +169,8 @@ public class TrackTool : Tool { 				} 							 				foreach (Object path in g.active_paths) {-					if (path is FastPath) {-						convert_hidden_points (((FastPath) path).get_path ());+					if (path is PathObject) {+						convert_hidden_points (((PathObject) path).get_path ()); 					} 				} 				@@ -411,12 +411,12 @@ public class TrackTool : Tool { 		 		Object o = glyph.active_paths.get (glyph.active_paths.size - 1); 		-		if (unlikely (!(o is FastPath))) {+		if (unlikely (!(o is PathObject))) { 			warning ("Object is not a path"); 			return; 		} 		-		p = ((FastPath) o).get_path ();+		p = ((PathObject) o).get_path (); 		p.reopen (); 		px = Glyph.path_coordinate_x (x); 		py = Glyph.path_coordinate_y (y);@@ -504,8 +504,8 @@ public class TrackTool : Tool { 			 		Object o = glyph.active_paths.get (glyph.active_paths.size - 1); 		-		if (likely (o is FastPath)) {-			return ((FastPath) o).get_path ();+		if (likely (o is PathObject)) {+			return ((PathObject) o).get_path (); 		} 		 		warning ("Active object is a path.");

Contact

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