home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Canvas;
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.Dimension;
- import java.awt.FontMetrics;
- import java.awt.Graphics;
- import java.awt.Image;
-
- class DitherCanvas extends Canvas {
- Image img;
- static String calcString = "Calculating...";
-
- public Image getImage() {
- return this.img;
- }
-
- public void setImage(Image img) {
- this.img = img;
- ((Component)this).repaint();
- }
-
- public Dimension minimumSize() {
- return new Dimension(20, 20);
- }
-
- public Dimension preferredSize() {
- return new Dimension(200, 200);
- }
-
- public void paint(Graphics g) {
- int w = ((Component)this).size().width;
- int h = ((Component)this).size().height;
- if (this.img == null) {
- super.paint(g);
- g.setColor(Color.black);
- FontMetrics fm = g.getFontMetrics();
- int x = (w - fm.stringWidth(calcString)) / 2;
- int y = h / 2;
- g.drawString(calcString, x, y);
- } else {
- g.drawImage(this.img, 0, 0, w, h, this);
- }
-
- }
- }
-