1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>ClutterTransition</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="Clutter Reference Manual">
8 <link rel="up" href="ch09.html" title="Base classes">
9 <link rel="prev" href="clutter-Value-intervals.html" title="Value intervals">
10 <link rel="next" href="ClutterAnimatable.html" title="ClutterAnimatable">
11 <meta name="generator" content="GTK-Doc V1.18.1 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
17 <td><a accesskey="p" href="clutter-Value-intervals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch09.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">Clutter Reference Manual</th>
21 <td><a accesskey="n" href="ClutterAnimatable.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#ClutterTransition.synopsis" class="shortcut">Top</a>
26 <a href="#ClutterTransition.description" class="shortcut">Description</a>
28 <a href="#ClutterTransition.object-hierarchy" class="shortcut">Object Hierarchy</a>
30 <a href="#ClutterTransition.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
32 <a href="#ClutterTransition.properties" class="shortcut">Properties</a>
35 <div class="refentry">
36 <a name="ClutterTransition"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
39 <h2><span class="refentrytitle"><a name="ClutterTransition.top_of_page"></a>ClutterTransition</span></h2>
40 <p>ClutterTransition — Transition between two values</p>
42 <td valign="top" align="right"></td>
44 <div class="refsynopsisdiv">
45 <a name="ClutterTransition.synopsis"></a><h2>Synopsis</h2>
46 <pre class="synopsis"> <a class="link" href="ClutterTransition.html#ClutterTransition-struct" title="ClutterTransition">ClutterTransition</a>;
47 struct <a class="link" href="ClutterTransition.html#ClutterTransitionClass" title="struct ClutterTransitionClass">ClutterTransitionClass</a>;
48 <span class="returnvalue">void</span> <a class="link" href="ClutterTransition.html#clutter-transition-set-interval" title="clutter_transition_set_interval ()">clutter_transition_set_interval</a> (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
49 <em class="parameter"><code><a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> *interval</code></em>);
50 <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="returnvalue">ClutterInterval</span></a> * <a class="link" href="ClutterTransition.html#clutter-transition-get-interval" title="clutter_transition_get_interval ()">clutter_transition_get_interval</a> (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);
51 <span class="returnvalue">void</span> <a class="link" href="ClutterTransition.html#clutter-transition-set-animatable" title="clutter_transition_set_animatable ()">clutter_transition_set_animatable</a> (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
52 <em class="parameter"><code><a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> *animatable</code></em>);
53 <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="returnvalue">ClutterAnimatable</span></a> * <a class="link" href="ClutterTransition.html#clutter-transition-get-animatable" title="clutter_transition_get_animatable ()">clutter_transition_get_animatable</a> (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);
54 <span class="returnvalue">void</span> <a class="link" href="ClutterTransition.html#clutter-transition-set-remove-on-complete" title="clutter_transition_set_remove_on_complete ()">clutter_transition_set_remove_on_complete</a>
55 (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
56 <em class="parameter"><code><span class="type">gboolean</span> remove_complete</code></em>);
57 <span class="returnvalue">gboolean</span> <a class="link" href="ClutterTransition.html#clutter-transition-get-remove-on-complete" title="clutter_transition_get_remove_on_complete ()">clutter_transition_get_remove_on_complete</a>
58 (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);
61 <div class="refsect1">
62 <a name="ClutterTransition.object-hierarchy"></a><h2>Object Hierarchy</h2>
63 <pre class="synopsis">
65 +----<a class="link" href="ClutterTimeline.html" title="ClutterTimeline">ClutterTimeline</a>
66 +----ClutterTransition
67 +----<a class="link" href="ClutterPropertyTransition.html" title="ClutterPropertyTransition">ClutterPropertyTransition</a>
70 <div class="refsect1">
71 <a name="ClutterTransition.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
73 ClutterTransition implements
74 <a class="link" href="ClutterScriptable.html" title="ClutterScriptable">ClutterScriptable</a>.</p>
76 <div class="refsect1">
77 <a name="ClutterTransition.properties"></a><h2>Properties</h2>
78 <pre class="synopsis">
79 "<a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title='The "animatable" property'>animatable</a>" <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>* : Read / Write
80 "<a class="link" href="ClutterTransition.html#ClutterTransition--interval" title='The "interval" property'>interval</a>" <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>* : Read / Write
81 "<a class="link" href="ClutterTransition.html#ClutterTransition--remove-on-complete" title='The "remove-on-complete" property'>remove-on-complete</a>" <span class="type">gboolean</span> : Read / Write
84 <div class="refsect1">
85 <a name="ClutterTransition.description"></a><h2>Description</h2>
87 <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> is a subclass of <a class="link" href="ClutterTimeline.html" title="ClutterTimeline"><span class="type">ClutterTimeline</span></a> that computes
88 the interpolation between two values, stored by a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>.
91 <div class="refsect1">
92 <a name="ClutterTransition.details"></a><h2>Details</h2>
93 <div class="refsect2">
94 <a name="ClutterTransition-struct"></a><h3>ClutterTransition</h3>
95 <pre class="programlisting">typedef struct _ClutterTransition ClutterTransition;</pre>
97 The <span class="structname">ClutterTransition</span> structure contains private
98 data and should only be accessed using the provided API.
100 <p class="since">Since 1.10</p>
103 <div class="refsect2">
104 <a name="ClutterTransitionClass"></a><h3>struct ClutterTransitionClass</h3>
105 <pre class="programlisting">struct ClutterTransitionClass {
106 void (* attached) (ClutterTransition *transition,
107 ClutterAnimatable *animatable);
108 void (* detached) (ClutterTransition *transition,
109 ClutterAnimatable *animatable);
111 void (* compute_value) (ClutterTransition *transition,
112 ClutterAnimatable *animatable,
113 ClutterInterval *interval,
118 The <span class="structname">ClutterTransitionClass</span> structure contains
121 <div class="variablelist"><table border="0">
122 <col align="left" valign="top">
125 <td><p><span class="term"><em class="structfield"><code><a name="ClutterTransitionClass.attached"></a>attached</code></em> ()</span></p></td>
126 <td>virtual function; called when a transition is attached to
127 a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance</td>
130 <td><p><span class="term"><em class="structfield"><code><a name="ClutterTransitionClass.detached"></a>detached</code></em> ()</span></p></td>
131 <td>virtual function; called when a transition is detached from
132 a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance</td>
135 <td><p><span class="term"><em class="structfield"><code><a name="ClutterTransitionClass.compute-value"></a>compute_value</code></em> ()</span></p></td>
136 <td>virtual function; called each frame to compute and apply
137 the interpolation of the interval</td>
141 <p class="since">Since 1.10</p>
144 <div class="refsect2">
145 <a name="clutter-transition-set-interval"></a><h3>clutter_transition_set_interval ()</h3>
146 <pre class="programlisting"><span class="returnvalue">void</span> clutter_transition_set_interval (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
147 <em class="parameter"><code><a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> *interval</code></em>);</pre>
149 Sets the <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title='The "interval" property'><span class="type">"interval"</span></a> property using <em class="parameter"><code>interval</code></em>.
152 The <em class="parameter"><code>transition</code></em> will acquire a reference on the <em class="parameter"><code>interval</code></em>, sinking
153 the floating flag on it if necessary.
155 <div class="variablelist"><table border="0">
156 <col align="left" valign="top">
159 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
160 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
164 <td><p><span class="term"><em class="parameter"><code>interval</code></em> :</span></p></td>
165 <td>a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>, or <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
170 <p class="since">Since 1.10</p>
173 <div class="refsect2">
174 <a name="clutter-transition-get-interval"></a><h3>clutter_transition_get_interval ()</h3>
175 <pre class="programlisting"><a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="returnvalue">ClutterInterval</span></a> * clutter_transition_get_interval (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);</pre>
177 Retrieves the interval set using <a class="link" href="ClutterTransition.html#clutter-transition-set-interval" title="clutter_transition_set_interval ()"><code class="function">clutter_transition_set_interval()</code></a>
179 <div class="variablelist"><table border="0">
180 <col align="left" valign="top">
183 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
184 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
188 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
189 <td>a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>, or <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>; the returned
190 interval is owned by the <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> and it should not be freed
191 directly. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
196 <p class="since">Since 1.10</p>
199 <div class="refsect2">
200 <a name="clutter-transition-set-animatable"></a><h3>clutter_transition_set_animatable ()</h3>
201 <pre class="programlisting"><span class="returnvalue">void</span> clutter_transition_set_animatable (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
202 <em class="parameter"><code><a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> *animatable</code></em>);</pre>
204 Sets the <a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title='The "animatable" property'><span class="type">"animatable"</span></a> property.
207 The <em class="parameter"><code>transition</code></em> will acquire a reference to the <em class="parameter"><code>animatable</code></em> instance,
208 and will call the <a class="link" href="ClutterTransition.html#ClutterTransitionClass.attached"><code class="function">ClutterTransitionClass.attached()</code></a> virtual function.
211 If an existing <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> is attached to <em class="parameter"><code>transition</code></em>, the
212 reference will be released, and the <a class="link" href="ClutterTransition.html#ClutterTransitionClass.detached"><code class="function">ClutterTransitionClass.detached()</code></a>
213 virtual function will be called.
215 <div class="variablelist"><table border="0">
216 <col align="left" valign="top">
219 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
220 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
224 <td><p><span class="term"><em class="parameter"><code>animatable</code></em> :</span></p></td>
225 <td>a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>, or <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
230 <p class="since">Since 1.10</p>
233 <div class="refsect2">
234 <a name="clutter-transition-get-animatable"></a><h3>clutter_transition_get_animatable ()</h3>
235 <pre class="programlisting"><a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="returnvalue">ClutterAnimatable</span></a> * clutter_transition_get_animatable (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);</pre>
237 Retrieves the <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> set using <a class="link" href="ClutterTransition.html#clutter-transition-set-animatable" title="clutter_transition_set_animatable ()"><code class="function">clutter_transition_set_animatable()</code></a>.
239 <div class="variablelist"><table border="0">
240 <col align="left" valign="top">
243 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
244 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
248 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
249 <td>a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>, or <a href="/home/ebassi/gnome3/install/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL--CAPS"><code class="literal">NULL</code></a>; the returned
250 animatable is owned by the <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>, and it should not be freed
251 directly. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
256 <p class="since">Since 1.10</p>
259 <div class="refsect2">
260 <a name="clutter-transition-set-remove-on-complete"></a><h3>clutter_transition_set_remove_on_complete ()</h3>
261 <pre class="programlisting"><span class="returnvalue">void</span> clutter_transition_set_remove_on_complete
262 (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
263 <em class="parameter"><code><span class="type">gboolean</span> remove_complete</code></em>);</pre>
265 Sets whether <em class="parameter"><code>transition</code></em> should be detached from the <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>
266 set using <a class="link" href="ClutterTransition.html#clutter-transition-set-animatable" title="clutter_transition_set_animatable ()"><code class="function">clutter_transition_set_animatable()</code></a> when the
267 <a class="link" href="ClutterTimeline.html#ClutterTimeline-completed" title='The "completed" signal'><span class="type">"completed"</span></a> signal is emitted.
269 <div class="variablelist"><table border="0">
270 <col align="left" valign="top">
273 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
274 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
278 <td><p><span class="term"><em class="parameter"><code>remove_complete</code></em> :</span></p></td>
279 <td>whether to detach <em class="parameter"><code>transition</code></em> when complete</td>
283 <p class="since">Since 1.10</p>
286 <div class="refsect2">
287 <a name="clutter-transition-get-remove-on-complete"></a><h3>clutter_transition_get_remove_on_complete ()</h3>
288 <pre class="programlisting"><span class="returnvalue">gboolean</span> clutter_transition_get_remove_on_complete
289 (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);</pre>
291 Retrieves the value of the <a class="link" href="ClutterTransition.html#ClutterTransition--remove-on-complete" title='The "remove-on-complete" property'><span class="type">"remove-on-complete"</span></a> property.
293 <div class="variablelist"><table border="0">
294 <col align="left" valign="top">
297 <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
298 <td>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a>
302 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
304 <code class="literal">TRUE</code> if the <em class="parameter"><code>transition</code></em> should be detached when complete,
305 and <code class="literal">FALSE</code> otherwise</td>
309 <p class="since">Since 1.10</p>
312 <div class="refsect1">
313 <a name="ClutterTransition.property-details"></a><h2>Property Details</h2>
314 <div class="refsect2">
315 <a name="ClutterTransition--animatable"></a><h3>The <code class="literal">"animatable"</code> property</h3>
316 <pre class="programlisting"> "animatable" <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>* : Read / Write</pre>
318 The <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance currently being animated.
320 <p class="since">Since 1.10</p>
323 <div class="refsect2">
324 <a name="ClutterTransition--interval"></a><h3>The <code class="literal">"interval"</code> property</h3>
325 <pre class="programlisting"> "interval" <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>* : Read / Write</pre>
327 The <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used to describe the initial and final states
330 <p class="since">Since 1.10</p>
333 <div class="refsect2">
334 <a name="ClutterTransition--remove-on-complete"></a><h3>The <code class="literal">"remove-on-complete"</code> property</h3>
335 <pre class="programlisting"> "remove-on-complete" <span class="type">gboolean</span> : Read / Write</pre>
337 Whether the <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> should be automatically detached
338 from the <a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title='The "animatable" property'><span class="type">"animatable"</span></a> instance whenever the
339 <a class="link" href="ClutterTimeline.html#ClutterTimeline-completed" title='The "completed" signal'><span class="type">"completed"</span></a> signal is emitted.
342 The <a class="link" href="ClutterTransition.html#ClutterTransition--remove-on-complete" title='The "remove-on-complete" property'><span class="type">"remove-on-complete"</span></a> property takes into
343 account the value of the <a class="link" href="ClutterTimeline.html#ClutterTimeline--repeat-count" title='The "repeat-count" property'><span class="type">"repeat-count"</span></a> property,
344 and it only detaches the transition if the transition is not
347 <p>Default value: FALSE</p>
348 <p class="since">Since 1.10</p>
354 Generated by GTK-Doc V1.18.1</div>