seed r395 - trunk/modules/canvas
- From: racarr svn gnome org
- To: svn-commits-list gnome org
- Subject: seed r395 - trunk/modules/canvas
- Date: Sat, 6 Dec 2008 02:37:22 +0000 (UTC)
Author: racarr
Date: Sat Dec 6 02:37:22 2008
New Revision: 395
URL: http://svn.gnome.org/viewvc/seed?rev=395&view=rev
Log:
Add Canvas.bezierCurveTo
Added:
trunk/modules/canvas/test8.js (contents, props changed)
Modified:
trunk/modules/canvas/Makefile.am
trunk/modules/canvas/seed-canvas.c
Modified: trunk/modules/canvas/Makefile.am
==============================================================================
--- trunk/modules/canvas/Makefile.am (original)
+++ trunk/modules/canvas/Makefile.am Sat Dec 6 02:37:22 2008
@@ -7,7 +7,7 @@
libsqlite_la_LDFLAGS = \
`pkg-config --libs seed cairo`
-EXTRA_DIST=test1.js test2.js test3.js test4.js test5.js test6.js test7.js
+EXTRA_DIST=test1.js test2.js test3.js test4.js test5.js test6.js test7.js test8.js
AM_CPPFLAGS = \
-I../../libseed/ \
Modified: trunk/modules/canvas/seed-canvas.c
==============================================================================
--- trunk/modules/canvas/seed-canvas.c (original)
+++ trunk/modules/canvas/seed-canvas.c Sat Dec 6 02:37:22 2008
@@ -459,6 +459,28 @@
return seed_make_null(ctx);
}
+SeedValue seed_canvas_bezier (SeedContext ctx,
+ SeedObject function,
+ SeedObject this_object,
+ size_t argument_count,
+ const SeedValue arguments[],
+ SeedException * exception)
+{
+ GET_CR;
+ gdouble cp0x, cp0y, cp1x, cp1y, cp2x, cp2y;
+
+ cp0x = seed_value_to_double(ctx, arguments[0], exception);
+ cp0y = seed_value_to_double(ctx, arguments[1], exception);
+ cp1x = seed_value_to_double(ctx, arguments[2], exception);
+ cp1y = seed_value_to_double(ctx, arguments[3], exception);
+ cp2x = seed_value_to_double(ctx, arguments[4], exception);
+ cp2y = seed_value_to_double(ctx, arguments[5], exception);
+
+ cairo_curve_to(cr, cp0x, cp0y, cp1x, cp1y, cp2x, cp2y);
+
+ return seed_make_null(ctx);
+}
+
static void canvas_finalize(SeedObject object)
{
cairo_destroy((cairo_t *)seed_object_get_private(object));
@@ -484,6 +506,7 @@
{"clip", seed_canvas_clip, 0},
{"arc", seed_canvas_arc, 0},
{"quadraticCurveTo", seed_canvas_quadratic, 0},
+ {"bezierCurveTo", seed_canvas_bezier, 0},
{0, 0, 0}
};
Added: trunk/modules/canvas/test8.js
==============================================================================
--- (empty file)
+++ trunk/modules/canvas/test8.js Sat Dec 6 02:37:22 2008
@@ -0,0 +1,37 @@
+#!/usr/local/bin/seed
+Seed.import_namespace("Gdk");
+Seed.import_namespace("Gtk");
+Seed.import_namespace("Canvas");
+
+
+Gtk.init(null, null);
+
+w = new Gtk.Window();
+d = new Gtk.DrawingArea();
+w.add(d);
+
+w.resize(150, 200);
+
+w.show_all();
+
+d.signal.expose_event.connect(function(){
+ var cr = Gdk.cairo_create(d.window);
+ var ctx = new Canvas.CairoCanvas(cr);
+
+ ctx.beginPath();
+ ctx.moveTo(75,40);
+ ctx.bezierCurveTo(75,37,70,25,50,25);
+ ctx.bezierCurveTo(20,25,20,62.5,20,62.5);
+ ctx.bezierCurveTo(20,80,40,102,75,120);
+ ctx.bezierCurveTo(110,102,130,80,130,62.5);
+ ctx.bezierCurveTo(130,62.5,130,25,100,25);
+ ctx.bezierCurveTo(85,25,75,37,75,40);
+ ctx.fill();
+
+ return true;
+});
+Gtk.main();
+
+
+
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]