Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ClutterTransition: Clutter Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="Clutter Reference Manual">
<link rel="up" href="ch09.html" title="Base classes">
<link rel="prev" href="ClutterAnimatable.html" title="ClutterAnimatable">
<link rel="next" href="ClutterPropertyTransition.html" title="ClutterPropertyTransition">
<meta name="generator" content="GTK-Doc V1.25.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#ClutterTransition.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#ClutterTransition.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
                  <a href="#ClutterTransition.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#ClutterTransition.properties" class="shortcut">Properties</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch09.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="ClutterAnimatable.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="ClutterPropertyTransition.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="ClutterTransition"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="ClutterTransition.top_of_page"></a>ClutterTransition</span></h2>
<p>ClutterTransition — Transition between two values</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="ClutterTransition.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-from" title="clutter_transition_set_from ()">clutter_transition_set_from</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-from-value" title="clutter_transition_set_from_value ()">clutter_transition_set_from_value</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-to" title="clutter_transition_set_to ()">clutter_transition_set_to</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-to-value" title="clutter_transition_set_to_value ()">clutter_transition_set_to_value</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-interval" title="clutter_transition_set_interval ()">clutter_transition_set_interval</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="returnvalue">ClutterInterval</span></a> *
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-get-interval" title="clutter_transition_get_interval ()">clutter_transition_get_interval</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-set-animatable" title="clutter_transition_set_animatable ()">clutter_transition_set_animatable</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="returnvalue">ClutterAnimatable</span></a> *
</td>
<td class="function_name">
<a class="link" href="ClutterTransition.html#clutter-transition-get-animatable" title="clutter_transition_get_animatable ()">clutter_transition_get_animatable</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<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> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<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> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="ClutterTransition.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type">
<a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> *</td>
<td class="property_name"><a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title="The “animatable” property">animatable</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> *</td>
<td class="property_name"><a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property">interval</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gboolean</span></td>
<td class="property_name"><a class="link" href="ClutterTransition.html#ClutterTransition--remove-on-complete" title="The “remove-on-complete” property">remove-on-complete</a></td>
<td class="property_flags">Read / Write</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="ClutterTransition.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="ClutterTransition.html#ClutterTransition-struct" title="ClutterTransition">ClutterTransition</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="ClutterTransition.html#ClutterTransitionClass" title="struct ClutterTransitionClass">ClutterTransitionClass</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="ClutterTransition.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    GObject
    <span class="lineart">╰──</span> <a class="link" href="ClutterTimeline.html" title="ClutterTimeline">ClutterTimeline</a>
        <span class="lineart">╰──</span> ClutterTransition
            <span class="lineart">├──</span> <a class="link" href="ClutterPropertyTransition.html" title="ClutterPropertyTransition">ClutterPropertyTransition</a>
            <span class="lineart">╰──</span> <a class="link" href="ClutterTransitionGroup.html" title="ClutterTransitionGroup">ClutterTransitionGroup</a>
</pre>
</div>
<div class="refsect1">
<a name="ClutterTransition.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
ClutterTransition implements
 <a class="link" href="ClutterScriptable.html" title="ClutterScriptable">ClutterScriptable</a>.</p>
</div>
<div class="refsect1">
<a name="ClutterTransition.description"></a><h2>Description</h2>
<p><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> is an abstract subclass of <a class="link" href="ClutterTimeline.html" title="ClutterTimeline"><span class="type">ClutterTimeline</span></a> that
computes the interpolation between two values, stored by a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>.</p>
</div>
<div class="refsect1">
<a name="ClutterTransition.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="clutter-transition-set-from"></a><h3>clutter_transition_set_from ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_transition_set_from (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
                             <em class="parameter"><code><span class="type">GType</span> value_type</code></em>,
                             <em class="parameter"><code>...</code></em>);</pre>
<p>Sets the initial value of the transition.</p>
<p>This is a convenience function that will either create the
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used by <em class="parameter"><code>transition</code></em>
, or will update it if
the <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> is already set.</p>
<p>If <em class="parameter"><code>transition</code></em>
 already has a <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> set,
then <em class="parameter"><code>value</code></em>
 must hold the same type, or a transformable type,
as the interval's <a class="link" href="clutter-Value-intervals.html#ClutterInterval--value-type" title="The “value-type” property"><span class="type">“value-type”</span></a> property.</p>
<p>This is a convenience function for the C API; language bindings
should use <a class="link" href="ClutterTransition.html#clutter-transition-set-from-value" title="clutter_transition_set_from_value ()"><code class="function">clutter_transition_set_from_value()</code></a> instead.</p>
<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
<a name="clutter-transition-set-from.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>value_type</p></td>
<td class="parameter_description"><p>the type of the value to set</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>...</p></td>
<td class="parameter_description"><p>the initial value</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix13.html#api-index-1.12">1.12</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-from-value"></a><h3>clutter_transition_set_from_value ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_transition_set_from_value (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
                                   <em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);</pre>
<p>Sets the initial value of the transition.</p>
<p>This is a convenience function that will either create the
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used by <em class="parameter"><code>transition</code></em>
, or will update it if
the <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> is already set.</p>
<p>This function will copy the contents of <em class="parameter"><code>value</code></em>
, so it is
safe to call <code class="function">g_value_unset()</code> after it returns.</p>
<p>If <em class="parameter"><code>transition</code></em>
 already has a <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> set,
then <em class="parameter"><code>value</code></em>
 must hold the same type, or a transformable type,
as the interval's <a class="link" href="clutter-Value-intervals.html#ClutterInterval--value-type" title="The “value-type” property"><span class="type">“value-type”</span></a> property.</p>
<p>This function is meant to be used by language bindings.</p>
<p><span class="annotation">[<acronym title="Rename the original symbol's name to SYMBOL."><span class="acronym">rename-to</span></acronym> clutter_transition_set_from]</span></p>
<div class="refsect3">
<a name="clutter-transition-set-from-value.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>value</p></td>
<td class="parameter_description"><p>a <span class="type">GValue</span> with the initial value of the transition</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix13.html#api-index-1.12">1.12</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-to"></a><h3>clutter_transition_set_to ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_transition_set_to (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
                           <em class="parameter"><code><span class="type">GType</span> value_type</code></em>,
                           <em class="parameter"><code>...</code></em>);</pre>
<p>Sets the final value of the transition.</p>
<p>This is a convenience function that will either create the
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used by <em class="parameter"><code>transition</code></em>
, or will update it if
the <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> is already set.</p>
<p>If <em class="parameter"><code>transition</code></em>
 already has a <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> set,
then <em class="parameter"><code>value</code></em>
 must hold the same type, or a transformable type,
as the interval's <a class="link" href="clutter-Value-intervals.html#ClutterInterval--value-type" title="The “value-type” property"><span class="type">“value-type”</span></a> property.</p>
<p>This is a convenience function for the C API; language bindings
should use <a class="link" href="ClutterTransition.html#clutter-transition-set-to-value" title="clutter_transition_set_to_value ()"><code class="function">clutter_transition_set_to_value()</code></a> instead.</p>
<p><span class="annotation">[<acronym title="Exposed in C code, not necessarily available in other languages."><span class="acronym">skip</span></acronym>]</span></p>
<div class="refsect3">
<a name="clutter-transition-set-to.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>value_type</p></td>
<td class="parameter_description"><p>the type of the value to set</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>...</p></td>
<td class="parameter_description"><p>the final value</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix13.html#api-index-1.12">1.12</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-to-value"></a><h3>clutter_transition_set_to_value ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_transition_set_to_value (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
                                 <em class="parameter"><code>const <span class="type">GValue</span> *value</code></em>);</pre>
<p>Sets the final value of the transition.</p>
<p>This is a convenience function that will either create the
<a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used by <em class="parameter"><code>transition</code></em>
, or will update it if
the <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> is already set.</p>
<p>This function will copy the contents of <em class="parameter"><code>value</code></em>
, so it is
safe to call <code class="function">g_value_unset()</code> after it returns.</p>
<p>If <em class="parameter"><code>transition</code></em>
 already has a <a class="link" href="ClutterTransition.html#ClutterTransition--interval" title="The “interval” property"><span class="type">“interval”</span></a> set,
then <em class="parameter"><code>value</code></em>
 must hold the same type, or a transformable type,
as the interval's <a class="link" href="clutter-Value-intervals.html#ClutterInterval--value-type" title="The “value-type” property"><span class="type">“value-type”</span></a> property.</p>
<p>This function is meant to be used by language bindings.</p>
<p><span class="annotation">[<acronym title="Rename the original symbol's name to SYMBOL."><span class="acronym">rename-to</span></acronym> clutter_transition_set_to]</span></p>
<div class="refsect3">
<a name="clutter-transition-set-to-value.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>value</p></td>
<td class="parameter_description"><p>a <span class="type">GValue</span> with the final value of the transition</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix13.html#api-index-1.12">1.12</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-interval"></a><h3>clutter_transition_set_interval ()</h3>
<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>,
                                 <em class="parameter"><code><a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> *interval</code></em>);</pre>
<p>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>
.</p>
<p>The <em class="parameter"><code>transition</code></em>
 will acquire a reference on the <em class="parameter"><code>interval</code></em>
, sinking
the floating flag on it if necessary.</p>
<div class="refsect3">
<a name="clutter-transition-set-interval.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interval</p></td>
<td class="parameter_description"><p> a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-get-interval"></a><h3>clutter_transition_get_interval ()</h3>
<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>
<p>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></p>
<div class="refsect3">
<a name="clutter-transition-get-interval.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-transition-get-interval.returns"></a><h4>Returns</h4>
<p> a <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a>, or <code class="literal">NULL</code>; the returned
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
directly. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-animatable"></a><h3>clutter_transition_set_animatable ()</h3>
<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>,
                                   <em class="parameter"><code><a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> *animatable</code></em>);</pre>
<p>Sets the <a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title="The “animatable” property"><span class="type">“animatable”</span></a> property.</p>
<p>The <em class="parameter"><code>transition</code></em>
 will acquire a reference to the <em class="parameter"><code>animatable</code></em>
 instance,
and will call the <a class="link" href="ClutterTransition.html#ClutterTransitionClass.attached"><code class="function">ClutterTransitionClass.attached()</code></a> virtual function.</p>
<p>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
reference will be released, and the <a class="link" href="ClutterTransition.html#ClutterTransitionClass.detached"><code class="function">ClutterTransitionClass.detached()</code></a>
virtual function will be called.</p>
<div class="refsect3">
<a name="clutter-transition-set-animatable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>animatable</p></td>
<td class="parameter_description"><p> a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-get-animatable"></a><h3>clutter_transition_get_animatable ()</h3>
<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>
<p>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>.</p>
<div class="refsect3">
<a name="clutter-transition-get-animatable.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-transition-get-animatable.returns"></a><h4>Returns</h4>
<p> a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a>, or <code class="literal">NULL</code>; the returned
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
directly. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-set-remove-on-complete"></a><h3>clutter_transition_set_remove_on_complete ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
clutter_transition_set_remove_on_complete
                               (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> remove_complete</code></em>);</pre>
<p>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>
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
<a class="link" href="ClutterTimeline.html#ClutterTimeline-completed" title="The “completed” signal"><span class="type">“completed”</span></a> signal is emitted.</p>
<div class="refsect3">
<a name="clutter-transition-set-remove-on-complete.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>remove_complete</p></td>
<td class="parameter_description"><p>whether to detach <em class="parameter"><code>transition</code></em>
when complete</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="clutter-transition-get-remove-on-complete"></a><h3>clutter_transition_get_remove_on_complete ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
clutter_transition_get_remove_on_complete
                               (<em class="parameter"><code><a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> *transition</code></em>);</pre>
<p>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.</p>
<div class="refsect3">
<a name="clutter-transition-get-remove-on-complete.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>transition</p></td>
<td class="parameter_description"><p>a <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="clutter-transition-get-remove-on-complete.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the <em class="parameter"><code>transition</code></em>
should be detached when complete,
and <code class="literal">FALSE</code> otherwise</p>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
</div>
<div class="refsect1">
<a name="ClutterTransition.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="ClutterTransition-struct"></a><h3>ClutterTransition</h3>
<pre class="programlisting">typedef struct _ClutterTransition ClutterTransition;</pre>
<p>The <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> structure contains private
data and should only be accessed using the provided API.</p>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="ClutterTransitionClass"></a><h3>struct ClutterTransitionClass</h3>
<pre class="programlisting">struct ClutterTransitionClass {
  void (* attached) (ClutterTransition *transition,
                     ClutterAnimatable *animatable);
  void (* detached) (ClutterTransition *transition,
                     ClutterAnimatable *animatable);

  void (* compute_value) (ClutterTransition *transition,
                          ClutterAnimatable *animatable,
                          ClutterInterval   *interval,
                          gdouble            progress);
};
</pre>
<p>The <a class="link" href="ClutterTransition.html#ClutterTransitionClass" title="struct ClutterTransitionClass"><span class="type">ClutterTransitionClass</span></a> structure contains
private data.</p>
<div class="refsect3">
<a name="ClutterTransitionClass.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="ClutterTransitionClass.attached"></a>attached</code></em> ()</p></td>
<td class="struct_member_description"><p>virtual function; called when a transition is attached to
a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="ClutterTransitionClass.detached"></a>detached</code></em> ()</p></td>
<td class="struct_member_description"><p>virtual function; called when a transition is detached from
a <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="ClutterTransitionClass.compute-value"></a>compute_value</code></em> ()</p></td>
<td class="struct_member_description"><p>virtual function; called each frame to compute and apply
the interpolation of the interval</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
</div>
<div class="refsect1">
<a name="ClutterTransition.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="ClutterTransition--animatable"></a><h3>The <code class="literal">“animatable”</code> property</h3>
<pre class="programlisting">  “animatable”               <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> *</pre>
<p>The <a class="link" href="ClutterAnimatable.html" title="ClutterAnimatable"><span class="type">ClutterAnimatable</span></a> instance currently being animated.</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="ClutterTransition--interval"></a><h3>The <code class="literal">“interval”</code> property</h3>
<pre class="programlisting">  “interval”                 <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> *</pre>
<p>The <a class="link" href="clutter-Value-intervals.html#ClutterInterval"><span class="type">ClutterInterval</span></a> used to describe the initial and final states
of the transition.</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="ClutterTransition--remove-on-complete"></a><h3>The <code class="literal">“remove-on-complete”</code> property</h3>
<pre class="programlisting">  “remove-on-complete”       <span class="type">gboolean</span></pre>
<p>Whether the <a class="link" href="ClutterTransition.html" title="ClutterTransition"><span class="type">ClutterTransition</span></a> should be automatically detached
from the <a class="link" href="ClutterTransition.html#ClutterTransition--animatable" title="The “animatable” property"><span class="type">“animatable”</span></a> instance whenever the
<a class="link" href="ClutterTimeline.html#ClutterTimeline-stopped" title="The “stopped” signal"><span class="type">“stopped”</span></a> signal is emitted.</p>
<p>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
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,
and it only detaches the transition if the transition is not
repeating.</p>
<p>Flags: Read / Write</p>
<p>Default value: FALSE</p>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.10">1.10</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25.1</div>
</body>
</html>