Clone in a terminal:
Commit d86e42d
Johan Mattsson - 2016-06-08T19:21:15+00:00
d86e42dba5b12fd7a9730a40b77e46afb64da5ddjohan.mattsson.m@gmail.com

Copy SVG paths

Changed files (3)

Diff

diff --git a/libsvgbird/Doubles.vala b/libsvgbird/Doubles.valaindex ad6133f..e45c2dc 100644--- a/libsvgbird/Doubles.vala+++ b/libsvgbird/Doubles.vala@@ -65,7 +65,7 @@ public class Doubles : GLib.Object { 	public Doubles copy () { 		Doubles d = new Doubles (); 		delete d.data;-		d.data = new double[capacity];+		d.data = new PointValue[capacity]; 		d.capacity = capacity; 		d.size = size; 		Posix.memcpy (d.data, data, sizeof (PointValue) * size);diff --git a/libsvgbird/Points.vala b/libsvgbird/Points.valaindex 4971eec..4f394f5 100644--- a/libsvgbird/Points.vala+++ b/libsvgbird/Points.vala@@ -34,6 +34,15 @@ public class Points : GLib.Object { 	public void add_type (uchar type) { 		point_data.add_type (type); 	}++	public Points copy () {+		Points p = new Points ();+		p.point_data = point_data.copy ();+		p.x = x;+		p.y = y;+		p.closed = closed;+		return p;+	} }  }diff --git a/libsvgbird/SvgPath.vala b/libsvgbird/SvgPath.valaindex af2a41d..1f985e2 100644--- a/libsvgbird/SvgPath.vala+++ b/libsvgbird/SvgPath.vala@@ -24,6 +24,10 @@ public class SvgPath : Object {  	public SvgPath.create_copy (SvgPath p) { 		Object.copy_attributes (p, this);+		+		foreach (Points point_data in p.points) {+			points.add (point_data.copy ());+		} 	} 	 	public override bool is_over (double x, double y) {

Contact

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