annotate gui.d @ 7:936feb16eed4

Checkpoint
author "David Bryant <bagnose@gmail.com>"
date Sat, 11 Jul 2009 21:29:03 +0930
parents 7d57cae10805
children bf7903435f58
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
1 module gui;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
2
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
3 import canvas;
2
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 1
diff changeset
4 import tool_stack;
7
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
5 import tool;
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
6 import standard_tools;
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
7
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
8 import gtk.Main;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
9 import gtk.MainWindow;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
10
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
11 import tk.geometry;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
12 import tk.types;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
13 import tk.events;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
14
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
15 import std.stdio;
3
7d57cae10805 Renamed geometry2 to geometry
David Bryant <daveb@acres.com.au>
parents: 2
diff changeset
16 import tk.geometry;
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
17
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
18 void main(string[] args) {
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
19 Main.init(args);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
20 auto window = new MainWindow("Title");
7
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
21 Tool[] tools;
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
22 tools ~= new PanTool;
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
23 tools ~= new ZoomTool;
936feb16eed4 Checkpoint
"David Bryant <bagnose@gmail.com>"
parents: 3
diff changeset
24 auto event_handler = new ToolStack(tools);
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
25 auto canvas = new Canvas(event_handler);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
26 window.add(canvas);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
27 window.showAll();
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
28 Main.run();
2
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 1
diff changeset
29
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 1
diff changeset
30 /*
3
7d57cae10805 Renamed geometry2 to geometry
David Bryant <daveb@acres.com.au>
parents: 2
diff changeset
31 Point p3 = Point.DEFAULT;
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
32
3
7d57cae10805 Renamed geometry2 to geometry
David Bryant <daveb@acres.com.au>
parents: 2
diff changeset
33 Point p1 = Point(3.0, 5.0);
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
34 writefln("%s", p1);
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
35
3
7d57cae10805 Renamed geometry2 to geometry
David Bryant <daveb@acres.com.au>
parents: 2
diff changeset
36 Point p2 = Point(1.0, 2.0);
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
37 writefln("%s", p2);
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
38
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
39 writefln("%s", p1 - p2);
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
40
3
7d57cae10805 Renamed geometry2 to geometry
David Bryant <daveb@acres.com.au>
parents: 2
diff changeset
41 Rectangle r = Rectangle(p1, p2);
1
c18e3f93d114 Implemented Rectangle2
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
42 writefln("%s", r);
2
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 1
diff changeset
43 */
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
44 }