5 // Created by Lutz Mueller on 6/24/07.
8 // Copyright (C) 2007 Lutz Mueller
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/>.
27 import java
.awt
.color
.*;
28 import java
.awt
.geom
.*;
31 @SuppressWarnings("unchecked")
32 public class ImageShape
extends Shape
{
38 boolean hasDimensions
= false;
41 public ImageShape(StringTokenizer tokens
)
43 tag
= tokens
.nextToken();
44 String path
= Base64Coder
.decodeString(tokens
.nextToken());
45 X
= Integer
.parseInt(tokens
.nextToken());
46 Y
= Integer
.parseInt(tokens
.nextToken());
48 if(tokens
.hasMoreTokens())
50 width
= Integer
.parseInt(tokens
.nextToken());
51 height
= Integer
.parseInt(tokens
.nextToken());
55 image
= guiserver
.getImageFromPath(path
, this.getClass());
57 CanvasWidget
.currentCanvas
.drawobjects
.add(this);
60 MediaTracker mt = new MediaTracker(imageObserver);
61 Image splashImage = Toolkit.getDefaultToolkit().getImage(
62 frame.getClass().getResource("/quids/unilever.jpg"));
63 mt.addImage(splashImage, 0);
65 try { mt.waitForID(0); }
66 catch(InterruptedException ie) {}
68 SplashWindow sw = new SplashWindow(frame, splashImage);
69 try { Thread.sleep(1500); }
70 catch(InterruptedException ie) {}
75 public void drawShape(Graphics2D g2
)
77 //g2.setStroke(stroke);
78 //g2.setPaint(paintColor);
79 //g2.setComposite(currentComposite);
80 //int realW = image.getWidth(imageObserver);
81 //int realH = image.getWidth(imageObserver);
83 g2
.drawImage(image
, X
, Y
, width
, height
, CanvasWidget
.currentCanvas
.component
);
85 g2
.drawImage(image
, X
, Y
, CanvasWidget
.currentCanvas
.component
);
89 public boolean hasPoint(int x
, int y
)
91 return(new Rectangle(X
, Y
, width
, height
).contains(x
, y
));