comparison doodle/dia/tool.d @ 58:c63719604adb

Beginnings of creating a rectangle...
author "David Bryant <bagnose@gmail.com>"
date Mon, 09 Aug 2010 21:43:24 +0930
parents 9960c4fbd0dd
children eb5436b47d13
comparison
equal deleted inserted replaced
57:9960c4fbd0dd 58:c63719604adb
4 import cairo.Context; 4 import cairo.Context;
5 import doodle.dia.icanvas; 5 import doodle.dia.icanvas;
6 import doodle.tk.events; 6 import doodle.tk.events;
7 } 7 }
8 8
9 /* 9 abstract class Tool {
10 interface IToolStack { 10 this (in string name) {
11 void push(Tool tool); 11 _name = name;
12 void pop(); 12 }
13 void replace(Tool tool);
14 }
15 */
16 13
17 abstract class Tool { 14 string name() const { return _name; }
18 /*
19 enum Response {
20 START, CONTINUE, FINISH
21
22 }
23 */
24
25 /*
26 abstract bool isSticky();
27 abstract bool isReplaceable();
28 */
29
30 /*
31 abstract void start(IToolStack tool_stack);
32 abstract void stop(IToolStack tool_stack);
33 */
34 15
35 bool handleButtonPress(scope IViewport viewport, in ButtonEvent event) { return false; } 16 bool handleButtonPress(scope IViewport viewport, in ButtonEvent event) { return false; }
36 bool handleButtonRelease(scope IViewport viewport, in ButtonEvent event) { return false; } 17 bool handleButtonRelease(scope IViewport viewport, in ButtonEvent event) { return false; }
37 bool handleMotion(scope IViewport viewport, in MotionEvent event) { return false; } 18 bool handleMotion(scope IViewport viewport, in MotionEvent event) { return false; }
38 bool handleScroll(scope IViewport viewport, in ScrollEvent event) { return false; } 19 bool handleScroll(scope IViewport viewport, in ScrollEvent event) { return false; }
43 bool handleKeyPress(scope IViewport viewport, in KeyEvent event) { return false; } 24 bool handleKeyPress(scope IViewport viewport, in KeyEvent event) { return false; }
44 bool handleKeyRelease(scope IViewport viewport, in KeyEvent event) { return false; } 25 bool handleKeyRelease(scope IViewport viewport, in KeyEvent event) { return false; }
45 26
46 void draw(in IViewport viewport, 27 void draw(in IViewport viewport,
47 in Rectangle pixelDamage, scope Context pixelCr) const { } 28 in Rectangle pixelDamage, scope Context pixelCr) const { }
29
30 private {
31 immutable string _name;
32 }
48 } 33 }