52
52
<span class="returnvalue">int</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-width" title="gdk_pixbuf_animation_get_width ()">gdk_pixbuf_animation_get_width</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>);
53
53
<span class="returnvalue">int</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-height" title="gdk_pixbuf_animation_get_height ()">gdk_pixbuf_animation_get_height</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>);
54
54
<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="returnvalue">GdkPixbufAnimationIter</span></a> * <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-iter" title="gdk_pixbuf_animation_get_iter ()">gdk_pixbuf_animation_get_iter</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>,
55
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> *start_time</code></em>);
56
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-is-static-image" title="gdk_pixbuf_animation_is_static_image ()">gdk_pixbuf_animation_is_static_image</a>
55
<em class="parameter"><code>const <span class="type">GTimeVal</span> *start_time</code></em>);
56
<span class="returnvalue">gboolean</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-is-static-image" title="gdk_pixbuf_animation_is_static_image ()">gdk_pixbuf_animation_is_static_image</a>
57
57
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>);
58
58
<a class="link" href="gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> * <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-static-image" title="gdk_pixbuf_animation_get_static_image ()">gdk_pixbuf_animation_get_static_image</a>
59
59
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>);
60
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-advance" title="gdk_pixbuf_animation_iter_advance ()">gdk_pixbuf_animation_iter_advance</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>,
61
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> *current_time</code></em>);
60
<span class="returnvalue">gboolean</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-advance" title="gdk_pixbuf_animation_iter_advance ()">gdk_pixbuf_animation_iter_advance</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>,
61
<em class="parameter"><code>const <span class="type">GTimeVal</span> *current_time</code></em>);
62
62
<span class="returnvalue">int</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-get-delay-time" title="gdk_pixbuf_animation_iter_get_delay_time ()">gdk_pixbuf_animation_iter_get_delay_time</a>
63
63
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>);
64
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-on-currently-loading-frame" title="gdk_pixbuf_animation_iter_on_currently_loading_frame ()">gdk_pixbuf_animation_iter_on_currently_loading_frame</a>
64
<span class="returnvalue">gboolean</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-on-currently-loading-frame" title="gdk_pixbuf_animation_iter_on_currently_loading_frame ()">gdk_pixbuf_animation_iter_on_currently_loading_frame</a>
65
65
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>);
66
66
<a class="link" href="gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> * <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-get-pixbuf" title="gdk_pixbuf_animation_iter_get_pixbuf ()">gdk_pixbuf_animation_iter_get_pixbuf</a>
67
67
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>);
69
69
<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim-struct" title="GdkPixbufSimpleAnim">GdkPixbufSimpleAnim</a>;
70
<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="returnvalue">GdkPixbufSimpleAnim</span></a> * <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-new" title="gdk_pixbuf_simple_anim_new ()">gdk_pixbuf_simple_anim_new</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
71
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>,
72
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> rate</code></em>);
70
<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="returnvalue">GdkPixbufSimpleAnim</span></a> * <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-new" title="gdk_pixbuf_simple_anim_new ()">gdk_pixbuf_simple_anim_new</a> (<em class="parameter"><code><span class="type">gint</span> width</code></em>,
71
<em class="parameter"><code><span class="type">gint</span> height</code></em>,
72
<em class="parameter"><code><span class="type">gfloat</span> rate</code></em>);
73
73
<span class="returnvalue">void</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-add-frame" title="gdk_pixbuf_simple_anim_add_frame ()">gdk_pixbuf_simple_anim_add_frame</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="type">GdkPixbufSimpleAnim</span></a> *animation</code></em>,
74
74
<em class="parameter"><code><a class="link" href="gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> *pixbuf</code></em>);
75
75
<span class="returnvalue">void</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-set-loop" title="gdk_pixbuf_simple_anim_set_loop ()">gdk_pixbuf_simple_anim_set_loop</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="type">GdkPixbufSimpleAnim</span></a> *animation</code></em>,
76
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> loop</code></em>);
77
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-get-loop" title="gdk_pixbuf_simple_anim_get_loop ()">gdk_pixbuf_simple_anim_get_loop</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="type">GdkPixbufSimpleAnim</span></a> *animation</code></em>);
76
<em class="parameter"><code><span class="type">gboolean</span> loop</code></em>);
77
<span class="returnvalue">gboolean</span> <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-simple-anim-get-loop" title="gdk_pixbuf_simple_anim_get_loop ()">gdk_pixbuf_simple_anim_get_loop</a> (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="type">GdkPixbufSimpleAnim</span></a> *animation</code></em>);
80
80
<div class="refsect1">
81
81
<a name="gdk-pixbuf-Animations.object-hierarchy"></a><h2>Object Hierarchy</h2>
82
82
<pre class="synopsis">
83
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
84
84
+----GdkPixbufAnimation
85
85
+----<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim">GdkPixbufSimpleAnim</a>
87
87
<pre class="synopsis">
88
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
89
89
+----GdkPixbufAnimationIter
91
91
<pre class="synopsis">
92
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
93
93
+----<a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation">GdkPixbufAnimation</a>
94
94
+----GdkPixbufSimpleAnim
252
252
<div class="refsect2">
253
253
<a name="gdk-pixbuf-animation-get-iter"></a><h3>gdk_pixbuf_animation_get_iter ()</h3>
254
254
<pre class="programlisting"><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="returnvalue">GdkPixbufAnimationIter</span></a> * gdk_pixbuf_animation_get_iter (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>,
255
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> *start_time</code></em>);</pre>
255
<em class="parameter"><code>const <span class="type">GTimeVal</span> *start_time</code></em>);</pre>
257
257
Get an iterator for displaying an animation. The iterator provides
258
258
the frames that should be displayed at a given time.
259
It should be freed after use with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
259
It should be freed after use with <code class="function">g_object_unref()</code>.
262
<em class="parameter"><code>start_time</code></em> would normally come from <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-get-current-time"><code class="function">g_get_current_time()</code></a>, and
262
<em class="parameter"><code>start_time</code></em> would normally come from <code class="function">g_get_current_time()</code>, and
263
263
marks the beginning of animation playback. After creating an
264
264
iterator, you should immediately display the pixbuf returned by
265
265
<a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-get-pixbuf" title="gdk_pixbuf_animation_iter_get_pixbuf ()"><code class="function">gdk_pixbuf_animation_iter_get_pixbuf()</code></a>. Then, you should install a
266
timeout (with <a href="http://library.gnome.org/devel/glib/unstable/glib-The-Main-Event-Loop.html#g-timeout-add"><code class="function">g_timeout_add()</code></a>) or by some other mechanism ensure
266
timeout (with <code class="function">g_timeout_add()</code>) or by some other mechanism ensure
267
267
that you'll update the image after
268
268
<a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-get-delay-time" title="gdk_pixbuf_animation_iter_get_delay_time ()"><code class="function">gdk_pixbuf_animation_iter_get_delay_time()</code></a> milliseconds. Each time
269
269
the image is updated, you should reinstall the timeout with the new,
270
270
possibly-changed delay time.
273
As a shortcut, if <em class="parameter"><code>start_time</code></em> is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, the result of
274
<a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-get-current-time"><code class="function">g_get_current_time()</code></a> will be used automatically.
273
As a shortcut, if <em class="parameter"><code>start_time</code></em> is <a href="/home/mclasen/gnome/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>, the result of
274
<code class="function">g_get_current_time()</code> will be used automatically.
277
277
To update the image (i.e. possibly change the result of
283
283
after the delay time, you should also update it whenever you
284
284
receive the area_updated signal and
285
285
<a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-on-currently-loading-frame" title="gdk_pixbuf_animation_iter_on_currently_loading_frame ()"><code class="function">gdk_pixbuf_animation_iter_on_currently_loading_frame()</code></a> returns
286
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. In this case, the frame currently being fed into the loader
286
<code class="literal">TRUE</code>. In this case, the frame currently being fed into the loader
287
287
has received new data, so needs to be refreshed. The delay time for
288
288
a frame may also be modified after an area_updated signal, for
289
289
example if the delay time for a frame is encoded in the data after
317
317
<div class="refsect2">
318
318
<a name="gdk-pixbuf-animation-is-static-image"></a><h3>gdk_pixbuf_animation_is_static_image ()</h3>
319
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gdk_pixbuf_animation_is_static_image
319
<pre class="programlisting"><span class="returnvalue">gboolean</span> gdk_pixbuf_animation_is_static_image
320
320
(<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimation"><span class="type">GdkPixbufAnimation</span></a> *animation</code></em>);</pre>
322
322
If you load a file with <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-new-from-file" title="gdk_pixbuf_animation_new_from_file"><code class="function">gdk_pixbuf_animation_new_from_file()</code></a> and it turns
323
323
out to be a plain, unanimated image, then this function will return
324
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. Use <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-static-image" title="gdk_pixbuf_animation_get_static_image ()"><code class="function">gdk_pixbuf_animation_get_static_image()</code></a> to retrieve
324
<code class="literal">TRUE</code>. Use <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-static-image" title="gdk_pixbuf_animation_get_static_image ()"><code class="function">gdk_pixbuf_animation_get_static_image()</code></a> to retrieve
327
327
<div class="variablelist"><table border="0">
373
373
<div class="refsect2">
374
374
<a name="gdk-pixbuf-animation-iter-advance"></a><h3>gdk_pixbuf_animation_iter_advance ()</h3>
375
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gdk_pixbuf_animation_iter_advance (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>,
376
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#GTimeVal"><span class="type">GTimeVal</span></a> *current_time</code></em>);</pre>
375
<pre class="programlisting"><span class="returnvalue">gboolean</span> gdk_pixbuf_animation_iter_advance (<em class="parameter"><code><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufAnimationIter"><span class="type">GdkPixbufAnimationIter</span></a> *iter</code></em>,
376
<em class="parameter"><code>const <span class="type">GTimeVal</span> *current_time</code></em>);</pre>
378
378
Possibly advances an animation to a new frame. Chooses the frame based
379
379
on the start time passed to <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-iter" title="gdk_pixbuf_animation_get_iter ()"><code class="function">gdk_pixbuf_animation_get_iter()</code></a>.
382
<em class="parameter"><code>current_time</code></em> would normally come from <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-get-current-time"><code class="function">g_get_current_time()</code></a>, and
382
<em class="parameter"><code>current_time</code></em> would normally come from <code class="function">g_get_current_time()</code>, and
383
383
must be greater than or equal to the time passed to
384
384
<a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-get-iter" title="gdk_pixbuf_animation_get_iter ()"><code class="function">gdk_pixbuf_animation_get_iter()</code></a>, and must increase or remain
385
385
unchanged each time <a class="link" href="gdk-pixbuf-Animations.html#gdk-pixbuf-animation-iter-get-pixbuf" title="gdk_pixbuf_animation_iter_get_pixbuf ()"><code class="function">gdk_pixbuf_animation_iter_get_pixbuf()</code></a> is
390
As a shortcut, pass <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> for the current time and <a href="http://library.gnome.org/devel/glib/unstable/glib-Date-and-Time-Functions.html#g-get-current-time"><code class="function">g_get_current_time()</code></a>
390
As a shortcut, pass <a href="/home/mclasen/gnome/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a> for the current time and <code class="function">g_get_current_time()</code>
391
391
will be invoked on your behalf. So you only need to explicitly pass
392
392
<em class="parameter"><code>current_time</code></em> if you're doing something odd like playing the animation
396
If this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, there's no need to update the animation
396
If this function returns <code class="literal">FALSE</code>, there's no need to update the animation
397
397
display, assuming the display had been rendered prior to advancing;
398
if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, you need to call <code class="function">gdk_animation_iter_get_pixbuf()</code> and update the
398
if <code class="literal">TRUE</code>, you need to call <code class="function">gdk_animation_iter_get_pixbuf()</code> and update the
399
399
display with the new pixbuf.
401
401
<div class="variablelist"><table border="0">
516
516
<div class="refsect2">
517
517
<a name="gdk-pixbuf-simple-anim-new"></a><h3>gdk_pixbuf_simple_anim_new ()</h3>
518
<pre class="programlisting"><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="returnvalue">GdkPixbufSimpleAnim</span></a> * gdk_pixbuf_simple_anim_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
519
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>,
520
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> rate</code></em>);</pre>
518
<pre class="programlisting"><a class="link" href="gdk-pixbuf-Animations.html#GdkPixbufSimpleAnim"><span class="returnvalue">GdkPixbufSimpleAnim</span></a> * gdk_pixbuf_simple_anim_new (<em class="parameter"><code><span class="type">gint</span> width</code></em>,
519
<em class="parameter"><code><span class="type">gint</span> height</code></em>,
520
<em class="parameter"><code><span class="type">gfloat</span> rate</code></em>);</pre>
522
522
Creates a new, empty animation.