annotate icanvas.d @ 2:d6f44347373d

* Switched over to geometry done with structs instead of classes. * Removed direct access to gtk structs * Refactoring
author David Bryant <daveb@acres.com.au>
date Fri, 10 Jul 2009 15:15:27 +0930
parents e907d2c54ec3
children 7d57cae10805
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 icanvas;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
2
2
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
3 import tk.geometry2;
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
4
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
5 interface ICanvas {
2
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
6 void rel_zoom(Point2 screen_datum, double factor);
d6f44347373d * Switched over to geometry done with structs instead of classes.
David Bryant <daveb@acres.com.au>
parents: 0
diff changeset
7 void rel_pan(Vector2 screen_displacement);
0
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
8 //void damage();
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
9 }
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.events;
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
12
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
13 interface ICanvasEventHandler {
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
14 bool handle_button_press(ICanvas canvas, ButtonEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
15 bool handle_button_release(ICanvas canvas, ButtonEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
16 bool handle_key_press(ICanvas canvas, KeyEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
17 bool handle_key_release(ICanvas canvas, KeyEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
18 bool handle_motion(ICanvas canvas, MotionEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
19 bool handle_scroll(ICanvas canvas, ScrollEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
20 //bool handle_expose(ICanvas canvas, ExposeEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
21 //bool handle_enter(ICanvas, CrossingEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
22 //bool handle_leave(ICanvas, CrossingEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
23 //bool handle_focus_in(ICanvas, FocusEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
24 //bool handle_focus_out(ICanvas, FocusEvent event);
e907d2c54ec3 Initial import
David Bryant <daveb@acres.com.au>
parents:
diff changeset
25 }