quicktime.app.image
Class ImageViewer

java.lang.Object
  |
  +--quicktime.app.image.ImageViewer
All Implemented Interfaces:
Drawable, ImageSettable, Listener, QTDrawable, Transformable

public abstract class ImageViewer
extends java.lang.Object
implements QTDrawable, ImageSettable

This class presents a sequence of Images that a user can view by simply clicking the mouse, or option clicking to view backwards.
It takes an ImageSequencer object as its source images, and uses an ImagePresenter object internally to present the current image.


Field Summary
protected  ImagePresenter imagePresenter
          This is the ImagePresenter object that presents the current image.
 
Constructor Summary
ImageViewer(ImageSequencer images)
          Creates a viewer for a sequence of images.
 
Method Summary
 void addedTo(java.lang.Object interest)
          This method is called by the specified object when the instance of the class that implements this interface is added to the object that is the source of the interest.
 Region getClip()
          This method allows you to get the current clipped Region of the QTDrawable.
 QDRect getDisplayBounds()
          QTCanvas calls this method when it needs to ask the client for its boundary.
 GraphicsMode getGraphicsMode()
          This gets the current GraphicsMode for the compositor.
 QDGraphics getGWorld()
          QTCanvas calls this method to get the destination QDGraphics of its client.
 ImageSequencer getImages()
          Returns the current collection of images that the Viewer is presenting
 java.awt.Dimension getInitialSize()
          Deprecated. since QTJava 4.0
 Matrix getMatrix()
          This will return the client's current display transformations
 QDDimension getOriginalSize()
          This method returns the original size before the transformations specified in the returned matrix are applied.
 void redraw(Region invalidRgn)
          QTCanvas calls this method when the client should redraw itself.
 void removedFrom(java.lang.Object interest)
          This method is called by the specified object when the instance of the class that implements this interface is removed from the object that is the source of the interest.
 void setClip(Region theClip)
          This method allows you to set a QTDrawable's clipping region.
 void setDisplayBounds(QDRect bounds)
          QTCanvas calls this method when it needs to tell the client to adjust its location, width and/or height.
 void setGraphicsMode(GraphicsMode mode)
          This sets the GraphicsMode for the Compositor when it draws its composited contents to its destination QDGraphics (typically the QTCanvas).
 void setGWorld(QDGraphics cgp)
          QTCanvas calls this method to give the client the QDGraphics object it should use to do its drawing.
 void setImageData(EncodedImage imageData, ImageDescription desc)
          This can be used by subclasses to change the Image that the viewer is presenting.
 void setImages(ImageSequencer images)
          Sets a new sequence of images for the viewer to present.
 void setLocation(int x, int y)
          A convenience method to set the position of a QTDrawable object.
 void setMatrix(Matrix matrix)
          This method sets the current matrix of the Transformable object to the new matrix.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

imagePresenter

protected ImagePresenter imagePresenter
This is the ImagePresenter object that presents the current image.
Constructor Detail

ImageViewer

public ImageViewer(ImageSequencer images)
            throws QTException
Creates a viewer for a sequence of images.
Method Detail

getImages

public ImageSequencer getImages()
Returns the current collection of images that the Viewer is presenting

setImageData

public void setImageData(EncodedImage imageData,
                         ImageDescription desc)
                  throws QTException,
                         StdQTException
This can be used by subclasses to change the Image that the viewer is presenting.
Specified by:
setImageData in interface ImageSettable
Following copied from interface: quicktime.app.image.ImageSettable
Parameters:
imageData - the new image data that the object should make its current image.
desc - this is the description that describes the image data

setImages

public void setImages(ImageSequencer images)
               throws QTException
Sets a new sequence of images for the viewer to present. The viewer will always display the currentImage, so if you want to have a particular setting for this a subclass can overide this method, set the currentImage on the incoming images and then call super.setImages(images).

addedTo

public void addedTo(java.lang.Object interest)
This method is called by the specified object when the instance of the class that implements this interface is added to the object that is the source of the interest. In this class it does nothing.
Specified by:
addedTo in interface Listener
Parameters:
interest - the object that is to be the source of interest for the the object that implements this interface.

removedFrom

public void removedFrom(java.lang.Object interest)
This method is called by the specified object when the instance of the class that implements this interface is removed from the object that is the source of the interest. In this class it does nothing.
Specified by:
removedFrom in interface Listener
Parameters:
interest - the object that was the source of interest for the the object that implements this interface.

setGWorld

public void setGWorld(QDGraphics cgp)
               throws QTException
QTCanvas calls this method to give the client the QDGraphics object it should use to do its drawing. If the incoming QDGraphics is the QDGraphics.scratch then the drawable will not be visible and can disable itself. If a client is unable to set the graphics world it should throw an exception.
Specified by:
setGWorld in interface QTDrawable
Parameters:
cgp - a QDGraphics object

getGWorld

public QDGraphics getGWorld()
QTCanvas calls this method to get the destination QDGraphics of its client.
Specified by:
getGWorld in interface QTDrawable
Returns:
a QDGraphics object or null

setDisplayBounds

public void setDisplayBounds(QDRect bounds)
                      throws StdQTException
QTCanvas calls this method when it needs to tell the client to adjust its location, width and/or height. All values are in pixels.
Specified by:
setDisplayBounds in interface Drawable
Parameters:
bounds - the new size and location.

setLocation

public void setLocation(int x,
                        int y)
                 throws QTException
A convenience method to set the position of a QTDrawable object.
Specified by:
setLocation in interface QTDrawable
Parameters:
x - the new x location
y - the new y location

getDisplayBounds

public QDRect getDisplayBounds()
QTCanvas calls this method when it needs to ask the client for its boundary. All values are in pixels.
Specified by:
getDisplayBounds in interface Drawable
Returns:
the boundary of the client

setClip

public void setClip(Region theClip)
             throws QTException
This method allows you to set a QTDrawable's clipping region.
Specified by:
setClip in interface QTDrawable
Parameters:
theClip - a Region that defines the new clipping region.

getClip

public Region getClip()
               throws QTException
This method allows you to get the current clipped Region of the QTDrawable.
Specified by:
getClip in interface QTDrawable
Returns:
the clipping region

getInitialSize

public java.awt.Dimension getInitialSize()
                                  throws QTException
Deprecated. since QTJava 4.0

This method returns the original size before the transformations specified in the returned matrix are applied.
See Also:
()

getOriginalSize

public QDDimension getOriginalSize()
                            throws QTException
This method returns the original size before the transformations specified in the returned matrix are applied.
Specified by:
getOriginalSize in interface Transformable
Returns:
the original size of the ImageViewer's image data

getMatrix

public Matrix getMatrix()
                 throws StdQTException
This will return the client's current display transformations
Specified by:
getMatrix in interface Transformable
Returns:
the display transformations of the client

setMatrix

public void setMatrix(Matrix matrix)
               throws QTException
This method sets the current matrix of the Transformable object to the new matrix.
Specified by:
setMatrix in interface Transformable
Parameters:
matrix - the new matrix

setGraphicsMode

public void setGraphicsMode(GraphicsMode mode)
                     throws QTException
This sets the GraphicsMode for the Compositor when it draws its composited contents to its destination QDGraphics (typically the QTCanvas).
Parameters:
mode - the Graphics mode for the Compositor

getGraphicsMode

public GraphicsMode getGraphicsMode()
This gets the current GraphicsMode for the compositor.
Returns:
current GraphicsMode for the compositor

redraw

public final void redraw(Region invalidRgn)
                  throws QTException
QTCanvas calls this method when the client should redraw itself. If the canvas is able to discern that only a part of the client's drawing area needs to be redrawn - then this area shall be passed in using the invalidRgn. Otherwise this will be null in which case the client should redraw itself entirely.
Specified by:
redraw in interface Drawable
Parameters:
invalidRgn - the invalidRgn that the client should redraw