001 /* 002 * Copyright (c) Holger Pfaff - http://pfaff.ws 003 * 004 * This software maybe used for any purpose provided the 005 * above copyright notice is retained. It is supplied as is. 006 * No warranty expressed or implied - Use at your own risk. 007 */ 008 009 import java.awt.*; 010 011 /** 012 * (#)ImageCanvas.java 013 * @author Holger Pfaff 014 * @version 3.2 19-Mar-2004<br><br> 015 * 016 * A widget to hold an image 017 * 018 */ 019 020 public class ImageCanvas extends Awt { 021 022 /** 023 * the actual image itself 024 */ 025 private Image im; 026 027 /** 028 * Construct a new ImageCanvas. 029 * 030 * @param i the image to use 031 */ 032 public ImageCanvas(Image i) { 033 if(i == null) { 034 return; 035 } 036 im = waitForImage(i); 037 setSize(i.getWidth(null), i.getHeight(null)); 038 } 039 040 /** 041 * Actually paint the image 042 * 043 * @param g current Graphics context 044 */ 045 public void paint(Graphics g) { 046 makeBim(); 047 paintBackground(big); 048 big.drawImage(im, 0, 0, this); 049 paintBim(g); 050 } 051 052 /** 053 * Return size needed for this widget 054 */ 055 public Dimension measure() { 056 return new Dimension(im.getWidth(null), im.getHeight(null)); 057 } 058 }