Initial commit of newLISP.
[newlisp.git] / guiserver / java / ArcShape.java
blob978b317fe978735119c574eb272e40f14281cb81
1 //
2 // ArcShape.java
3 // guiserver
4 //
5 // Created by Lutz Mueller on 6/9/07.
6 //
7 //
8 // Copyright (C) 2007 Lutz Mueller
9 //
10 // This program is free software: you can redistribute it and/or modify
11 // it under the terms of the GNU General Public License as published by
12 // the Free Software Foundation, either version 3 of the License, or
13 // (at your option) any later version.
15 // This program is distributed in the hope that it will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 // GNU General Public License for more details.
20 // You should have received a copy of the GNU General Public License
21 // along with this program. If not, see <http://www.gnu.org/licenses/>.
25 import java.lang.*;
26 import java.awt.*;
27 import java.awt.color.*;
28 import java.awt.geom.*;
29 import java.util.*;
31 @SuppressWarnings("unchecked")
32 public class ArcShape extends Shape {
34 int width;
35 int height;
36 int startAngle;
37 int arcAngle;
39 public ArcShape(StringTokenizer tokens)
41 tag = tokens.nextToken();
42 X = Integer.parseInt(tokens.nextToken());
43 Y = Integer.parseInt(tokens.nextToken());
44 width = Integer.parseInt(tokens.nextToken());
45 height = Integer.parseInt(tokens.nextToken());
46 startAngle = Integer.parseInt(tokens.nextToken());
47 arcAngle = Integer.parseInt(tokens.nextToken());
49 if(tokens.hasMoreTokens())
50 paintColor = Shape.getColorParameter(tokens);
51 else
52 paintColor = CanvasWidget.currentCanvas.currentPaint;
54 stroke = CanvasWidget.currentCanvas.currentStroke;
56 CanvasWidget.currentCanvas.drawobjects.add(this);
59 public void drawShape(Graphics2D g2)
61 g2.setStroke(stroke);
62 g2.setPaint(paintColor);
63 //g2.setComposite(currentComposite);
64 g2.drawArc(X, Y, width - 1, height - 1, startAngle, arcAngle);
67 public boolean hasPoint(int x, int y)
69 return(new Rectangle(X, Y, width, height).contains(x, y));
75 // eof //