53 lines
1.4 KiB
Java
53 lines
1.4 KiB
Java
/* 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);
|
|
}
|
|
}
|