| /* Copyright (C) 2000 Free Software Foundation |
| |
| This file is part of libgcj. |
| |
| This software is copyrighted work licensed under the terms of the |
| Libgcj License. Please consult the file "LIBGCJ_LICENSE" for |
| details. */ |
| |
| package java.awt; |
| |
| import java.awt.peer.ComponentPeer; |
| |
| public class Canvas extends Component |
| { |
| transient GraphicsConfiguration graphicsConfiguration; |
| |
| public Canvas() { } |
| |
| public Canvas(GraphicsConfiguration graphicsConfiguration) |
| { |
| this.graphicsConfiguration = graphicsConfiguration; |
| } |
| |
| GraphicsConfiguration getGraphicsConfigurationImpl() |
| { |
| if (graphicsConfiguration != null) |
| return graphicsConfiguration; |
| return super.getGraphicsConfigurationImpl(); |
| } |
| |
| public void addNotify() |
| { |
| if (peer == null) |
| { |
| peer = (ComponentPeer) getToolkit().createCanvas(this); |
| } |
| super.addNotify(); |
| } |
| |
| /** Override this to create components with custom painting. |
| Defaults to filling the component with the background color. */ |
| public void paint(Graphics gfx) |
| { |
| /* This implementation doesn't make much sense since the filling |
| of background color is guaranteed for heavyweight components |
| such as this. But there's no need to worry, since paint() is |
| usually overridden anyway. */ |
| gfx.setColor(getBackground()); |
| Dimension size = getSize(); |
| gfx.fillRect(0, 0, size.width, size.height); |
| } |
| } |