3 #include "canvas/canvas.h"
4 #include "canvas/rectangle.h"
7 using namespace ArdourCanvas;
9 Rectangle* rectangle[2];
14 Rect r = rectangle[0]->get ();
17 rectangle[0]->set (r);
23 Rect r = rectangle[0]->get ();
26 rectangle[0]->set (r);
32 Duple p = rectangle[0]->position ();
34 rectangle[0]->set_position (p);
40 Duple p = rectangle[0]->position ();
42 rectangle[0]->set_position (p);
45 int main (int argc, char* argv[])
47 Gtk::Main kit (argc, argv);
50 window.set_title ("Hello world");
51 window.set_size_request (512, 512);
53 canvas.set_size_request (2048, 2048);
55 rectangle[0] = new Rectangle (canvas.root(), Rect (64, 64, 128, 128));
56 rectangle[0]->set_outline_color (0xff0000aa);
57 rectangle[1] = new Rectangle (canvas.root(), Rect (64, 64, 128, 128));
58 rectangle[1]->set_position (Duple (256, 256));
59 rectangle[1]->set_outline_width (4);
60 rectangle[1]->set_outline_color (0x00ff00ff);
61 rectangle[1]->set_fill (true);
62 rectangle[1]->set_fill_color (0x00ffffff);
63 rectangle[1]->set_outline_what ((Rectangle::What) (Rectangle::LEFT | Rectangle::RIGHT));
65 Gtk::VBox overall_box;
67 Gtk::ScrolledWindow scroller;
68 scroller.add (canvas);
69 overall_box.pack_start (scroller);
73 Gtk::Button bigger ("Bigger");
74 bigger.signal_clicked().connect (sigc::ptr_fun (&bigger_clicked));
75 button_box.pack_start (bigger);
77 Gtk::Button smaller ("Smaller");
78 smaller.signal_clicked().connect (sigc::ptr_fun (&smaller_clicked));
79 button_box.pack_start (smaller);
81 Gtk::Button left ("Left");
82 left.signal_clicked().connect (sigc::ptr_fun (&left_clicked));
83 button_box.pack_start (left);
85 Gtk::Button right ("Right");
86 right.signal_clicked().connect (sigc::ptr_fun (&right_clicked));
87 button_box.pack_start (right);
89 overall_box.pack_start (button_box, false, false);
91 window.add (overall_box);
95 Gtk::Main::run (window);