org.gnu.gdk

Class PixbufAnimation


public class PixbufAnimation
extends Boxed

Provides a simple mechanism to load and represent animations. An animation is conceptually a series of frames to be displayed over time. Each frame is the same size. The animation may not be represented as a series of frames internally; for example, it may be stored as a sprite and instructions for moving the sprite around a background. To display an animation you don't need to understand its representation, however; you just ask this class what should be displayed at a given point in time.

Field Summary

Fields inherited from class org.gnu.glib.Boxed

handle

Constructor Summary

PixbufAnimation(String filename)
Construct a new Pixbuf animation by loading it from a file.
PixbufAnimation(Handle handle)
Create a new pixbuf from a handle to a native resource.

Method Summary

protected static int
gdk_pixbuf_animation_get_height(Handle animation)
protected static Handle
gdk_pixbuf_animation_get_iter(Handle animation, long sec, long usec)
protected static Handle
gdk_pixbuf_animation_get_static_image(Handle animation)
protected static int
gdk_pixbuf_animation_get_type()
protected static int
gdk_pixbuf_animation_get_width(Handle animation)
protected static boolean
gdk_pixbuf_animation_is_static_image(Handle animation)
protected static Handle
gdk_pixbuf_animation_new_from_file(String filename, Handle error)
PixbufAnimationIter
getIter(long startSec, long startUsec)
Get an iterator for displaying an animation.
Pixbuf
getStaticImage()
If an animation is really just a plain image (has only one frame), this method returns that image.
int
height()
Return the height of the bounding box of a pixbuf animation.
boolean
isStaticImage()
If this animation was loaded from a that turns out to be a plain unaminated image then this method will return true.
int
width()
Return the width of the bounding box of a pixbuf animation.

Methods inherited from class org.gnu.glib.Boxed

equals, getHandle, hashCode, setHandle

Constructor Details

PixbufAnimation

public PixbufAnimation(String filename)
            throws JGException
Construct a new Pixbuf animation by loading it from a file. The file format is detected automatically. If the files format does not support multi-frame images then an animation with a single frame will be created.

Parameters:
filename - The name of the image file.


PixbufAnimation

public PixbufAnimation(Handle handle)
Create a new pixbuf from a handle to a native resource. For internal use.

Parameters:
handle - The handle to the native resoufce

Method Details

gdk_pixbuf_animation_get_height

protected static final int gdk_pixbuf_animation_get_height(Handle animation)


gdk_pixbuf_animation_get_iter

protected static final Handle gdk_pixbuf_animation_get_iter(Handle animation,
                                                            long sec,
                                                            long usec)


gdk_pixbuf_animation_get_static_image

protected static final Handle gdk_pixbuf_animation_get_static_image(Handle animation)


gdk_pixbuf_animation_get_type

protected static final int gdk_pixbuf_animation_get_type()


gdk_pixbuf_animation_get_width

protected static final int gdk_pixbuf_animation_get_width(Handle animation)


gdk_pixbuf_animation_is_static_image

protected static final boolean gdk_pixbuf_animation_is_static_image(Handle animation)


gdk_pixbuf_animation_new_from_file

protected static final Handle gdk_pixbuf_animation_new_from_file(String filename,
                                                                 Handle error)


getIter

public PixbufAnimationIter getIter(long startSec,
                                   long startUsec)
Get an iterator for displaying an animation. The iterator provides the frames that should be displayed at a given time.

The start time marks the beginning of animation playback. After creating an iterator, you should immediately display the pixbuf returned by the getPixbuf() method of PixbufAnimationIter. Then, you should install a timeout by some mechanism to ensure that you'll update the image after the delay time. Each time the image is updated, you should reinstall the timeout with the new, possibly-changed delay time.

Parameters:
startSec -
startUsec -


getStaticImage

public Pixbuf getStaticImage()
If an animation is really just a plain image (has only one frame), this method returns that image. If the animation is an animation, this method returns a reasonable thing to display as a static unanimated image, which might be the first frame, or something more sophisticated. If an animation hasn't loaded any frames yet, this method will return NULL.


height

public int height()
Return the height of the bounding box of a pixbuf animation.

Returns:
The height


isStaticImage

public boolean isStaticImage()
If this animation was loaded from a that turns out to be a plain unaminated image then this method will return true.


width

public int width()
Return the width of the bounding box of a pixbuf animation.

Returns:
The width