add framework for boxes
[turbulence.git] / t / cairo.vala
blob4c105683178bdd159cd3b70a6cf3cfa1686e913e
1 /*
2 * turbulence/t/cairo.vala
4 * Copyright (c) 2008 Patrick Walton <pcwalton@uchicago.edu>
5 */
7 using GLib;
8 using Clutter;
9 using Cairo;
10 using Turbulence;
12 namespace TurbulenceTests {
13 public class Cairo : Object {
14 public void draw(CairoSoftwareActor sender, Context ctx)
16 ctx.set_source_rgb(1.0, 0.0, 0.0);
17 ctx.set_line_width(3);
18 ctx.new_path();
19 ctx.move_to(63, 63);
20 ctx.rel_line_to(2 * 20, 2 * 20);
21 ctx.rel_line_to(-2 * 20, 0);
22 ctx.rel_line_to(2 * 20, -2 * 20);
23 ctx.close_path();
24 ctx.stroke();
27 construct {
28 Clutter.Color blue, white;
29 Clutter.Color.parse("blue", out blue);
30 Clutter.Color.parse("white", out white);
32 Stage stage = (Stage)Stage.get_default();
33 stage.color = blue;
34 stage.show();
36 CairoSoftwareActor csa = new CairoSoftwareActor();
37 csa.set_size(128, 128);
38 csa.x = 100;
39 csa.y = 100;
40 csa.draw_in_context += draw;
41 stage.add_actor(csa);
42 csa.show();
44 Clutter.main();
47 public static void main(string[] args)
49 Clutter.init(ref args);
50 new TurbulenceTests.Cairo();