org.jfree.util

Class WaitingImageObserver

public class WaitingImageObserver extends 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.

Author: Thomas Morgner

Constructor Summary
WaitingImageObserver(Image image)
Creates a new ImageObserver for the given Image.
Method Summary
Objectclone()
Clones this WaitingImageObserver.
booleanimageUpdate(Image img, int infoflags, int x, int y, int width, int height)
Callback function used by AWT to inform that more data is available.
booleanisError()
Returns true if there is an error condition, and false otherwise.
booleanisLoadingComplete()
Returns true if loading is complete, and false otherwise.
voidwaitImageLoaded()
The workerthread.

Constructor Detail

WaitingImageObserver

public WaitingImageObserver(Image image)
Creates a new ImageObserver for the given Image. The observer has to be started by an external thread.

Parameters: image the image to observe (null not permitted).

Method Detail

clone

public Object clone()

Deprecated: cloning may lock down the observer

Clones this WaitingImageObserver.

Returns: a clone.

Throws: CloneNotSupportedException this should never happen.

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.

Parameters: 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.

Returns: 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.

Returns: A boolean.

isLoadingComplete

public boolean isLoadingComplete()
Returns true if loading is complete, and false otherwise.

Returns: A boolean.

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.