public class ScribbleTool extends AbstractTool
1:
2: package scribble3;
3:
4: import java.awt.*;
5:
6: public class ScribbleTool extends AbstractTool {
7:
8: public ScribbleTool(ScribbleCanvas canvas, String name) {
9: super(canvas, name);
10: }
11:
12: public void startShape(Point p) {
13: curStroke = new Stroke(canvas.getCurColor());
14: curStroke.addPoint(p);
15: }
16:
17: public void addPointToShape(Point p) {
18: if (curStroke != null) {
19: curStroke.addPoint(p);
20: Graphics g = canvas.getGraphics();
21: g.setColor(canvas.getCurColor());
22: g.drawLine(canvas.x, canvas.y, p.x, p.y);
23: }
24: }
25:
26: public void endShape(Point p) {
27: if (curStroke != null) {
28: curStroke.addPoint(p);
29: canvas.addShape(curStroke);
30: curStroke = null;
31: }
32: }
33:
34: protected Stroke curStroke = null;
35:
36: }