org.jfree.util
Class WaitingImageObserver
java.lang.Object
org.jfree.util.WaitingImageObserver
- Cloneable, ImageObserver, Serializable
extends java.lang.Object
implements ImageObserver, Serializable, Cloneable
This image observer blocks until the image is completely loaded. AWT
defers the loading of images until they are painted on a graphic.
While printing reports it is not very nice, not to know whether a image
was completely loaded, so this observer forces the loading of the image
until a final state (either ALLBITS, ABORT or ERROR) is reached.
Object | clone() - cloning may lock down the observer
|
boolean | imageUpdate(Image img, int infoflags, int x, int y, int width, int height) - Callback function used by AWT to inform that more data is available.
|
boolean | isError() - Returns true if there is an error condition, and false otherwise.
|
boolean | isLoadingComplete()
|
void | waitImageLoaded() - The workerthread.
|
WaitingImageObserver
public WaitingImageObserver(Image image)
Creates a new ImageObserver
for the given
Image
.
The observer has to be started by an external thread.
image
- the image to observe (null
not permitted).
clone
public Object clone()
throws CloneNotSupportedException
cloning may lock down the observer
Clones this WaitingImageObserver.
imageUpdate
public boolean imageUpdate(Image img,
int infoflags,
int x,
int y,
int width,
int height)
Callback function used by AWT to inform that more data is available. The
observer waits until either all data is loaded or AWT signals that the
image cannot be loaded.
img
- the image being observed.infoflags
- the bitwise inclusive OR of the following
flags: WIDTH
, HEIGHT
,
PROPERTIES
, SOMEBITS
,
FRAMEBITS
, ALLBITS
,
ERROR
, ABORT
.x
- the x coordinate.y
- the y coordinate.width
- the width.height
- the height.
false
if the infoflags indicate that the
image is completely loaded; true
otherwise.
isError
public boolean isError()
Returns true if there is an error condition, and false otherwise.
waitImageLoaded
public void waitImageLoaded()
The workerthread. Simply draws the image to a BufferedImage's
Graphics-Object and waits for the AWT to load the image.