comparison doodle/dia/icanvas.d @ 78:024a5608087f

Meh
author "David Bryant <bagnose@gmail.com>"
date Sun, 15 Aug 2010 15:19:14 +0930
parents 15ca7d5cd1ed
children b759414d2b72
comparison
equal deleted inserted replaced
77:15ca7d5cd1ed 78:024a5608087f
11 } 11 }
12 12
13 mixin(defineEnum!("Cursor", 13 mixin(defineEnum!("Cursor",
14 "DEFAULT", "HAND", "CROSSHAIR", "PENCIL")); 14 "DEFAULT", "HAND", "CROSSHAIR", "PENCIL"));
15 15
16 interface IViewport { 16 interface IViewport2 {
17 void zoomRelative(in Point screenDatum, in double factor);
18 void panRelative(in Vector screenDisplacement);
19 void setCursor(in Cursor cursor);
20
21 void damageModel(in Rectangle area); 17 void damageModel(in Rectangle area);
22 void damageScreen(in Rectangle area); 18 void damageScreen(in Rectangle area);
23 } 19 }
24 20
21 interface IViewport : IViewport2 {
22 void zoomRelative(in Point screenDatum, in double factor); // FIXME reorder arguments
23 void panRelative(in Vector screenDisplacement);
24 void setCursor(in Cursor cursor);
25 }
26
27 /*
25 final class Damage { 28 final class Damage {
26 void increase(in Rectangle additional) { _rectangle = _rectangle | additional; } 29 void increase(in Rectangle additional) { _rectangle = _rectangle | additional; }
27 Rectangle rectangle() const { return _rectangle; } 30 Rectangle rectangle() const { return _rectangle; }
28 private Rectangle _rectangle; 31 private Rectangle _rectangle;
29 } 32 }
33 */
30 34
31 interface IEventHandler { 35 interface IEventHandler {
32 bool handleButtonPress(scope IViewport viewport, in ButtonEvent event); 36 bool handleButtonPress(scope IViewport viewport, in ButtonEvent event);
33 bool handleButtonRelease(scope IViewport viewport, in ButtonEvent event); 37 bool handleButtonRelease(scope IViewport viewport, in ButtonEvent event);
34 bool handleMotion(scope IViewport viewport, in MotionEvent event); 38 bool handleMotion(scope IViewport viewport, in MotionEvent event);