annotate doodle.d @ 27:f3d91579bb28

Checkpoint
author David Bryant <daveb@acres.com.au>
date Wed, 29 Jul 2009 14:11:35 +0930
parents 17c2df87b459
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
1 module doodle;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
2
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
3 private {
22
17c2df87b459 Package refactoring.
"David Bryant <bagnose@gmail.com>"
parents: 20
diff changeset
4 import dia.tool_layer;
17c2df87b459 Package refactoring.
"David Bryant <bagnose@gmail.com>"
parents: 20
diff changeset
5 import dia.standard_tools;
17c2df87b459 Package refactoring.
"David Bryant <bagnose@gmail.com>"
parents: 20
diff changeset
6 import dia.page_layer;
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
7
27
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
8 import gtk.canvas;
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
9 import gtk.toolbar;
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
10
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
11 import gtk.Main;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
12 import gtk.MainWindow;
27
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
13 import gtk.VBox;
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
14
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
15 import std.stdio;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
16 }
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
17
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
18 void main(string[] args) {
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
19 Main.init(args);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
20 auto window = new MainWindow("Doodle");
27
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
21 auto vbox = new VBox(false, 0);
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
22 auto tool_bar = new ToolBar;
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
23 vbox.packStart(tool_bar, false, false, 0);
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
24 Tool[] tools;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
25 tools ~= new PanTool;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
26 tools ~= new ZoomTool;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
27 tools ~= new LassoTool;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
28 auto tool_layer = new ToolLayer(tools, "Tools");
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
29 Layer[] layers;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
30 layers ~= new PageLayer("Page");
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
31 layers ~= tool_layer;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
32 auto canvas = new Canvas(layers, tool_layer, 120.0);
27
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
33 vbox.packStart(canvas, true, true, 0);
f3d91579bb28 Checkpoint
David Bryant <daveb@acres.com.au>
parents: 22
diff changeset
34 window.add(vbox);
20
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
35 window.setDefaultSize(380, 380);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
36 window.showAll();
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
37 Main.run();
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
38
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
39 /*
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
40 Point p3 = Point.DEFAULT;
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
41
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
42 Point p1 = Point(3.0, 5.0);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
43 writefln("%s", p1);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
44
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
45 Point p2 = Point(1.0, 2.0);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
46 writefln("%s", p2);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
47
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
48 writefln("%s", p1 - p2);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
49
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
50 Rectangle r = Rectangle(p1, p2);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
51 writefln("%s", r);
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
52 */
d6e7a5a6f008 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents:
diff changeset
53 }