gdkPixbufAnimationGetIter: gdkPixbufAnimationGetIter

Description Usage Arguments Details Value Author(s)

View source: R/gdkFuncs.R

Description

Get an iterator for displaying an animation. The iterator provides the frames that should be displayed at a given time.

Usage

1
gdkPixbufAnimationGetIter(object, start.time)

Arguments

object

a GdkPixbufAnimation

start.time

time when the animation starts playing

Details

start.time would normally come from gGetCurrentTime(), and marks the beginning of animation playback. After creating an iterator, you should immediately display the pixbuf returned by gdkPixbufAnimationIterGetPixbuf. Then, you should install a timeout (with gTimeoutAdd) or by some other mechanism ensure that you'll update the image after gdkPixbufAnimationIterGetDelayTime milliseconds. Each time the image is updated, you should reinstall the timeout with the new, possibly-changed delay time.

As a shortcut, if start.time is NULL, the result of gGetCurrentTime() will be used automatically.

To update the image (i.e. possibly change the result of gdkPixbufAnimationIterGetPixbuf to a new frame of the animation), call gdkPixbufAnimationIterAdvance.

If you're using GdkPixbufLoader, in addition to updating the image after the delay time, you should also update it whenever you receive the area_updated signal and gdkPixbufAnimationIterOnCurrentlyLoadingFrame returns TRUE. In this case, the frame currently being fed into the loader has received new data, so needs to be refreshed. The delay time for a frame may also be modified after an area_updated signal, for example if the delay time for a frame is encoded in the data after the frame itself. So your timeout should be reinstalled after any area_updated signal.

A delay time of -1 is possible, indicating "infinite."

Value

[GdkPixbufAnimationIter] an iterator to move over the animation

Author(s)

Derived by RGtkGen from GTK+ documentation


RGtk2 documentation built on Oct. 14, 2021, 5:08 p.m.