Class WaitingImageObserver

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.io.Serializable, java.lang.Cloneable

    public class WaitingImageObserver
    extends java.lang.Object
    implements java.awt.image.ImageObserver, java.io.Serializable, java.lang.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.
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean error
      A flag that signals an error.
      private java.awt.Image image
      The image.
      private boolean lock
      The lock.
      (package private) static long serialVersionUID
      For serialization.
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Constructor Summary

      Constructors 
      Constructor Description
      WaitingImageObserver​(java.awt.Image image)
      Creates a new ImageObserver for the given Image.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      java.lang.Object clone()
      Deprecated.
      cloning may lock down the observer
      boolean imageUpdate​(java.awt.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()
      Returns true if loading is complete, and false otherwise.
      void waitImageLoaded()
      The workerthread.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • serialVersionUID

        static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • lock

        private boolean lock
        The lock.
      • image

        private java.awt.Image image
        The image.
      • error

        private boolean error
        A flag that signals an error.
    • Constructor Detail

      • WaitingImageObserver

        public WaitingImageObserver​(java.awt.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

      • imageUpdate

        public boolean imageUpdate​(java.awt.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.
        Specified by:
        imageUpdate in interface java.awt.image.ImageObserver
        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.
      • 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.
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Deprecated.
        cloning may lock down the observer
        Clones this WaitingImageObserver.
        Overrides:
        clone in class java.lang.Object
        Returns:
        a clone.
        Throws:
        java.lang.CloneNotSupportedException - this should never happen.
      • isLoadingComplete

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

        public boolean isError()
        Returns true if there is an error condition, and false otherwise.
        Returns:
        A boolean.