
-<function name="clutter_texture_set_load_data_async">
+<function name="clutter_media_set_audio_volume">
 <description>
-Sets whether @texture should use a worker thread to load the data
-from disk asynchronously. Setting @load_async to %TRUE will make
-clutter_texture_set_from_file() block until the #ClutterTexture has
-determined the width and height of the image data.
-
-See the #ClutterTexture:load-async property documentation, and
-clutter_texture_set_load_async().
+Sets the playback volume of @media to @volume.
 
 Since: 1.0
 
+Deprecated: 1.12
+
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
+<parameter name="media">
+<parameter_description> a #ClutterMedia
 </parameter_description>
 </parameter>
-<parameter name="load_async">
-<parameter_description> %TRUE if the texture should asynchronously load data
-from a filename
+<parameter name="volume">
+<parameter_description> the volume as a double between 0.0 and 1.0
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_layout_manager_child_set_property">
+<function name="clutter_media_set_filename">
 <description>
-Sets a property on the #ClutterLayoutMeta created by @manager and
-attached to a child of @container
+Sets the source of @media using a file path.
 
-Since: 1.2
+Since: 0.2
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="container">
-<parameter_description> a #ClutterContainer using @manager
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @container
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of the property to set
+<parameter name="media">
+<parameter_description> a #ClutterMedia
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue with the value of the property to set
+<parameter name="filename">
+<parameter_description> A filename
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_win32_get_stage_window">
+<function name="clutter_media_set_playing">
 <description>
-Gets the stage's window handle
+Starts or stops playing of @media. 
+ 
+The implementation might be asynchronous, so the way to know whether
+the actual playing state of the @media is to use the #GObject::notify
+signal on the #ClutterMedia:playing property and then retrieve the
+current state with clutter_media_get_playing(). ClutterGstVideoTexture
+in clutter-gst is an example of such an asynchronous implementation.
 
-Since: 0.8
+Since: 0.2
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="media">
+<parameter_description> a #ClutterMedia
+</parameter_description>
+</parameter>
+<parameter name="playing">
+<parameter_description> %TRUE to start playing
 </parameter_description>
 </parameter>
 </parameters>
-<return> An HWND for the stage window.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_lower">
+<function name="clutter_media_set_progress">
 <description>
-Puts @self below @above.
+Sets the playback progress of @media. The @progress is
+a normalized value between 0.0 (begin) and 1.0 (end).
 
-Both actors must have the same parent, and the parent must implement
-the #ClutterContainer interface.
+Since: 1.0
 
-This function is the equivalent of clutter_container_lower_child().
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="media">
+<parameter_description> a #ClutterMedia
 </parameter_description>
 </parameter>
-<parameter name="above">
-<parameter_description> A #ClutterActor to lower below
+<parameter name="progress">
+<parameter_description> the progress of the playback, between 0.0 and 1.0
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_layout">
+<function name="clutter_media_set_subtitle_font_name">
 <description>
-Retrieves the current #PangoLayout used by a #ClutterText actor.
+Sets the font used by the subtitle renderer. The @font_name string must be
+either %NULL, which means that the default font name of the underlying
+implementation will be used; or must follow the grammar recognized by
+pango_font_description_from_string() like:
 
-Since: 1.0
+|[
+clutter_media_set_subtitle_font_name (media, &quot;Sans 24pt&quot;);
+]|
+
+Since: 1.2
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="media">
+<parameter_description> a #ClutterMedia
+</parameter_description>
+</parameter>
+<parameter name="font_name">
+<parameter_description> a font name, or %NULL to set the default font name
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #PangoLayout. The returned object is owned by
-the #ClutterText actor and should not be modified or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_x11_remove_filter">
+<function name="clutter_media_set_subtitle_uri">
 <description>
-Removes the given filter function.
+Sets the location of a subtitle file to display while playing @media.
 
-Since: 0.6
+Since: 1.2
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> a filter function
+<parameter name="media">
+<parameter_description> a #ClutterMedia
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> user data to be passed to the filter function, or %NULL
+<parameter name="uri">
+<parameter_description> the URI of a subtitle file
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_allocate">
+<function name="clutter_media_set_uri">
 <description>
-Called by the parent of an actor to assign the actor its size.
-Should never be called by applications (except when implementing
-a container or layout manager).
+Sets the URI of @media to @uri.
 
-Actors can know from their allocation box whether they have moved
-with respect to their parent actor. The @flags parameter describes
-additional information about the allocation, for instance whether
-the parent has moved with respect to the stage, for example because
-a grandparent's origin has moved.
+Since: 0.2
 
-Since: 0.8
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="box">
-<parameter_description> new allocation of the actor, in parent-relative coordinates
+<parameter name="media">
+<parameter_description> a #ClutterMedia
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags that control the allocation
+<parameter name="uri">
+<parameter_description> the URI of the media stream
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_array_get_length">
+<function name="clutter_micro_version">
 <description>
-Retrieves the length of a #JsonArray
+The micro component of the Clutter library version, e.g. 3 if the version
+is 1.2.3
+
+This value can be used for run-time version checks
 
+For a compile-time check, use %CLUTTER_MICRO_VERSION
+
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
-</parameter_description>
-</parameter>
 </parameters>
-<return> the length of the array
-</return>
+<return></return>
 </function>
 
-<function name="clutter_score_stop">
+<function name="clutter_minor_version">
 <description>
-Stops and rewinds a playing #ClutterScore instance.
+The minor component of the Clutter library version, e.g. 2 if the version
+is 1.2.3
 
-Since: 0.6
+This value can be used for run-time version checks
+
+For a compile-time check, use %CLUTTER_MINOR_VERSION
+
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> A #ClutterScore
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_selection_bound">
+<function name="clutter_model_append">
 <description>
-Retrieves the other end of the selection of a #ClutterText actor,
-in characters from the current cursor position.
+Creates and appends a new row to the #ClutterModel, setting the
+row values upon creation. For example, to append a new row where
+column 0 is type %G_TYPE_INT and column 1 is of type %G_TYPE_STRING:
 
-Since: 1.0
+&lt;informalexample&gt;&lt;programlisting&gt;
+ClutterModel *model;
+model = clutter_model_default_new (2,
+G_TYPE_INT,    &quot;Score&quot;,
+G_TYPE_STRING, &quot;Team&quot;);
+clutter_model_append (model, 0, 42, 1, &quot;Team #1&quot;, -1);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> pairs of column number and value, terminated with -1
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the other end of the selection
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_x11_get_stage_from_window">
+<function name="clutter_model_appendv">
 <description>
-Gets the stage for a particular X window.  
+Creates and appends a new row to the #ClutterModel, setting the row
+values for the given @columns upon creation.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="win">
-<parameter_description> an X Window ID
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="n_columns">
+<parameter_description> the number of columns and values
+</parameter_description>
+</parameter>
+<parameter name="columns">
+<parameter_description> a vector with the columns to set
+</parameter_description>
+</parameter>
+<parameter name="values">
+<parameter_description> a vector with the values
 </parameter_description>
 </parameter>
 </parameters>
-<return> The stage or NULL if a stage does not exist for the window.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_timeline_get_elapsed_time">
+<function name="clutter_model_filter_iter">
 <description>
-Request the current time position of the timeline.
+Checks whether the row pointer by @iter should be filtered or not using
+the filtering function set on @model.
 
+This function should be used only by subclasses of #ClutterModel.
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="iter">
+<parameter_description> the row to filter
 </parameter_description>
 </parameter>
 </parameters>
-<return> current elapsed time in milliseconds.
+<return> %TRUE if the row should be displayed,
+%FALSE otherwise
+
 </return>
 </function>
 
-<function name="clutter_backend_get_font_name">
+<function name="clutter_model_filter_row">
 <description>
-Retrieves the default font name as set by
-clutter_backend_set_font_name().
+Checks whether @row should be filtered or not using the
+filtering function set on @model.
 
-Since: 1.0
+This function should be used only by subclasses of #ClutterModel.
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> the row to filter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the font name for the backend. The returned string is
-owned by the #ClutterBackend and should never be modified or freed
+<return> %TRUE if the row should be displayed,
+%FALSE otherwise
 
 </return>
 </function>
 
-<function name="clutter_x11_trap_x_errors">
+<function name="clutter_model_foreach">
 <description>
-Traps every X error until clutter_x11_untrap_x_errors() is called.
+Calls @func for each row in the model. 
 
 Since: 0.6
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #ClutterModelForeachFunc
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @func
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_generator_set_root">
+<function name="clutter_model_get_column_name">
 <description>
-Sets @node as the root of the JSON data stream to be serialized by
-the #JsonGenerator.
+Retrieves the name of the @column
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="generator">
-<parameter_description> a #JsonGenerator
+<parameter name="model">
+<parameter_description> #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="column">
+<parameter_description> the column number
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the column. The model holds the returned
+string, and it should not be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_text_position_to_coords">
+<function name="clutter_model_get_column_type">
 <description>
-Retrieves the coordinates of the given @position.
+Retrieves the type of the @column.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="position">
-<parameter_description> position in characters
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> return location for the X coordinate, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> return location for the Y coordinate, or %NULL
+<parameter name="model">
+<parameter_description> #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="line_height">
-<parameter_description> return location for the line height, or %NULL
+<parameter name="column">
+<parameter_description> the column number
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the conversion was successful
+<return> the type of the column.
 
 </return>
 </function>
 
-<function name="clutter_text_get_line_alignment">
+<function name="clutter_model_get_filter_set">
 <description>
-Retrieves the alignment of a #ClutterText, as set by
-clutter_text_set_line_alignment().
+Returns whether the @model has a filter in place, set
+using clutter_model_set_filter()
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #PangoAlignment
+<return> %TRUE if a filter is set
 
 </return>
 </function>
 
-<function name="clutter_actor_animatev">
+<function name="clutter_model_get_first_iter">
 <description>
-Animates the given list of properties of @actor between the current
-value for each property and a new final value. The animation has a
-definite duration and a speed given by the @mode.
-
-This is the vector-based variant of clutter_actor_animate(), useful
-for language bindings.
-
-&lt;warning&gt;Unlike clutter_actor_animate(), this function will not
-allow you to specify &quot;signal::&quot; names and callbacks.&lt;/warning&gt;
+Retrieves a #ClutterModelIter representing the first non-filtered
+row in @model.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> an animation mode logical id
-</parameter_description>
-</parameter>
-<parameter name="duration">
-<parameter_description> duration of the animation, in milliseconds
-</parameter_description>
-</parameter>
-<parameter name="n_properties">
-<parameter_description> number of property names and values
-</parameter_description>
-</parameter>
-<parameter name="properties">
-<parameter_description> a vector
-containing the property names to set
-</parameter_description>
-</parameter>
-<parameter name="values">
-<parameter_description> a vector containing the
-property values to set
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterAnimation object. The object is
-owned by the #ClutterActor and should not be unreferenced with
-g_object_unref()
+<return> A new #ClutterModelIter.
+Call g_object_unref() when done using it
 
 </return>
 </function>
 
-<function name="clutter_behaviour_rotate_set_direction">
+<function name="clutter_model_get_iter_at_row">
 <description>
-Sets the rotation direction used by the rotate behaviour.
+Retrieves a #ClutterModelIter representing the row at the given index.
 
-Since: 0.4
+If a filter function has been set using clutter_model_set_filter()
+then the @model implementation will return the first non filtered
+row.
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="direction">
-<parameter_description> the rotation direction
+<parameter name="row">
+<parameter_description> position of the row to retrieve
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A new #ClutterModelIter, or %NULL if @row was
+out of bounds. When done using the iterator object, call g_object_unref()
+to deallocate its resources
+
+</return>
 </function>
 
-<function name="clutter_stage_get_title">
+<function name="clutter_model_get_last_iter">
 <description>
-Gets the stage title.
+Retrieves a #ClutterModelIter representing the last non-filtered
+row in @model.
 
-Since: 0.4
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> pointer to the title string for the stage. The
-returned string is owned by the actor and should not
-be modified or freed.
+<return> A new #ClutterModelIter.
+Call g_object_unref() when done using it
 
 </return>
 </function>
 
-<function name="json_object_has_member">
+<function name="clutter_model_get_n_columns">
 <description>
-Checks whether @object has a member named @member_name.
+Retrieves the number of columns inside @model.
 
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="member_name">
-<parameter_description> the name of a JSON object member
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the JSON object has the requested member
+<return> the number of columns
+
 </return>
 </function>
 
-<function name="clutter_timeline_has_marker">
+<function name="clutter_model_get_n_rows">
 <description>
-Checks whether @timeline has a marker set with the given name.
+Retrieves the number of rows inside @model, eventually taking
+into account any filtering function set using clutter_model_set_filter().
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="marker_name">
-<parameter_description> the name of the marker
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the marker was found
+<return> The length of the @model. If there is a filter set, then
+the length of the filtered @model is returned.
 
 </return>
 </function>
 
-<function name="clutter_texture_get_load_async">
+<function name="clutter_model_get_sorting_column">
 <description>
-Retrieves the value set using clutter_texture_get_load_async()
+Retrieves the number of column used for sorting the @model.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterTexture should load the data from
-disk asynchronously
+<return> a column number, or -1 if the model is not sorted
 
 </return>
 </function>
 
-<function name="json_array_add_int_element">
+<function name="clutter_model_insert">
 <description>
-Conveniently adds an integer @value into @array
+Inserts a new row to the #ClutterModel at @row, setting the row
+values upon creation. For example, to insert a new row at index 100,
+where column 0 is type %G_TYPE_INT and column 1 is of type
+%G_TYPE_STRING:
 
-See also: json_array_add_element(), json_node_set_int()
+&lt;informalexample&gt;&lt;programlisting&gt;
+ClutterModel *model;
+model = clutter_model_default_new (2,
+G_TYPE_INT,    &quot;Score&quot;,
+G_TYPE_STRING, &quot;Team&quot;);
+clutter_model_insert (model, 3, 0, 42, 1, &quot;Team #1&quot;, -1);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an integer value
+<parameter name="row">
+<parameter_description> the position to insert the new row
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> pairs of column number and value, terminated with -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animator_get_keys">
+<function name="clutter_model_insert_value">
 <description>
-Returns a list of pointers to opaque structures with accessor functions
-that describe the keys added to an animator.
+Sets the data in the cell specified by @iter and @column. The type of 
+@value must be convertable to the type of the column. If the row does
+not exist then it is created.
 
-Since: 1.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator instance
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject to search for, or %NULL for all objects
+<parameter name="row">
+<parameter_description> position of the row to modify
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> a specific property name to query for,
-or %NULL for all properties
+<parameter name="column">
+<parameter_description> column to modify
 </parameter_description>
 </parameter>
-<parameter name="progress">
-<parameter_description> a specific progress to search for, or a negative value for all
-progresses
+<parameter name="value">
+<parameter_description> new value for the cell
 </parameter_description>
 </parameter>
 </parameters>
-<return> a
-list of #ClutterAnimatorKey&lt;!-- --&gt;s; the contents of the list are owned
-by the #ClutterAnimator, but you should free the returned list when done,
-using g_list_free()
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_color_to_hls">
+<function name="clutter_model_insertv">
 <description>
-Converts @color to the HLS format.
+Inserts data at @row into the #ClutterModel, setting the row
+values for the given @columns upon creation.
 
-The @hue value is in the 0 .. 360 range. The @luminance and
-@saturation values are in the 0 .. 1 range.
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="hue">
-<parameter_description> return location for the hue value or %NULL
+<parameter name="row">
+<parameter_description> row index
 </parameter_description>
 </parameter>
-<parameter name="luminance">
-<parameter_description> return location for the luminance value or %NULL
+<parameter name="n_columns">
+<parameter_description> the number of columns and values to set
 </parameter_description>
 </parameter>
-<parameter name="saturation">
-<parameter_description> return location for the saturation value or %NULL
+<parameter name="columns">
+<parameter_description> a vector containing the columns to set
+</parameter_description>
+</parameter>
+<parameter name="values">
+<parameter_description> a vector containing the values for the cells
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_insert_text">
+<function name="clutter_model_iter_copy">
 <description>
-Inserts @text into a #ClutterActor at the given position.
-
-If @position is a negative number, the text will be appended
-at the end of the current contents of the #ClutterText.
-
-The position is expressed in characters, not in bytes.
+Copies the passed iterator.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="text">
-<parameter_description> the text to be inserted
-</parameter_description>
-</parameter>
-<parameter name="position">
-<parameter_description> the position of the insertion, or -1
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a copy of the iterator, or %NULL
+
+</return>
 </function>
 
-<function name="clutter_interval_set_initial_value">
+<function name="clutter_model_iter_get">
 <description>
-Sets the initial value of @interval to @value. The value is copied
-inside the #ClutterInterval.
+Gets the value of one or more cells in the row referenced by @iter. The
+variable argument list should contain integer column numbers, each column
+column number followed by a place to store the value being retrieved. The
+list is terminated by a -1.
 
-Since: 1.0
+For example, to get a value from column 0 with type %G_TYPE_STRING use:
+&lt;informalexample&gt;&lt;programlisting&gt;
+clutter_model_iter_get (iter, 0, &amp;place_string_here, -1);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+
+where place_string_here is a gchar* to be filled with the string. If
+appropriate, the returned values have to be freed or unreferenced.
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue
+<parameter name="Varargs">
+<parameter_description> a list of column/return location pairs, terminated by -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_set_minimum_size">
+<function name="clutter_model_iter_get_model">
 <description>
-Sets the minimum size for a stage window, if the default backend
-uses #ClutterStage inside a window
-
-This is a convenience function, and it is equivalent to setting the
-#ClutterActor:min-width and #ClutterActor:min-height on @stage
-
-If the current size of @stage is smaller than the minimum size, the
-@stage will be resized to the new @width and @height
-
-This function has no effect if @stage is fullscreen
+Retrieves a pointer to the #ClutterModel that this iter is part of.
 
-Since: 1.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> width, in pixels
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> height, in pixels
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to a #ClutterModel.
+
+</return>
 </function>
 
-<function name="clutter_layout_manager_layout_changed">
+<function name="clutter_model_iter_get_row">
 <description>
-Emits the #ClutterLayoutManager::layout-changed signal on @manager
-
-This function should only be called by implementations of the
-#ClutterLayoutManager class
+Retrieves the position of the row that the @iter points to.
 
-Since: 1.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the position of the @iter in the model
+
+</return>
 </function>
 
-<function name="clutter_animation_has_property">
+<function name="clutter_model_iter_get_valist">
 <description>
-Checks whether @animation is controlling @property_name.
+See clutter_model_iter_get(). This version takes a va_list for language
+bindings.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> name of the property
+<parameter name="args">
+<parameter_description> a list of column/return location pairs, terminated by -1
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the property is animated by the
-#ClutterAnimation, %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_model_remove">
+<function name="clutter_model_iter_get_value">
 <description>
-Removes the row at the given position from the model.
+Sets an initializes @value to that at @column. When done with @value, 
+g_value_unset() needs to be called to free any allocated memory.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> position of row to remove
+<parameter name="column">
+<parameter_description> column number to retrieve the value from
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> an empty #GValue to set
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_media_get_progress">
+<function name="clutter_model_iter_is_first">
 <description>
-Retrieves the playback progress of @media.
+Gets whether the current iterator is at the beginning of the model
+to which it belongs.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the playback progress, between 0.0 and 1.0
+<return> #TRUE if @iter is the first iter in the filtered model
 
 </return>
 </function>
 
-<function name="clutter_value_get_color">
+<function name="clutter_model_iter_is_last">
 <description>
-Gets the #ClutterColor contained in @value.
+Gets whether the iterator is at the end of the model to which it
+belongs.
 
-Since: 0.8.4
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue initialized to #CLUTTER_TYPE_COLOR
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> the colors inside the passed #GValue
+<return> #TRUE if @iter is the last iter in the filtered model.
 
 </return>
 </function>
 
-<function name="clutter_actor_set_scale_with_gravity">
+<function name="clutter_model_iter_next">
 <description>
-Scales an actor with the given factors around the given
-center point. The center point is specified as one of the compass
-directions in #ClutterGravity. For example, setting it to north
-will cause the top of the actor to remain unchanged and the rest of
-the actor to expand left, right and downwards.
+Updates the @iter to point at the next position in the model.
+The model implementation should take into account the presence of
+a filter function.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="scale_x">
-<parameter_description> double factor to scale actor by horizontally.
-</parameter_description>
-</parameter>
-<parameter name="scale_y">
-<parameter_description> double factor to scale actor by vertically.
-</parameter_description>
-</parameter>
-<parameter name="gravity">
-<parameter_description> the location of the scale center expressed as a compass
-direction.
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The passed iterator, updated to point at the next
+row in the model.
+
+</return>
 </function>
 
-<function name="cogl_pango_font_map_get_use_mipmapping">
+<function name="clutter_model_iter_prev">
 <description>
-Retrieves whether the #CoglPangoRenderer used by @fm will
-use mipmapping when rendering the glyphs.
+Sets the @iter to point at the previous position in the model.
+The model implementation should take into account the presence of
+a filter function.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="fm">
-<parameter_description> a #CoglPangoFontMap
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if mipmapping is used, %FALSE otherwise.
+<return> The passed iterator, updated to point at the previous
+row in the model.
 
 </return>
 </function>
 
-<function name="clutter_flow_layout_set_row_height">
+<function name="clutter_model_iter_set">
 <description>
-Sets the minimum and maximum heights that a row can have
+Sets the value of one or more cells in the row referenced by @iter. The
+variable argument list should contain integer column numbers, each column
+column number followed by the value to be set. The  list is terminated by a
+-1.
 
-Since: 1.2
+For example, to set column 0 with type %G_TYPE_STRING, use:
+&lt;informalexample&gt;&lt;programlisting&gt;
+clutter_model_iter_set (iter, 0, &quot;foo&quot;, -1);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
-</parameter_description>
-</parameter>
-<parameter name="min_height">
-<parameter_description> the minimum height of a row
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="max_height">
-<parameter_description> the maximum height of a row
+<parameter name="Varargs">
+<parameter_description> a list of column/return location pairs, terminated by -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_reparent">
+<function name="clutter_model_iter_set_valist">
 <description>
-This function resets the parent actor of @self.  It is
-logically equivalent to calling clutter_actor_unparent()
-and clutter_actor_set_parent(), but more efficiently
-implemented, ensures the child is not finalized
-when unparented, and emits the parent-set signal only
-one time.
+See clutter_model_iter_set(); this version takes a va_list for language
+bindings.
 
-Since: 0.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="new_parent">
-<parameter_description> the new #ClutterActor parent
+<parameter name="args">
+<parameter_description> va_list of column/value pairs, terminiated by -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_interval_new">
+<function name="clutter_model_iter_set_value">
 <description>
-Creates a new #ClutterInterval holding values of type @gtype.
-
-This function avoids using a #GValue for the initial and final values
-of the interval:
-
-|[
-interval = clutter_interval_new (G_TYPE_FLOAT, 0.0, 1.0);
-interval = clutter_interval_new (G_TYPE_BOOLEAN, FALSE, TRUE);
-interval = clutter_interval_new (G_TYPE_INT, 0, 360);
-]|
+Sets the data in the cell specified by @iter and @column. The type of
+@value must be convertable to the type of the column.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="gtype">
-<parameter_description> the type of the values in the interval
+<parameter name="iter">
+<parameter_description> a #ClutterModelIter
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> the initial value and the final value of the interval
+<parameter name="column">
+<parameter_description> column number to retrieve the value from
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> new value for the cell
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterInterval
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_media_set_filename">
+<function name="clutter_model_prepend">
 <description>
-Sets the source of @media using a file path.
+Creates and prepends a new row to the #ClutterModel, setting the row
+values upon creation. For example, to prepend a new row where column 0
+is type %G_TYPE_INT and column 1 is of type %G_TYPE_STRING:
 
-Since: 0.2
+&lt;informalexample&gt;&lt;programlisting&gt;
+ClutterModel *model;
+model = clutter_model_default_new (2,
+G_TYPE_INT,    &quot;Score&quot;,
+G_TYPE_STRING, &quot;Team&quot;);
+clutter_model_prepend (model, 0, 42, 1, &quot;Team #1&quot;, -1);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="filename">
-<parameter_description> A filename
+<parameter name="Varargs">
+<parameter_description> pairs of column number and value, terminated with -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_get_actor_by_gid">
+<function name="clutter_model_prependv">
 <description>
-Retrieves the #ClutterActor with @id.
+Creates and prepends a new row to the #ClutterModel, setting the row
+values for the given @columns upon creation.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="id">
-<parameter_description> a #ClutterActor ID.
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="n_columns">
+<parameter_description> the number of columns and values to set
+</parameter_description>
+</parameter>
+<parameter name="columns">
+<parameter_description> a vector containing the columns to set
+</parameter_description>
+</parameter>
+<parameter name="values">
+<parameter_description> a vector containing the values for the cells
 </parameter_description>
 </parameter>
 </parameters>
-<return> the actor with the passed id or %NULL.
-The returned actor does not have its reference count increased.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_shader_get_fragment_source">
+<function name="clutter_model_remove">
 <description>
-Query the current GLSL fragment source set on @shader.
+Removes the row at the given position from the model.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="row">
+<parameter_description> position of row to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> the source of the fragment shader for this
-ClutterShader object or %NULL. The returned string is owned by the
-shader object and should never be modified or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animation_get_loop">
+<function name="clutter_model_resort">
 <description>
-Retrieves whether @animation is looping.
+Force a resort on the @model. This function should only be
+used by subclasses of #ClutterModel.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the animation is looping
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_media_set_progress">
+<function name="clutter_model_set_filter">
 <description>
-Sets the playback progress of @media. The @progress is
-a normalized value between 0.0 (begin) and 1.0 (end).
+Filters the @model using the given filtering function.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="model">
+<parameter_description> a #ClutterModel
 </parameter_description>
 </parameter>
-<parameter name="progress">
-<parameter_description> the progress of the playback, between 0.0 and 1.0
+<parameter name="func">
+<parameter_description> a #ClutterModelFilterFunc, or #NULL
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @func, or #NULL
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> destroy notifier of @user_data, or #NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_score_new">
+<function name="clutter_model_set_names">
 <description>
-Creates a new #ClutterScore. A #ClutterScore is an object that can
-hold multiple #ClutterTimeline&lt;!-- --&gt;s in a sequential order.
+Assigns a name to the columns of a #ClutterModel.
+
+This function is meant primarily for #GObjects that inherit from
+#ClutterModel, and should only be used when contructing a #ClutterModel.
+It will not work after the initial creation of the #ClutterModel.
 
 Since: 0.6
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="n_columns">
+<parameter_description> the number of column names
+</parameter_description>
+</parameter>
+<parameter name="names">
+<parameter_description> an array of strings
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #ClutterScore. Use g_object_unref()
-when done.
-
-</return>
+<return></return>
 </function>
 
-<function name="json_object_ref">
+<function name="clutter_model_set_sort">
 <description>
-Increase by one the reference count of a #JsonObject.
+Sorts @model using the given sorting function.
 
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> the column to sort on
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a #ClutterModelSortFunc, or #NULL
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to @func, or #NULL
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> destroy notifier of @user_data, or #NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the passed #JsonObject, with the reference count
-increased by one.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_child_meta_get_actor">
+<function name="clutter_model_set_sorting_column">
 <description>
-Retrieves the actor wrapped by @data
+Sets the model to sort by @column. If @column is a negative value
+the sorting column will be unset.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> a #ClutterChildMeta
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="column">
+<parameter_description> the column of the @model to sort, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterActor
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_threads_leave">
+<function name="clutter_model_set_types">
 <description>
-Unlocks the Clutter thread lock.
+Sets the types of the columns inside a #ClutterModel.
 
-Since: 0.4
+This function is meant primarily for #GObjects that inherit from
+#ClutterModel, and should only be used when contructing a #ClutterModel.
+It will not work after the initial creation of the #ClutterModel.
+
+Since: 0.6
 
 </description>
 <parameters>
+<parameter name="model">
+<parameter_description> a #ClutterModel
+</parameter_description>
+</parameter>
+<parameter name="n_columns">
+<parameter_description> number of columns for the model
+</parameter_description>
+</parameter>
+<parameter name="types">
+<parameter_description> an array of #GType types
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_interval_validate">
+<function name="clutter_offscreen_effect_create_texture">
 <description>
-Validates the initial and final values of @interval against
-a #GParamSpec.
+Calls the create_texture() virtual function of the @effect
 
-Since: 1.0
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
-<parameter name="pspec">
-<parameter_description> a #GParamSpec
+<parameter name="width">
+<parameter_description> the minimum width of the target texture
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the minimum height of the target texture
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterInterval is valid, %FALSE otherwise
+<return> a handle to a Cogl texture, or
+%COGL_INVALID_HANDLE. The returned handle has its reference
+count increased.
 
 </return>
 </function>
 
-<function name="json_parser_new">
+<function name="clutter_offscreen_effect_get_target">
 <description>
-Creates a new #JsonParser instance. You can use the #JsonParser to
-load a JSON stream from either a file or a buffer and then walk the
-hierarchy using the data types API.
-
-
-</description>
-<parameters>
-</parameters>
-<return> the newly created #JsonParser. Use g_object_unref()
-to release all the memory it allocates.
-</return>
-</function>
+Retrieves the material used as a render target for the offscreen
+buffer created by @effect
 
-<function name="clutter_interval_peek_initial_value">
-<description>
-Gets the pointer to the initial value of @interval
+You should only use the returned #CoglMaterial when painting. The
+returned material might change between different frames.
 
-Since: 1.0
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return> the initial value of the interval.
-The value is owned by the #ClutterInterval and it should not be
+<return> a #CoglMaterial or %NULL. The
+returned material is owned by Clutter and it should not be
 modified or freed
 
 </return>
 </function>
 
-<function name="clutter_container_child_get">
+<function name="clutter_offscreen_effect_get_target_rect">
 <description>
-Gets @container specific properties of an actor.
+Retrieves the origin and size of the offscreen buffer used by @effect to
+paint the actor to which it has been applied.
 
-In general, a copy is made of the property contents and the caller is
-responsible for freeing the memory in the appropriate manner for the type, for
-instance by calling g_free() or g_object_unref(). 
+This function should only be called by #ClutterOffscreenEffect
+implementations, from within the &lt;function&gt;paint_target()&lt;/function&gt;
+virtual function.
 
-Since: 0.8
+Since: 1.14
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor that is a child of @container.
-</parameter_description>
-</parameter>
-<parameter name="first_prop">
-<parameter_description> name of the first property to be set.
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> value for the first property, followed optionally by more name/value
-pairs terminated with NULL.
+<parameter name="rect">
+<parameter_description> return location for the target area
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the offscreen buffer has a valid rectangle,
+and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_behaviour_opacity_get_bounds">
+<function name="clutter_offscreen_effect_get_target_size">
 <description>
-Gets the initial and final levels of the opacity applied by @behaviour
-on each actor it controls.
+Retrieves the size of the offscreen buffer used by @effect to
+paint the actor to which it has been applied.
 
-Since: 0.6
+This function should only be called by #ClutterOffscreenEffect
+implementations, from within the &lt;function&gt;paint_target()&lt;/function&gt;
+virtual function.
+
+Since: 1.8
+
+Deprecated: 1.14: Use clutter_offscreen_effect_get_target_rect() instead
 
 </description>
 <parameters>
-<parameter name="behaviour">
-<parameter_description> a #ClutterBehaviourOpacity
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
-<parameter name="opacity_start">
-<parameter_description> return location for the minimum level of opacity, or %NULL
+<parameter name="width">
+<parameter_description> return location for the target width, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="opacity_end">
-<parameter_description> return location for the maximum level of opacity, or %NULL
+<parameter name="height">
+<parameter_description> return location for the target height, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the offscreen buffer has a valid size,
+and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_behaviour_rotate_set_axis">
+<function name="clutter_offscreen_effect_get_texture">
 <description>
-Sets the axis used by the rotate behaviour.
+Retrieves the texture used as a render target for the offscreen
+buffer created by @effect
 
-Since: 0.4
+You should only use the returned texture when painting. The texture
+may change after ClutterEffect::pre_paint is called so the effect
+implementation should update any references to the texture after
+chaining-up to the parent's pre_paint implementation. This can be
+used instead of clutter_offscreen_effect_get_target() when the
+effect subclass wants to paint using its own material.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
-</parameter_description>
-</parameter>
-<parameter name="axis">
-<parameter_description> a #ClutterRotateAxis
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #CoglHandle or %COGL_INVALID_HANDLE. The
+returned texture is owned by Clutter and it should not be
+modified or freed
+
+</return>
 </function>
 
-<function name="clutter_animator_set_key">
+<function name="clutter_offscreen_effect_paint_target">
 <description>
-Sets a single key in the #ClutterAnimator for the @property_name of
-@object at @progress.
-
-See also: clutter_animator_set()
+Calls the paint_target() virtual function of the @effect
 
-Since: 1.2
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the property to specify a key for
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> the id of the alpha function to use
-</parameter_description>
-</parameter>
-<parameter name="progress">
-<parameter_description> the normalized range at which stage of the animation this
-value applies
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value property_name should have at progress.
+<parameter name="effect">
+<parameter_description> a #ClutterOffscreenEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return> The animator instance
-
-</return>
+<return></return>
 </function>
 
-<function name="json_object_foreach_member">
+<function name="clutter_page_turn_effect_get_angle">
 <description>
-Iterates over all members of @object and calls @func on
-each one of them.
+Retrieves the value set using clutter_page_turn_effect_get_angle()
 
-It is safe to change the value of a #JsonNode of the @object
-from within the iterator @func, but it is not safe to add or
-remove members from the @object.
-
-Since: 0.8
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> the function to be called on each member
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to be passed to the function
+<parameter name="effect">
+<parameter_description> a #ClutterPageTurnEffect:
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the angle of the page curling
+
+</return>
 </function>
 
-<function name="clutter_event_get_key_code">
+<function name="clutter_page_turn_effect_get_period">
 <description>
-Retrieves the keycode of the key that caused @event
+Retrieves the value set using clutter_page_turn_effect_get_period()
 
-Since: 1.0
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent of type %CLUTTER_KEY_PRESS or
-of type %CLUTTER_KEY_RELEASE
+<parameter name="effect">
+<parameter_description> a #ClutterPageTurnEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return> The keycode representing the key
+<return> the period of the page curling
 
 </return>
 </function>
 
-<function name="clutter_actor_unparent">
+<function name="clutter_page_turn_effect_get_radius">
 <description>
-Removes the parent of @self.
-
-This function should not be used in applications.  It should be called by
-implementations of container actors, to dissociate a child from the
-container.
+Retrieves the value set using clutter_page_turn_effect_set_radius()
 
-Since: 0.1.1
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="effect">
+<parameter_description> a #ClutterPageTurnEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the radius of the page curling
+
+</return>
 </function>
 
-<function name="clutter_rectangle_get_border_width">
+<function name="clutter_page_turn_effect_new">
 <description>
-Gets the width (in pixels) of the border used by @rectangle
+Creates a new #ClutterPageTurnEffect instance with the given parameters
 
-Since: 0.2
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
+<parameter name="period">
+<parameter_description> the period of the page curl, between 0.0 and 1.0
+</parameter_description>
+</parameter>
+<parameter name="angle">
+<parameter_description> the angle of the page curl, between 0.0 and 360.0
+</parameter_description>
+</parameter>
+<parameter name="radius">
+<parameter_description> the radius of the page curl, in pixels
 </parameter_description>
 </parameter>
 </parameters>
-<return> the border's width
+<return> the newly created #ClutterPageTurnEffect
 
 </return>
 </function>
 
-<function name="clutter_text_activate">
+<function name="clutter_page_turn_effect_set_angle">
 <description>
-Emits the #ClutterText::activate signal, if @self has been set
-as activatable using clutter_text_set_activatable().
-
-This function can be used to emit the ::activate signal inside
-a #ClutterActor::captured-event or #ClutterActor::key-press-event
-signal handlers before the default signal handler for the
-#ClutterText is invoked.
+Sets the angle of the page curling, in degrees
 
-Since: 1.0
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="effect">
+<parameter_description> #ClutterPageTurnEffect
+</parameter_description>
+</parameter>
+<parameter name="angle">
+<parameter_description> the angle of the page curl, in degrees
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the ::activate signal has been emitted,
-and %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_rectangle_get_border_color">
+<function name="clutter_page_turn_effect_set_period">
 <description>
-Gets the color of the border used by @rectangle and places
-it into @color.
+Sets the period of the page curling, between 0.0 (no curling)
+and 1.0 (fully curled)
 
-Since: 0.2
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
+<parameter name="effect">
+<parameter_description> a #ClutterPageTurnEffect
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> return location for a #ClutterColor
+<parameter name="period">
+<parameter_description> the period of the page curl, between 0.0 and 1.0
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_get_string">
+<function name="clutter_page_turn_effect_set_radius">
 <description>
-Gets the string value stored inside a #JsonNode
+Sets the radius of the page curling
 
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
+<parameter name="effect">
+<parameter_description> a #ClutterPageTurnEffect:
+</parameter_description>
+</parameter>
+<parameter name="radius">
+<parameter_description> the radius of the page curling, in pixels
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string value.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_set_scale_full">
+<function name="clutter_paint_node_add_child">
 <description>
-Scales an actor with the given factors around the given center
-point. The center point is specified in pixels relative to the
-anchor point (usually the top left corner of the actor).
+Adds @child to the list of children of @node.
 
-Since: 1.0
+This function will acquire a reference on @child.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="scale_x">
-<parameter_description> double factor to scale actor by horizontally.
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="scale_y">
-<parameter_description> double factor to scale actor by vertically.
+<parameter name="child">
+<parameter_description> the child #ClutterPaintNode to add
 </parameter_description>
 </parameter>
-<parameter name="center_x">
-<parameter_description> X coordinate of the center of the scale.
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_paint_node_add_path">
+<description>
+Adds a region described as a path to the @node.
+
+This function acquires a reference on the passed @path, so it
+is safe to call cogl_object_unref() when it returns.
+
+Since: 1.10
+Stability: unstable
+
+</description>
+<parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="center_y">
-<parameter_description> Y coordinate of the center of the scale
+<parameter name="path">
+<parameter_description> a Cogl path
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_color_copy">
+<function name="clutter_paint_node_add_primitive">
 <description>
-Makes a copy of the color structure.  The result must be
-freed using clutter_color_free().
+Adds a region described by a Cogl primitive to the @node.
 
-Since: 0.2
+This function acquires a reference on @primitive, so it is safe
+to call cogl_object_unref() when it returns.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
+<parameter name="primitive">
+<parameter_description> a Cogl primitive
 </parameter_description>
 </parameter>
 </parameters>
-<return> an allocated copy of @color.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_box_new">
+<function name="clutter_paint_node_add_rectangle">
 <description>
-Creates a new #ClutterBox. The children of the box will be layed
-out by the passed @manager
+Adds a rectangle region to the @node, as described by the
+passed @rect.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
+<parameter name="rect">
+<parameter_description> a #ClutterActorBox
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterBox actor
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_x11_texture_pixmap_update_area">
+<function name="clutter_paint_node_add_texture_rectangle">
 <description>
-Performs the actual binding of texture to the current content of
-the pixmap. Can be called to update the texture if the pixmap
-content has changed.
+Adds a rectangle region to the @node, with texture coordinates.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> The texture whose content shall be updated.
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> the X coordinate of the area to update
+<parameter name="rect">
+<parameter_description> a #ClutterActorBox
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> the Y coordinate of the area to update
+<parameter name="x_1">
+<parameter_description> the left X coordinate of the texture
 </parameter_description>
 </parameter>
-<parameter name="width">
-<parameter_description> the width of the area to update
+<parameter name="y_1">
+<parameter_description> the top Y coordinate of the texture
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> the height of the area to update
+<parameter name="x_2">
+<parameter_description> the right X coordinate of the texture
+</parameter_description>
+</parameter>
+<parameter name="y_2">
+<parameter_description> the bottom Y coordinate of the texture
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_add_idle_full">
+<function name="clutter_paint_node_get_first_child">
 <description>
-Adds a function to be called whenever there are no higher priority
-events pending. If the function returns %FALSE it is automatically
-removed from the list of event sources and will not be called again.
-
-This function can be considered a thread-safe variant of g_idle_add_full():
-it will call @function while holding the Clutter lock. It is logically
-equivalent to the following implementation:
-
-|[
-static gboolean
-idle_safe_callback (gpointer data)
-{
-SafeClosure *closure = data;
-gboolean res = FALSE;
-
-/ * mark the critical section * /
-
-clutter_threads_enter();
-
-/ * the callback does not need to acquire the Clutter
-* lock itself, as it is held by the this proxy handler
-* /
-res = closure-&gt;callback (closure-&gt;data);
+Retrieves the first child of the @node.
 
-clutter_threads_leave();
-
-return res;
-}
-static gulong
-add_safe_idle (GSourceFunc callback,
-gpointer    data)
-{
-SafeClosure *closure = g_new0 (SafeClosure, 1);
-
-closure-&gt;callback = callback;
-closure-&gt;data = data;
-
-return g_add_idle_full (G_PRIORITY_DEFAULT_IDLE,
-idle_safe_callback,
-closure,
-g_free)
-}
-]|
-
-This function should be used by threaded applications to make sure
-that @func is emitted under the Clutter threads lock and invoked
-from the same thread that started the Clutter main loop. For instance,
-it can be used to update the UI using the results from a worker
-thread:
-
-|[
-static gboolean
-update_ui (gpointer data)
-{
-SomeClosure *closure = data;
-
-/ * it is safe to call Clutter API from this function because
-* it is invoked from the same thread that started the main
-* loop and under the Clutter thread lock
-* /
-clutter_label_set_text (CLUTTER_LABEL (closure-&gt;label),
-closure-&gt;text);
-
-g_object_unref (closure-&gt;label);
-g_free (closure);
-
-return FALSE;
-}
-
-/ * within another thread * /
-closure = g_new0 (SomeClosure, 1);
-/ * always take a reference on GObject instances * /
-closure-&gt;label = g_object_ref (my_application-&gt;label);
-closure-&gt;text = g_strdup (processed_text_to_update_the_label);
-
-clutter_threads_add_idle_full (G_PRIORITY_HIGH_IDLE,
-update_ui,
-closure,
-NULL);
-]|
-
-Since: 0.4
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the timeout source. Typically this will be in the
-range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> functio to call when the idle source is removed
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> a pointer to the first child of
+the #ClutterPaintNode.
 
 </return>
 </function>
 
-<function name="cogl_pango_font_map_new">
+<function name="clutter_paint_node_get_last_child">
 <description>
-Creates a new font map.
+Retrieves the last child of @node.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #PangoFontMap
+<return> a pointer to the last child
+of a #ClutterPaintNode
 
 </return>
 </function>
 
-<function name="clutter_animation_get_duration">
+<function name="clutter_paint_node_get_n_children">
 <description>
-Retrieves the duration of @animation, in milliseconds.
+Retrieves the number of children of @node.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> the duration of the animation
+<return> the number of children of a #ClutterPaintNode
 
 </return>
 </function>
 
-<function name="json_array_new">
+<function name="clutter_paint_node_get_next_sibling">
 <description>
-Creates a new #JsonArray.
+Retrieves the next sibling of @node.
 
+Since: 1.10
 
 </description>
 <parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #JsonArray
+<return> a pointer to the next sibling
+of a #ClutterPaintNode
+
 </return>
 </function>
 
-<function name="clutter_egl_display">
+<function name="clutter_paint_node_get_parent">
 <description>
-Retrieves the &lt;structname&gt;EGLDisplay&lt;/structname&gt; used by Clutter
+Retrieves the parent of @node.
 
+Since: 1.10
 
 </description>
 <parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
 </parameters>
-<return> the EGL display
+<return> a pointer to the parent of
+a #ClutterPaintNode
+
 </return>
 </function>
 
-<function name="clutter_actor_transform_stage_point">
+<function name="clutter_paint_node_get_previous_sibling">
 <description>
-This function translates screen coordinates (@x, @y) to
-coordinates relative to the actor. For example, it can be used to translate
-screen events from global screen coordinates into actor-local coordinates.
-
-The conversion can fail, notably if the transform stack results in the
-actor being projected on the screen as a mere line.
-
-The conversion should not be expected to be pixel-perfect due to the
-nature of the operation. In general the error grows when the skewing
-of the actor rectangle on screen increases.
-
-Note: This function is fairly computationally intensive.
+Retrieves the previous sibling of @node.
 
-Note: This function only works when the allocation is up-to-date,
-i.e. inside of paint()
-
-Since: 0.6
+Since: 1.10
 
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> x screen coordinate of the point to unproject
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> y screen coordinate of the point to unproject
-</parameter_description>
-</parameter>
-<parameter name="x_out">
-<parameter_description> return location for the unprojected x coordinance
-</parameter_description>
-</parameter>
-<parameter name="y_out">
-<parameter_description> return location for the unprojected y coordinance
+</description>
+<parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if conversion was successful.
+<return> a pointer to the previous sibling
+of the #ClutterPaintNode.
 
 </return>
 </function>
 
-<function name="clutter_actor_get_fixed_position_set">
+<function name="clutter_paint_node_ref">
 <description>
-Checks whether an actor has a fixed position set (and will thus be
-unaffected by any layout manager).
+Acquires a reference on @node.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the fixed position is set on the actor
+<return> the #ClutterPaintNode
 
 </return>
 </function>
 
-<function name="clutter_animation_bind_interval">
+<function name="clutter_paint_node_remove_all">
 <description>
-Binds @interval to the @property_name of the #GObject
-attached to @animation. The #ClutterAnimation will take
-ownership of the passed #ClutterInterval.  For more information
-about animations, see clutter_actor_animate().
+Removes all children of @node.
 
-If you need to update the interval instance use
-clutter_animation_update_property() instead.
+This function releases the reference acquired by @node on its
+children.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> the property to control
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_paint_node_remove_child">
+<description>
+Removes @child from the list of children of @node.
+
+This function will release the reference on @child acquired by
+using clutter_paint_node_add_child().
+
+Since: 1.10
+
+</description>
+<parameters>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="child">
+<parameter_description> the #ClutterPaintNode to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> The animation itself.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_units_get_unit_type">
+<function name="clutter_paint_node_replace_child">
 <description>
-Retrieves the unit type of the value stored inside @units
+Atomically replaces @old_child with @new_child in the list of
+children of @node.
 
-Since: 1.0
+This function will release the reference on @old_child acquired
+by @node, and will acquire a new reference on @new_child.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
+</parameter_description>
+</parameter>
+<parameter name="old_child">
+<parameter_description> the child replaced by @new_child
+</parameter_description>
+</parameter>
+<parameter name="new_child">
+<parameter_description> the child that replaces @old_child
 </parameter_description>
 </parameter>
 </parameters>
-<return> a unit type
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_box_layout_set_use_animations">
+<function name="clutter_paint_node_set_name">
 <description>
-Sets whether @layout should animate changes in the layout properties
+Sets a user-readable @name for @node.
 
-The duration of the animations is controlled by
-clutter_box_layout_set_easing_duration(); the easing mode to be used
-by the animations is controlled by clutter_box_layout_set_easing_mode()
+The @name will be used for debugging purposes.
 
-Since: 1.2
+The @node will copy the passed string.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
-<parameter name="animate">
-<parameter_description> %TRUE if the @layout should use animations
+<parameter name="name">
+<parameter_description> a string annotating the @node
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_ellipse_set_angle_end">
+<function name="clutter_paint_node_unref">
 <description>
-Sets the angle at which movement ends; angles &gt;= 360 degress get clamped
-to the canonical interval &lt;0, 360).
+Releases a reference on @node.
 
-Since: 0.4
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
-</parameter_description>
-</parameter>
-<parameter name="angle_end">
-<parameter_description> angle at which movement ends in degrees, between 0 and 360.
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_set_user_resizable">
+<function name="clutter_paint_volume_copy">
 <description>
-Sets if the stage is resizable by user interaction (e.g. via
-window manager controls)
+Copies @pv into a new #ClutterPaintVolume
 
-Since: 0.4
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
-<parameter name="resizable">
-<parameter_description> whether the stage should be user resizable.
+</parameters>
+<return> a newly allocated copy of a #ClutterPaintVolume
+
+</return>
+</function>
+
+<function name="clutter_paint_volume_free">
+<description>
+Frees the resources allocated by @pv
+
+Since: 1.6
+
+</description>
+<parameters>
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_get_first_iter">
+<function name="clutter_paint_volume_get_depth">
 <description>
-Retrieves a #ClutterModelIter representing the first non-filtered
-row in @model.
+Retrieves the depth of the volume's, axis aligned, bounding box.
 
-Since: 0.6
+In other words; this takes into account what actor's coordinate
+space @pv belongs too and conceptually fits an axis aligned box
+around the volume. It returns the size of that bounding box as
+measured along the z-axis.
+
+&lt;note&gt;&lt;para&gt;If, for example, clutter_actor_get_transformed_paint_volume()
+is used to transform a 2D child actor that is 100px wide, 100px
+high and 0px deep into container coordinates then the depth might
+not simply be 0px if the child actor has a 3D rotation applied to
+it.&lt;/para&gt;
+&lt;para&gt;Remember; after clutter_actor_get_transformed_paint_volume() is
+used then the transformed volume will be defined relative to the
+container actor and in container coordinates a 2D child actor
+can have a 3D bounding volume.&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;There are no accuracy guarantees for the reported depth,
+except that it must always be &gt;= to the true depth. This is
+because actors may report simple, loose fitting paint-volumes
+for efficiency.&lt;/note&gt;
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterModelIter.
-Call g_object_unref() when done using it
+<return> the depth, in units of @pv's local coordinate system.
 
 </return>
 </function>
 
-<function name="clutter_group_get_nth_child">
+<function name="clutter_paint_volume_get_height">
 <description>
-Gets a groups child held at @index_ in stack.
+Retrieves the height of the volume's, axis aligned, bounding box.
 
-Since: 0.2
+In other words; this takes into account what actor's coordinate
+space @pv belongs too and conceptually fits an axis aligned box
+around the volume. It returns the size of that bounding box as
+measured along the y-axis.
+
+&lt;note&gt;&lt;para&gt;If, for example, clutter_actor_get_transformed_paint_volume()
+is used to transform a 2D child actor that is 100px wide, 100px
+high and 0px deep into container coordinates then the height might
+not simply be 100px if the child actor has a 3D rotation applied to
+it.&lt;/para&gt;
+&lt;para&gt;Remember; after clutter_actor_get_transformed_paint_volume() is
+used then a transformed child volume will be defined relative to the
+ancestor container actor and so a 2D child actor
+can have a 3D bounding volume.&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;There are no accuracy guarantees for the reported height,
+except that it must always be &gt;= to the true height. This is
+because actors may report simple, loose fitting paint-volumes
+for efficiency&lt;/note&gt;
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterGroup
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the position of the requested actor.
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
 </parameters>
-<return> A Clutter actor, or %NULL if
-@index_ is invalid.
+<return> the height, in units of @pv's local coordinate system.
 
 </return>
 </function>
 
-<function name="clutter_text_insert_unichar">
+<function name="clutter_paint_volume_get_origin">
 <description>
-Inserts @wc at the current cursor position of a
-#ClutterText actor.
+Retrieves the origin of the #ClutterPaintVolume.
 
-Since: 1.0
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
-<parameter name="wc">
-<parameter_description> a Unicode character
+<parameter name="vertex">
+<parameter_description> the return location for a #ClutterVertex
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_remove_clip">
+<function name="clutter_paint_volume_get_width">
 <description>
-Removes clip area from @self.
+Retrieves the width of the volume's, axis aligned, bounding box.
+
+In other words; this takes into account what actor's coordinate
+space @pv belongs too and conceptually fits an axis aligned box
+around the volume. It returns the size of that bounding box as
+measured along the x-axis.
+
+&lt;note&gt;&lt;para&gt;If, for example, clutter_actor_get_transformed_paint_volume()
+is used to transform a 2D child actor that is 100px wide, 100px
+high and 0px deep into container coordinates then the width might
+not simply be 100px if the child actor has a 3D rotation applied to
+it.&lt;/para&gt;
+&lt;para&gt;Remember; after clutter_actor_get_transformed_paint_volume() is
+used then a transformed child volume will be defined relative to the
+ancestor container actor and so a 2D child actor
+can have a 3D bounding volume.&lt;/para&gt;&lt;/note&gt;
+
+&lt;note&gt;There are no accuracy guarantees for the reported width,
+except that it must always be &gt;= to the true width. This is
+because actors may report simple, loose fitting paint-volumes
+for efficiency&lt;/note&gt;
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the width, in units of @pv's local coordinate system.
+
+</return>
 </function>
 
-<function name="clutter_layout_manager_get_animation_progress">
+<function name="clutter_paint_volume_set_depth">
 <description>
-Retrieves the progress of the animation, if one has been started by
-clutter_layout_manager_begin_animation()
-
-The returned value has the same semantics of the #ClutterAlpha:alpha
-value
+Sets the depth of the paint volume. The depth is measured along
+the z axis in the actor coordinates that @pv is associated with.
 
-Since: 1.2
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
+</parameter_description>
+</parameter>
+<parameter name="depth">
+<parameter_description> the depth of the paint volume, in pixels
 </parameter_description>
 </parameter>
 </parameters>
-<return> the progress of the animation
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_grab_pointer">
+<function name="clutter_paint_volume_set_from_allocation">
 <description>
-Grabs pointer events, after the grab is done all pointer related events
-(press, motion, release, enter, leave and scroll) are delivered to this
-actor directly without passing through both capture and bubble phases of
-the event delivery chain. The source set in the event will be the actor
-that would have received the event if the pointer grab was not in effect.
+Sets the #ClutterPaintVolume from the allocation of @actor.
 
-&lt;note&gt;&lt;para&gt;Grabs completely override the entire event delivery chain
-done by Clutter. Pointer grabs should only be used as a last resource;
-using the #ClutterActor::captured-event signal should always be the
-preferred way to intercept event delivery to reactive actors.&lt;/para&gt;&lt;/note&gt;
+This function should be used when overriding the
+#ClutterActorClass.get_paint_volume() by #ClutterActor sub-classes
+that do not paint outside their allocation.
 
-If you wish to grab all the pointer events for a specific input device,
-you should use clutter_grab_pointer_for_device().
+A typical example is:
 
-Since: 0.6
+|[
+static gboolean
+my_actor_get_paint_volume (ClutterActor       *self,
+ClutterPaintVolume *volume)
+{
+return clutter_paint_volume_set_from_allocation (volume, self);
+}
+]|
+
+Since: 1.6
 
 </description>
 <parameters>
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
+</parameter_description>
+</parameter>
 <parameter name="actor">
 <parameter_description> a #ClutterActor
 </parameter_description>
 </parameter>
 </parameters>
+<return> %TRUE if the paint volume was successfully set, and %FALSE
+otherwise
+
+</return>
+</function>
+
+<function name="clutter_paint_volume_set_height">
+<description>
+Sets the height of the paint volume. The height is measured along
+the y axis in the actor coordinates that @pv is associated with.
+
+Since: 1.6
+
+</description>
+<parameters>
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the height of the paint volume, in pixels
+</parameter_description>
+</parameter>
+</parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_resort">
+<function name="clutter_paint_volume_set_origin">
 <description>
-Force a resort on the @model. This function should only be
-used by subclasses of #ClutterModel.
+Sets the origin of the paint volume.
 
-Since: 0.6
+The origin is defined as the X, Y and Z coordinates of the top-left
+corner of an actor's paint volume, in actor coordinates.
+
+The default is origin is assumed at: (0, 0, 0)
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
+</parameter_description>
+</parameter>
+<parameter name="origin">
+<parameter_description> a #ClutterVertex
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_set_fog">
+<function name="clutter_paint_volume_set_width">
 <description>
-Sets the fog (also known as &quot;depth cueing&quot;) settings for the @stage.
+Sets the width of the paint volume. The width is measured along
+the x axis in the actor coordinates that @pv is associated with.
 
-A #ClutterStage will only use a linear fog progression, which
-depends solely on the distance from the viewer. The cogl_set_fog()
-function in COGL exposes more of the underlying implementation,
-and allows changing the for progression function. It can be directly
-used by disabling the #ClutterStage:use-fog property and connecting
-a signal handler to the #ClutterActor::paint signal on the @stage,
-like:
+Since: 1.6
 
-|[
-clutter_stage_set_use_fog (stage, FALSE);
-g_signal_connect (stage, &quot;paint&quot;, G_CALLBACK (on_stage_paint), NULL);
-]|
+</description>
+<parameters>
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the width of the paint volume, in pixels
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-The paint signal handler will call cogl_set_fog() with the
-desired settings:
+<function name="clutter_paint_volume_union">
+<description>
+Updates the geometry of @pv to encompass @pv and @another_pv.
 
-|[
-static void
-on_stage_paint (ClutterActor *actor)
-{
-ClutterColor stage_color = { 0, };
-CoglColor fog_color = { 0, };
+&lt;note&gt;There are no guarantees about how precisely the two volumes
+will be encompassed.&lt;/note&gt;
 
-/ * set the fog color to the stage background color * /
-clutter_stage_get_color (CLUTTER_STAGE (actor), &amp;stage_color);
-cogl_color_set_from_4ub (&amp;fog_color,
-stage_color.red,
-stage_color.green,
-stage_color.blue,
-stage_color.alpha);
+Since: 1.6
 
-/ * enable fog * /
-cogl_set_fog (&amp;fog_color,
-COGL_FOG_MODE_EXPONENTIAL, / * mode * /
-0.5,                       / * density * /
-5.0, 30.0);                / * z_near and z_far * /
-}
-]|
+</description>
+<parameters>
+<parameter name="pv">
+<parameter_description> The first #ClutterPaintVolume and destination for resulting
+union
+</parameter_description>
+</parameter>
+<parameter name="another_pv">
+<parameter_description> A second #ClutterPaintVolume to union with @pv
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Note: The fogging functions only work correctly when the visible actors use
-unmultiplied alpha colors. By default Cogl will premultiply textures
-and cogl_set_source_color will premultiply colors, so unless you
-explicitly load your textures requesting an unmultiplied
-internal_format and use cogl_material_set_color you can only use
-fogging with fully opaque actors.
+<function name="clutter_paint_volume_union_box">
+<description>
+Unions the 2D region represented by @box to a #ClutterPaintVolume.
 
-We can look to improve this in the future when we can depend on
-fragment shaders.
+This function is similar to clutter_paint_volume_union(), but it is
+specific for 2D regions.
 
-Since: 0.6
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> the #ClutterStage
+<parameter name="pv">
+<parameter_description> a #ClutterPaintVolume
 </parameter_description>
 </parameter>
-<parameter name="fog">
-<parameter_description> a #ClutterFog structure
+<parameter name="box">
+<parameter_description> a #ClutterActorBox to union to @pv
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_color_free">
+<function name="clutter_pan_action_get_acceleration_factor">
 <description>
-Frees a color structure created with clutter_color_copy().
+Retrieves the initial acceleration factor for interpolated ::pan events.
 
-Since: 0.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The initial acceleration factor for interpolated events.
+
+</return>
 </function>
 
-<function name="clutter_value_get_fixed">
+<function name="clutter_pan_action_get_deceleration">
 <description>
-Gets the fixed point value stored inside @value.
+Retrieves the deceleration rate of interpolated ::pan events.
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue initialized to %COGL_TYPE_FIXED
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value inside the passed #GValue
+<return> The deceleration rate of the interpolated events.
 
 </return>
 </function>
 
-<function name="clutter_flow_layout_set_column_width">
+<function name="clutter_pan_action_get_interpolate">
 <description>
-Sets the minimum and maximum widths that a column can have
+Checks if the action should emit ::pan events even after releasing
+the pointer during a panning gesture, to emulate some kind of
+kinetic inertia.
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+<parameter name="self">
+<parameter_description> a #ClutterPanAction
 </parameter_description>
 </parameter>
-<parameter name="min_width">
-<parameter_description> minimum width of a column
+</parameters>
+<return> %TRUE if interpolated events emission is active.
+
+</return>
+</function>
+
+<function name="clutter_pan_action_get_interpolated_coords">
+<description>
+Retrieves the coordinates, in stage space, of the latest interpolated
+event, analogous to clutter_gesture_action_get_motion_coords().
+
+Since: 1.12
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
 </parameter_description>
 </parameter>
-<parameter name="max_width">
-<parameter_description> maximum width of a column
+<parameter name="interpolated_x">
+<parameter_description> return location for the latest
+interpolated event's X coordinate
+</parameter_description>
+</parameter>
+<parameter name="interpolated_y">
+<parameter_description> return location for the latest
+interpolated event's Y coordinate
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_event_get_stage">
+<function name="clutter_pan_action_get_interpolated_delta">
 <description>
-Retrieves the source #ClutterStage the event originated for, or
-%NULL if the event has no stage.
+Retrieves the delta, in stage space, since the latest interpolated
+event, analogous to clutter_gesture_action_get_motion_delta().
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
+</parameter_description>
+</parameter>
+<parameter name="delta_x">
+<parameter_description> return location for the X delta since
+the latest interpolated event
+</parameter_description>
+</parameter>
+<parameter name="delta_y">
+<parameter_description> return location for the Y delta since
+the latest interpolated event
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterStage
+<return> the distance since the latest interpolated event
 
 </return>
 </function>
 
-<function name="json_generator_new">
+<function name="clutter_pan_action_get_motion_coords">
 <description>
-Creates a new #JsonGenerator. You can use this object to generate a
-JSON data stream starting from a data object model composed by
-#JsonNode&lt;!-- --&gt;s.
+Retrieves the coordinates, in stage space, dependent on the current state
+of the #ClutterPanAction. If it is inactive, both fields will be
+set to 0. If it is panning by user action, the values will be equivalent
+to those returned by clutter_gesture_action_get_motion_coords().
+If it is interpolating with some form of kinetic scrolling, the values
+will be equivalent to those returned by
+clutter_pan_action_get_interpolated_coords(). This is a convenience
+method designed to be used in replacement &quot;pan&quot; signal handlers.
 
+Since: 1.14
 
 </description>
 <parameters>
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
+</parameter_description>
+</parameter>
+<parameter name="point">
+<parameter_description> the touch point index, with 0 being the first touch
+point received by the action
+</parameter_description>
+</parameter>
+<parameter name="motion_x">
+<parameter_description> return location for the X coordinate
+</parameter_description>
+</parameter>
+<parameter name="motion_y">
+<parameter_description> return location for the Y coordinate
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #JsonGenerator instance
-</return>
+<return></return>
 </function>
 
-<function name="clutter_backend_set_font_options">
+<function name="clutter_pan_action_get_motion_delta">
 <description>
-Sets the new font options for @backend. The #ClutterBackend will
-copy the #cairo_font_options_t.
-
-If @options is %NULL, the first following call to
-clutter_backend_get_font_options() will return the default font
-options for @backend.
-
-This function is intended for actors creating a Pango layout
-using the PangoCairo API.
+Retrieves the delta, in stage space, dependent on the current state
+of the #ClutterPanAction. If it is inactive, both fields will be
+set to 0. If it is panning by user action, the values will be equivalent
+to those returned by clutter_gesture_action_get_motion_delta().
+If it is interpolating with some form of kinetic scrolling, the values
+will be equivalent to those returned by
+clutter_pan_action_get_interpolated_delta(). This is a convenience
+method designed to be used in replacement &quot;pan&quot; signal handlers.
 
-Since: 0.8
+Since: 1.14
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
 </parameter_description>
 </parameter>
-<parameter name="options">
-<parameter_description> Cairo font options for the backend, or %NULL
+<parameter name="point">
+<parameter_description> the touch point index, with 0 being the first touch
+point received by the action
+</parameter_description>
+</parameter>
+<parameter name="delta_x">
+<parameter_description> return location for the X delta
+</parameter_description>
+</parameter>
+<parameter name="delta_y">
+<parameter_description> return location for the Y delta
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_layout_manager_begin_animation">
+<function name="clutter_pan_action_get_pan_axis">
 <description>
-Begins an animation of @duration milliseconds, using the provided
-easing @mode
-
-The easing mode can be specified either as a #ClutterAnimationMode
-or as a logical id returned by clutter_alpha_register_func()
-
-The result of this function depends on the @manager implementation
+Retrieves the axis constraint set by clutter_pan_action_set_pan_axis()
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="duration">
-<parameter_description> the duration of the animation, in milliseconds
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> the easing mode of the animation
+<parameter name="self">
+<parameter_description> a #ClutterPanAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> The #ClutterAlpha created by the
-layout manager; the returned instance is owned by the layout
-manager and should not be unreferenced
+<return> the axis constraint
 
 </return>
 </function>
 
-<function name="clutter_shader_set_is_enabled">
+<function name="clutter_pan_action_new">
 <description>
-Enables a shader. This function will attempt to compile and link
-the shader, if it isn't already.
+Creates a new #ClutterPanAction instance
 
-When @enabled is %FALSE the default state of the GL pipeline will be
-used instead.
+Since: 1.12
 
-Since: 0.6
+</description>
+<parameters>
+</parameters>
+<return> the newly created #ClutterPanAction
+
+</return>
+</function>
+
+<function name="clutter_pan_action_set_acceleration_factor">
+<description>
+Factor applied to the momentum velocity at the time of releasing the
+pointer when generating interpolated ::pan events.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
 </parameter_description>
 </parameter>
-<parameter name="enabled">
-<parameter_description> The new state of the shader.
+<parameter name="factor">
+<parameter_description> The acceleration factor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_glx_texture_pixmap_using_extension">
+<function name="clutter_pan_action_set_deceleration">
 <description>
-Checks whether @texture is using the GLX_EXT_texture_from_pixmap
-extension; this extension can be optionally (though it is strongly
-encouraged) implemented as a zero-copy between a GLX pixmap and
-a GL texture.
+Sets the deceleration rate of the interpolated ::pan events generated
+after a pan gesture. This is approximately the value that the momentum
+at the time of releasing the pointer is divided by every 60th of a second.
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterGLXTexturePixmap
+<parameter name="self">
+<parameter_description> A #ClutterPanAction
+</parameter_description>
+</parameter>
+<parameter name="rate">
+<parameter_description> The deceleration rate
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the texture is using the
-GLX_EXT_texture_from_pixmap OpenGL extension or falling back to the
-slower software mechanism.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_texture_get_keep_aspect_ratio">
+<function name="clutter_pan_action_set_interpolate">
 <description>
-Retrieves the value set using clutter_texture_get_keep_aspect_ratio()
+Sets whether the action should emit interpolated ::pan events
+after the drag has ended, to emulate the gesture kinetic inertia.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
+<parameter name="self">
+<parameter_description> a #ClutterPanAction
+</parameter_description>
+</parameter>
+<parameter name="should_interpolate">
+<parameter_description> whether to enable interpolated pan events
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterTexture should maintain the
-aspect ratio of the underlying image
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_destroy">
+<function name="clutter_pan_action_set_pan_axis">
 <description>
-Destroys an actor.  When an actor is destroyed, it will break any
-references it holds to other objects.  If the actor is inside a
-container, the actor will be removed.
+Restricts the panning action to a specific axis
 
-When you destroy a container, its children will be destroyed as well.
-
-Note: you cannot destroy the #ClutterStage returned by
-clutter_stage_get_default().
+Since: 1.12
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter_description> a #ClutterPanAction
+</parameter_description>
+</parameter>
+<parameter name="axis">
+<parameter_description> the axis to constraint the panning to
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_get_width">
+<function name="clutter_param_spec_color">
 <description>
-Retrieves the width of a #ClutterActor.
+Creates a #GParamSpec for properties using #ClutterColor.
 
-If the actor has a valid allocation, this function will return the
-width of the allocated area given to the actor.
+Since: 0.8.4
 
-If the actor does not have a valid allocation, this function will
-return the actor's natural width, that is the preferred width of
-the actor.
+</description>
+<parameters>
+<parameter name="name">
+<parameter_description> name of the property
+</parameter_description>
+</parameter>
+<parameter name="nick">
+<parameter_description> short name
+</parameter_description>
+</parameter>
+<parameter name="blurb">
+<parameter_description> description (can be translatable)
+</parameter_description>
+</parameter>
+<parameter name="default_value">
+<parameter_description> default value
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags for the param spec
+</parameter_description>
+</parameter>
+</parameters>
+<return> the newly created #GParamSpec
 
-If you care whether you get the preferred width or the width that
-has been assigned to the actor, you should probably call a different
-function like clutter_actor_get_allocation_box() to retrieve the
-allocated size or clutter_actor_get_preferred_width() to retrieve the
-preferred width.
+</return>
+</function>
 
-If an actor has a fixed width, for instance a width that has been
-assigned using clutter_actor_set_width(), the width returned will
-be the same value.
+<function name="clutter_param_spec_fixed">
+<description>
+Creates a #GParamSpec for properties using #CoglFixed values
+
+Since: 0.8
 
+Deprecated: 1.10: Use #GParamSpecInt instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="name">
+<parameter_description> name of the property
+</parameter_description>
+</parameter>
+<parameter name="nick">
+<parameter_description> short name
+</parameter_description>
+</parameter>
+<parameter name="blurb">
+<parameter_description> description (can be translatable)
+</parameter_description>
+</parameter>
+<parameter name="minimum">
+<parameter_description> lower boundary
+</parameter_description>
+</parameter>
+<parameter name="maximum">
+<parameter_description> higher boundary
+</parameter_description>
+</parameter>
+<parameter name="default_value">
+<parameter_description> default value
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags for the param spec
 </parameter_description>
 </parameter>
 </parameters>
-<return> the width of the actor, in pixels
+<return> the newly created #GParamSpec
+
 </return>
 </function>
 
-<function name="clutter_behaviour_depth_set_bounds">
+<function name="clutter_param_spec_units">
 <description>
-Sets the boundaries of the @behaviour.
+Creates a #GParamSpec for properties using #ClutterUnits.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="behaviour">
-<parameter_description> a #ClutterBehaviourDepth
+<parameter name="name">
+<parameter_description> name of the property
 </parameter_description>
 </parameter>
-<parameter name="depth_start">
-<parameter_description> initial value of the depth
+<parameter name="nick">
+<parameter_description> short name
 </parameter_description>
 </parameter>
-<parameter name="depth_end">
-<parameter_description> final value of the depth
+<parameter name="blurb">
+<parameter_description> description (can be translatable)
+</parameter_description>
+</parameter>
+<parameter name="default_type">
+<parameter_description> the default type for the #ClutterUnits
+</parameter_description>
+</parameter>
+<parameter name="minimum">
+<parameter_description> lower boundary
+</parameter_description>
+</parameter>
+<parameter name="maximum">
+<parameter_description> higher boundary
+</parameter_description>
+</parameter>
+<parameter name="default_value">
+<parameter_description> default value
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> flags for the param spec
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #GParamSpec
+
+</return>
 </function>
 
-<function name="clutter_units_free">
+<function name="clutter_path_add_cairo_path">
 <description>
-Frees the resources allocated by @units
-
-You should only call this function on a #ClutterUnits
-created using clutter_units_copy()
+Add the nodes of the Cairo path to the end of @path.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> the #ClutterUnits to free
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
+<parameter name="cpath">
+<parameter_description> a Cairo path
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_type_name">
+<function name="clutter_path_add_close">
 <description>
-Retrieves the user readable name of the data type contained by @node.
+Adds a %CLUTTER_PATH_CLOSE type node to the path. This creates a
+straight line from the last node to the last %CLUTTER_PATH_MOVE_TO
+type node.
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the name of the type. The returned string
-is owned by the node and should never be modified or freed
-</return>
+<return></return>
 </function>
 
-<function name="clutter_path_foreach">
+<function name="clutter_path_add_curve_to">
 <description>
-Calls a function for each node of the path.
+Adds a %CLUTTER_PATH_CURVE_TO type node to the path. This causes
+the actor to follow a bezier from the last node to (@x_3, @y_3) using
+(@x_1, @y_1) and (@x_2,@y_2) as control points.
 
 Since: 1.0
 
@@ -9952,659 +28617,655 @@ Since: 1.0
 <parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="callback">
-<parameter_description> the function to call with each node
+<parameter name="x_1">
+<parameter_description> the x coordinate of the first control point
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to the function
+<parameter name="y_1">
+<parameter_description> the y coordinate of the first control point
+</parameter_description>
+</parameter>
+<parameter name="x_2">
+<parameter_description> the x coordinate of the second control point
+</parameter_description>
+</parameter>
+<parameter name="y_2">
+<parameter_description> the y coordinate of the second control point
+</parameter_description>
+</parameter>
+<parameter name="x_3">
+<parameter_description> the x coordinate of the third control point
+</parameter_description>
+</parameter>
+<parameter name="y_3">
+<parameter_description> the y coordinate of the third control point
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_rotate_get_center">
+<function name="clutter_path_add_line_to">
 <description>
-Retrieves the center of rotation set using
-clutter_behaviour_rotate_set_center().
+Adds a %CLUTTER_PATH_LINE_TO type node to the path. This causes the
+actor to move to the new coordinates in a straight line.
 
-Since: 0.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 <parameter name="x">
-<parameter_description> return location for the X center of rotation
+<parameter_description> the x coordinate
 </parameter_description>
 </parameter>
 <parameter name="y">
-<parameter_description> return location for the Y center of rotation
-</parameter_description>
-</parameter>
-<parameter name="z">
-<parameter_description> return location for the Z center of rotation
+<parameter_description> the y coordinate
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_load_from_file">
+<function name="clutter_path_add_move_to">
 <description>
-Loads the definitions from @filename into @script and merges with
-the currently loaded ones, if any.
+Adds a %CLUTTER_PATH_MOVE_TO type node to the path. This is usually
+used as the first node in a path. It can also be used in the middle
+of the path to cause the actor to jump to the new coordinate.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="filename">
-<parameter_description> the full path to the definition file
+<parameter name="x">
+<parameter_description> the x coordinate
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="y">
+<parameter_description> the y coordinate
 </parameter_description>
 </parameter>
 </parameters>
-<return> on error, zero is returned and @error is set
-accordingly. On success, the merge id for the UI definitions is
-returned. You can use the merge id with clutter_script_unmerge().
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_model_prepend">
+<function name="clutter_path_add_node">
 <description>
-Creates and prepends a new row to the #ClutterModel, setting the row
-values upon creation. For example, to prepend a new row where column 0
-is type %G_TYPE_INT and column 1 is of type %G_TYPE_STRING:
-
-&lt;informalexample&gt;&lt;programlisting&gt;
-ClutterModel *model;
-model = clutter_model_default_new (2,
-G_TYPE_INT,    &quot;Score&quot;,
-G_TYPE_STRING, &quot;Team&quot;);
-clutter_model_prepend (model, 0, 42, 1, &quot;Team #1&quot;, -1);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
+Adds @node to the end of the path.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> pairs of column number and value, terminated with -1
+<parameter name="node">
+<parameter_description> a #ClutterPathNode
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_x11_untrap_x_errors">
-<description>
-Removes the X error trap and returns the current status.
-
-Since: 0.4
-
-</description>
-<parameters>
-</parameters>
-<return> the trapped error code, or 0 for success
-
-</return>
-</function>
-
-<function name="clutter_animator_set">
+<function name="clutter_path_add_rel_curve_to">
 <description>
-Adds multiple keys to a #ClutterAnimator, specifying the value a given
-property should have at a given progress of the animation. The mode
-specified is the mode used when going to this key from the previous key of
-the @property_name
-
-If a given (object, property, progress) tuple already exist the mode and
-value will be replaced with the new values.
+Same as clutter_path_add_curve_to() except the coordinates are
+relative to the previous node.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="first_object">
-<parameter_description> a #GObject
+<parameter name="x_1">
+<parameter_description> the x coordinate of the first control point
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> the property to specify a key for
+<parameter name="y_1">
+<parameter_description> the y coordinate of the first control point
 </parameter_description>
 </parameter>
-<parameter name="first_mode">
-<parameter_description> the id of the alpha function to use
+<parameter name="x_2">
+<parameter_description> the x coordinate of the second control point
 </parameter_description>
 </parameter>
-<parameter name="first_progress">
-<parameter_description> at which stage of the animation this value applies; the
-range is a normalized floating point value between 0 and 1
+<parameter name="y_2">
+<parameter_description> the y coordinate of the second control point
 </parameter_description>
 </parameter>
-<parameter name="VarArgs">
-<parameter_description> the value first_property_name should have for first_object
-at first_progress, followed by more (object, property_name, mode,
-progress, value) tuples, followed by %NULL
+<parameter name="x_3">
+<parameter_description> the x coordinate of the third control point
+</parameter_description>
+</parameter>
+<parameter name="y_3">
+<parameter_description> the y coordinate of the third control point
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_media_get_subtitle_font_name">
+<function name="clutter_path_add_rel_line_to">
 <description>
-Retrieves the font name currently used.
+Same as clutter_path_add_line_to() except the coordinates are
+relative to the previous node.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> the x coordinate
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> the y coordinate
 </parameter_description>
 </parameter>
 </parameters>
-<return> a string containing the font name. Use g_free()
-to free the returned string
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_remove_key">
+<function name="clutter_path_add_rel_move_to">
 <description>
-Removes all keys matching the conditions specificed in the arguments.
+Same as clutter_path_add_move_to() except the coordinates are
+relative to the previous node.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject to search for, or %NULL for all
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> a specific property name to query for,
-or %NULL for all
+<parameter name="x">
+<parameter_description> the x coordinate
 </parameter_description>
 </parameter>
-<parameter name="progress">
-<parameter_description> a specific progress to search for or a negative value
-for all
+<parameter name="y">
+<parameter_description> the y coordinate
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_units_from_em">
+<function name="clutter_path_add_string">
 <description>
-Stores a value in em inside @units, using the default font
-name as returned by clutter_backend_get_font_name()
+Adds new nodes to the end of the path as described in @str. The
+format is a subset of the SVG path format. Each node is represented
+by a letter and is followed by zero, one or three pairs of
+coordinates. The coordinates can be separated by spaces or a
+comma. The types are:
+
+&lt;variablelist&gt;
+&lt;varlistentry&gt;&lt;term&gt;M&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+Adds a %CLUTTER_PATH_MOVE_TO node. Takes one pair of coordinates.
+&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;L&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+Adds a %CLUTTER_PATH_LINE_TO node. Takes one pair of coordinates.
+&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;C&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+Adds a %CLUTTER_PATH_CURVE_TO node. Takes three pairs of coordinates.
+&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;varlistentry&gt;&lt;term&gt;z&lt;/term&gt;
+&lt;listitem&gt;&lt;para&gt;
+Adds a %CLUTTER_PATH_CLOSE node. No coordinates are needed.
+&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
+&lt;/variablelist&gt;
+
+The M, L and C commands can also be specified in lower case which
+means the coordinates are relative to the previous node.
+
+For example, to move an actor in a 100 by 100 pixel square centered
+on the point 300,300 you could use the following path:
+
+&lt;informalexample&gt;
+&lt;programlisting&gt;
+M 250,350 l 0 -100 L 350,250 l 0 100 z
+&lt;/programlisting&gt;
+&lt;/informalexample&gt;
+
+If the path description isn't valid %FALSE will be returned and no
+nodes will be added.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="em">
-<parameter_description> em
+<parameter name="str">
+<parameter_description> a string describing the new nodes
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE is the path description was valid or %FALSE
+otherwise.
+
+</return>
 </function>
 
-<function name="clutter_x11_set_use_argb_visual">
+<function name="clutter_path_clear">
 <description>
-Sets whether the Clutter X11 backend should request ARGB visuals by default
-or not.
-
-By default, Clutter requests RGB visuals.
-
-&lt;note&gt;If no ARGB visuals are found, the X11 backend will fall back to
-requesting a RGB visual instead.&lt;/note&gt;
-
-ARGB visuals are required for the #ClutterStage:use-alpha property to work.
-
-&lt;note&gt;This function can only be called once, and before clutter_init() is
-called.&lt;/note&gt;
+Removes all nodes from the path.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="use_argb">
-<parameter_description> %TRUE if ARGB visuals should be requested by default
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_event_type">
+<function name="clutter_path_constraint_get_offset">
 <description>
-Retrieves the type of the event.
+Retrieves the offset along the #ClutterPath used by @constraint.
 
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="constraint">
+<parameter_description> a #ClutterPathConstraint
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterEventType
+<return> the offset
+
 </return>
 </function>
 
-<function name="json_array_ref">
+<function name="clutter_path_constraint_get_path">
 <description>
-Increase by one the reference count of a #JsonArray.
+Retrieves a pointer to the #ClutterPath used by @constraint.
 
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="constraint">
+<parameter_description> a #ClutterPathConstraint
 </parameter_description>
 </parameter>
 </parameters>
-<return> the passed #JsonArray, with the reference count
-increased by one.
+<return> the #ClutterPath used by the
+#ClutterPathConstraint, or %NULL. The returned #ClutterPath is owned
+by the constraint and it should not be unreferenced
+
 </return>
 </function>
 
-<function name="clutter_shader_get_vertex_source">
+<function name="clutter_path_constraint_new">
 <description>
-Query the current GLSL vertex source set on @shader.
+Creates a new #ClutterPathConstraint with the given @path and @offset
 
-Since: 0.6
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="path">
+<parameter_description> a #ClutterPath, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset along the #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
-<return> the source of the vertex shader for this
-ClutterShader object or %NULL. The returned string is owned by the
-shader object and should never be modified or freed
+<return> the newly created #ClutterPathConstraint
 
 </return>
 </function>
 
-<function name="clutter_text_get_editable">
+<function name="clutter_path_constraint_set_offset">
 <description>
-Retrieves whether a #ClutterText is editable or not.
+Sets the offset along the #ClutterPath used by @constraint.
 
-Since: 1.0
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="constraint">
+<parameter_description> a #ClutterPathConstraint
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset along the path
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the actor is editable
-
-</return>
+<return></return>
 </function>
 
-<function name="json_array_sized_new">
+<function name="clutter_path_constraint_set_path">
 <description>
-Creates a new #JsonArray with @n_elements slots already allocated.
+Sets the @path to be followed by the #ClutterPathConstraint.
+
+The @constraint will take ownership of the #ClutterPath passed to this
+function.
 
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="n_elements">
-<parameter_description> number of slots to pre-allocate
+<parameter name="constraint">
+<parameter_description> a #ClutterPathConstraint
+</parameter_description>
+</parameter>
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #JsonArray
-</return>
+<return></return>
 </function>
 
-<function name="clutter_timeline_rewind">
+<function name="clutter_path_foreach">
 <description>
-Rewinds #ClutterTimeline to the first frame if its direction is
-%CLUTTER_TIMELINE_FORWARD and the last frame if it is
-%CLUTTER_TIMELINE_BACKWARD.
+Calls a function for each node of the path.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
+<parameter name="callback">
+<parameter_description> the function to call with each node
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> user data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_new">
+<function name="clutter_path_get_description">
 <description>
-Creates a new #ClutterScript instance. #ClutterScript can be used
-to load objects definitions for scenegraph elements, like actors,
-or behavioural elements, like behaviours and timelines. The
-definitions must be encoded using the JavaScript Object Notation (JSON)
-language.
+Returns a newly allocated string describing the path in the same
+format as used by clutter_path_add_string().
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #ClutterScript instance. Use
-g_object_unref() when done.
+<return> a string description of the path. Free with g_free().
 
 </return>
 </function>
 
-<function name="clutter_behaviour_depth_get_bounds">
+<function name="clutter_path_get_length">
 <description>
-Gets the boundaries of the @behaviour
+Retrieves an approximation of the total length of the path.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="behaviour">
-<parameter_description> a #ClutterBehaviourDepth
-</parameter_description>
-</parameter>
-<parameter name="depth_start">
-<parameter_description> return location for the initial depth value, or %NULL
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="depth_end">
-<parameter_description> return location for the final depth value, or %NULL
+</parameters>
+<return> the length of the path.
+
+</return>
+</function>
+
+<function name="clutter_path_get_n_nodes">
+<description>
+Retrieves the number of nodes in the path.
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of nodes.
+
+</return>
 </function>
 
-<function name="clutter_stage_set_throttle_motion_events">
+<function name="clutter_path_get_node">
 <description>
-Sets whether motion events received between redraws should
-be throttled or not. If motion events are throttled, those
-events received by the windowing system between redraws will
-be compressed so that only the last event will be propagated
-to the @stage and its actors.
-
-This function should only be used if you want to have all
-the motion events delivered to your application code.
+Retrieves the node of the path indexed by @index.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="throttle">
-<parameter_description> %TRUE to throttle motion events
+<parameter name="index_">
+<parameter_description> the node number to retrieve
+</parameter_description>
+</parameter>
+<parameter name="node">
+<parameter_description> a location to store a copy of the node
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_binding_pool_get_for_class">
+<function name="clutter_path_get_nodes">
 <description>
-Retrieves the #ClutterBindingPool for the given #GObject class
-and, eventually, creates it. This function is a wrapper around
-clutter_binding_pool_new() and uses the class type name as the
-unique name for the binding pool.
-
-Calling this function multiple times will return the same
-#ClutterBindingPool.
-
-A binding pool for a class can also be retrieved using
-clutter_binding_pool_find() with the class type name:
-
-|[
-pool = clutter_binding_pool_find (G_OBJECT_TYPE_NAME (instance));
-]|
+Returns a #GSList of #ClutterPathNode&lt;!-- --&gt;s. The list should be
+freed with g_slist_free(). The nodes are owned by the path and
+should not be freed. Altering the path may cause the nodes in the
+list to become invalid so you should copy them if you want to keep
+the list.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="klass">
-<parameter_description> a #GObjectClass pointer
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
 </parameters>
-<return> the binding pool for the given class.
-The returned #ClutterBindingPool is owned by Clutter and should not
-be freed directly
+<return> a
+list of nodes in the path.
 
 </return>
 </function>
 
-<function name="clutter_container_class_list_child_properties">
+<function name="clutter_path_get_position">
 <description>
-Returns an array of #GParamSpec for all child properties.
+The value in @progress represents a position along the path where
+0.0 is the beginning and 1.0 is the end of the path. An
+interpolated position is then stored in @position.
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="klass">
-<parameter_description> a #GObjectClass implementing the #ClutterContainer interface.
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="n_properties">
-<parameter_description> return location for length of returned array.
+<parameter name="progress">
+<parameter_description> a position along the path as a fraction of its length
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> location to store the position
 </parameter_description>
 </parameter>
 </parameters>
-<return> an array
-of #GParamSpec&lt;!-- --&gt;s which should be freed after use.
+<return> index of the node used to calculate the position.
 
 </return>
 </function>
 
-<function name="clutter_layout_manager_get_preferred_height">
+<function name="clutter_path_insert_node">
 <description>
-Computes the minimum and natural heights of the @container according
-to @manager.
-
-See also clutter_actor_get_preferred_height()
+Inserts @node into the path before the node at the given offset. If
+@index_ is negative it will append the node to the end of the path.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="container">
-<parameter_description> the #ClutterContainer using @manager
-</parameter_description>
-</parameter>
-<parameter name="for_width">
-<parameter_description> the width for which the height should be computed, or -1
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="min_height_p">
-<parameter_description> return location for the minimum height
-of the layout, or %NULL
+<parameter name="index_">
+<parameter_description> offset of where to insert the node
 </parameter_description>
 </parameter>
-<parameter name="nat_height_p">
-<parameter_description> return location for the natural height
-of the layout, or %NULL
+<parameter name="node">
+<parameter_description> the node to insert
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_box_get_width">
+<function name="clutter_path_new">
 <description>
-Retrieves the width of the @box
+Creates a new #ClutterPath instance with no nodes.
+
+The object has a floating reference so if you add it to a
+#ClutterBehaviourPath then you do not need to unref it.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterActorBox
-</parameter_description>
-</parameter>
 </parameters>
-<return> the width of the box
+<return> the newly created #ClutterPath
 
 </return>
 </function>
 
-<function name="clutter_binding_pool_install_action">
+<function name="clutter_path_new_with_description">
 <description>
-Installs a new action inside a #ClutterBindingPool. The action
-is bound to @key_val and @modifiers.
-
-The same action name can be used for multiple @key_val, @modifiers
-pairs.
-
-When an action has been activated using clutter_binding_pool_activate()
-the passed @callback will be invoked (with @data).
+Creates a new #ClutterPath instance with the nodes described in
+@desc. See clutter_path_add_string() for details of the format of
+the string.
 
-Actions can be blocked with clutter_binding_pool_block_action()
-and then unblocked using clutter_binding_pool_unblock_action().
+The object has a floating reference so if you add it to a
+#ClutterBehaviourPath then you do not need to unref it.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="action_name">
-<parameter_description> the name of the action
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> bitmask of modifiers
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> function to be called when the action is activated
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to be passed to @callback
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> function to be called when the action is removed
-from the pool
+<parameter name="desc">
+<parameter_description> a string describing the path
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterPath
+
+</return>
 </function>
 
-<function name="clutter_score_list_timelines">
+<function name="clutter_path_node_copy">
 <description>
-Retrieves a list of all the #ClutterTimelines managed by @score.
+Makes an allocated copy of a node.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> a #ClutterScore
+<parameter name="node">
+<parameter_description> a #ClutterPathNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GSList
-containing all the timelines in the score. This function does not increase
-the reference count of the returned timelines. Use g_slist_free() on the
-returned list to deallocate its resources.
+<return> the copied node.
 
 </return>
 </function>
 
-<function name="clutter_event_get_click_count">
+<function name="clutter_path_node_equal">
 <description>
-Retrieves the number of clicks of @event
+Compares two nodes and checks if they are the same type with the
+same coordinates.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent of type %CLUTTER_BUTTON_PRESS or
-of type %CLUTTER_BUTTON_RELEASE
+<parameter name="node_a">
+<parameter_description> First node
+</parameter_description>
+</parameter>
+<parameter name="node_b">
+<parameter_description> Second node
 </parameter_description>
 </parameter>
 </parameters>
-<return> the click count
+<return> %TRUE if the nodes are the same.
 
 </return>
 </function>
 
-<function name="clutter_layout_meta_get_manager">
+<function name="clutter_path_node_free">
 <description>
-Retrieves the actor wrapped by @data
+Frees the memory of an allocated node.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="data">
-<parameter_description> a #ClutterLayoutMeta
+<parameter name="node">
+<parameter_description> a #ClutterPathNode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterLayoutManager
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_path_get_description">
+<function name="clutter_path_remove_node">
 <description>
-Returns a newly allocated string describing the path in the same
-format as used by clutter_path_add_string().
+Removes the node at the given offset from the path.
 
 Since: 1.0
 
@@ -10614,1226 +29275,1182 @@ Since: 1.0
 <parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
+<parameter name="index_">
+<parameter_description> index of the node to remove
+</parameter_description>
+</parameter>
 </parameters>
-<return> a string description of the path. Free with g_free().
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_stage">
+<function name="clutter_path_replace_node">
 <description>
-Retrieves the #ClutterStage where @actor is contained.
+Replaces the node at offset @index_ with @node.
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
+<parameter name="index_">
+<parameter_description> index to the existing node
+</parameter_description>
+</parameter>
+<parameter name="node">
+<parameter_description> the replacement node
 </parameter_description>
 </parameter>
 </parameters>
-<return> the stage containing the actor, or %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_flow_layout_get_homogeneous">
+<function name="clutter_path_set_description">
 <description>
-Retrieves whether the @layout is homogeneous
+Replaces all of the nodes in the path with nodes described by
+@str. See clutter_path_add_string() for details of the format.
 
-Since: 1.2
+If the string is invalid then %FALSE is returned and the path is
+unaltered.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+<parameter name="path">
+<parameter_description> a #ClutterPath
+</parameter_description>
+</parameter>
+<parameter name="str">
+<parameter_description> a string describing the path
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterFlowLayout is homogeneous
+<return> %TRUE is the path was valid, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="clutter_param_spec_units">
+<function name="clutter_path_to_cairo_path">
 <description>
-Creates a #GParamSpec for properties using #ClutterUnits.
+Add the nodes of the ClutterPath to the path in the Cairo context.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> name of the property
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> short name
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description (can be translatable)
-</parameter_description>
-</parameter>
-<parameter name="default_type">
-<parameter_description> the default type for the #ClutterUnits
-</parameter_description>
-</parameter>
-<parameter name="minimum">
-<parameter_description> lower boundary
-</parameter_description>
-</parameter>
-<parameter name="maximum">
-<parameter_description> higher boundary
+<parameter name="path">
+<parameter_description> a #ClutterPath
 </parameter_description>
 </parameter>
-<parameter name="default_value">
-<parameter_description> default value
+<parameter name="cr">
+<parameter_description> a Cairo context
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the param spec
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_pipeline_node_new">
+<description>
+Creates a new #ClutterPaintNode that will use the @pipeline to
+paint its contents.
+
+This function will acquire a reference on the passed @pipeline,
+so it is safe to call cogl_object_unref() when it returns.
+
+Since: 1.10
+
+</description>
+<parameters>
+<parameter name="pipeline">
+<parameter_description> a Cogl pipeline state object, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GParamSpec
+<return> the newly created #ClutterPaintNode.
+Use clutter_paint_node_unref() when done.
 
 </return>
 </function>
 
-<function name="clutter_x11_has_event_retrieval">
+<function name="clutter_point_alloc">
 <description>
-Queries the X11 backend to check if event collection has been disabled.
+Allocates a new #ClutterPoint.
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
 </parameters>
-<return> TRUE if event retrival has been disabled. FALSE otherwise.
+<return> the newly allocated #ClutterPoint.
+Use clutter_point_free() to free its resources.
 
 </return>
 </function>
 
-<function name="clutter_event_get_device">
+<function name="clutter_point_copy">
 <description>
-Retrieves the #ClutterInputDevice for the event.
-
-The #ClutterInputDevice structure is completely opaque and should
-be cast to the platform-specific implementation.
+Creates a new #ClutterPoint with the same coordinates of @point.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="point">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterInputDevice or %NULL
+<return> a newly allocated #ClutterPoint.
+Use clutter_point_free() to free its resources.
 
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_set_width">
+<function name="clutter_point_distance">
 <description>
-Sets the width of the elliptical path.
+Computes the distance between two #ClutterPoint.
 
-Since: 0.4
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="a">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
-<parameter name="width">
-<parameter_description> width of the ellipse
+<parameter name="b">
+<parameter_description> a #ClutterPoint
+</parameter_description>
+</parameter>
+<parameter name="x_distance">
+<parameter_description> return location for the horizontal
+distance between the points
+</parameter_description>
+</parameter>
+<parameter name="y_distance">
+<parameter_description> return location for the vertical
+distance between the points
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the distance between the points.
+
+</return>
 </function>
 
-<function name="clutter_x11_get_current_event_time">
+<function name="clutter_point_equals">
 <description>
-Retrieves the timestamp of the last X11 event processed by
-Clutter. This might be different from the timestamp returned
-by clutter_get_current_event_time(), as Clutter may synthesize
-or throttle events.
+Compares two #ClutterPoint for equality.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
+<parameter name="a">
+<parameter_description> the first #ClutterPoint to compare
+</parameter_description>
+</parameter>
+<parameter name="b">
+<parameter_description> the second #ClutterPoint to compare
+</parameter_description>
+</parameter>
 </parameters>
-<return> a timestamp, in milliseconds
+<return> %TRUE if the #ClutterPoints are equal
 
 </return>
 </function>
 
-<function name="clutter_stage_get_key_focus">
+<function name="clutter_point_free">
 <description>
-Retrieves the actor that is currently under key focus.
+Frees the resources allocated for @point.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> the #ClutterStage
+<parameter name="point">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
 </parameters>
-<return> the actor with key focus, or the stage
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animation_set_duration">
+<function name="clutter_point_init">
 <description>
-Sets the duration of @animation in milliseconds.
-
-This function will set #ClutterAnimation:alpha and
-#ClutterAnimation:timeline if needed.
+Initializes @point with the given coordinates.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="point">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
-<parameter name="msecs">
-<parameter_description> the duration in milliseconds
+<parameter name="x">
+<parameter_description> the X coordinate of the point
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> the Y coordinate of the point
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the initialized #ClutterPoint
+
+</return>
 </function>
 
-<function name="clutter_text_get_text">
+<function name="clutter_point_zero">
 <description>
-Retrieves a pointer to the current contents of a #ClutterText
-actor.
+A point centered at (0, 0).
 
-If you need a copy of the contents for manipulating, either
-use g_strdup() on the returned string, or use:
+The returned value can be used as a guard.
 
-|[
-copy = clutter_text_get_chars (text, 0, -1);
-]|
+Since: 1.12
 
-Which will return a newly allocated string.
+</description>
+<parameters>
+</parameters>
+<return> a point centered in (0, 0); the returned #ClutterPoint
+is owned by Clutter and it should not be modified or freed.
 
-Since: 1.0
+</return>
+</function>
+
+<function name="clutter_property_transition_get_property_name">
+<description>
+Retrieves the value of the #ClutterPropertyTransition:property-name
+property.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="transition">
+<parameter_description> a #ClutterPropertyTransition
 </parameter_description>
 </parameter>
 </parameters>
-<return> the contents of the actor. The returned string
-is owned by the #ClutterText actor and should never be
-modified or freed
+<return> the name of the property being animated, or %NULL if
+none is set. The returned string is owned by the @transition and
+it should not be freed.
 
 </return>
 </function>
 
-<function name="clutter_behaviour_path_new_with_description">
+<function name="clutter_property_transition_new">
 <description>
-Creates a new path behaviour using the path described by @desc. See
-clutter_path_add_string() for a description of the format.
+Creates a new #ClutterPropertyTransition.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha
-</parameter_description>
-</parameter>
-<parameter name="desc">
-<parameter_description> a string description of the path
+<parameter name="property_name">
+<parameter_description> a property of @animatable, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterBehaviour
+<return> the newly created #ClutterPropertyTransition.
+Use g_object_unref() when done
 
 </return>
 </function>
 
-<function name="json_node_set_int">
+<function name="clutter_property_transition_set_property_name">
 <description>
-Sets @value as the integer content of the @node, replacing any existing
-content.
+Sets the #ClutterPropertyTransition:property-name property of @transition.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
+<parameter name="transition">
+<parameter_description> a #ClutterPropertyTransition
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> an integer value
+<parameter name="property_name">
+<parameter_description> a property name
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_get_array">
+<function name="clutter_rect_alloc">
 <description>
-Retrieves the #JsonArray stored inside a #JsonNode
+Creates a new, empty #ClutterRect.
+
+You can use clutter_rect_init() to initialize the returned rectangle,
+for instance:
+
+|[
+rect = clutter_rect_init (clutter_rect_alloc (), x, y, width, height);
+]|
 
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #JsonArray
+<return> the newly allocated #ClutterRect.
+Use clutter_rect_free() to free its resources
+
 </return>
 </function>
 
-<function name="clutter_model_set_types">
+<function name="clutter_rect_clamp_to_pixel">
 <description>
-Sets the types of the columns inside a #ClutterModel.
-
-This function is meant primarily for #GObjects that inherit from
-#ClutterModel, and should only be used when contructing a #ClutterModel.
-It will not work after the initial creation of the #ClutterModel.
+Rounds the origin of @rect downwards to the nearest integer, and rounds
+the size of @rect upwards to the nearest integer, so that @rect is
+updated to the smallest rectangle capable of fully containing the
+original, fractional rectangle.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="n_columns">
-<parameter_description> number of columns for the model
-</parameter_description>
-</parameter>
-<parameter name="types">
-<parameter_description> an array of #GType types
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_knot_equal">
+<function name="clutter_rect_contains_point">
 <description>
-Compares to knot and checks if the point to the same location.
+Checks whether @point is contained by @rect, after normalizing the
+rectangle.
 
-Since: 0.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="knot_a">
-<parameter_description> First knot
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="knot_b">
-<parameter_description> Second knot
+<parameter name="point">
+<parameter_description> the point to check
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the knots point to the same location.
+<return> %TRUE if the @point is contained by @rect.
 
 </return>
 </function>
 
-<function name="clutter_shader_compile">
+<function name="clutter_rect_contains_rect">
 <description>
-Compiles and links GLSL sources set for vertex and fragment shaders for
-a #ClutterShader. If the compilation fails and a #GError return location is
-provided the error will contain the errors from the compiler, if any.
+Checks whether @a contains @b.
 
-Since: 0.8
+The first rectangle contains the second if the union of the
+two #ClutterRect is equal to the first rectangle.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="a">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="b">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return> returns TRUE if the shader was succesfully compiled.
+<return> %TRUE if the first rectangle contains the second.
 
 </return>
 </function>
 
-<function name="clutter_backend_set_resolution">
+<function name="clutter_rect_copy">
 <description>
-Sets the resolution for font handling on the screen. This is a
-scale factor between points specified in a #PangoFontDescription
-and cairo units. The default value is 96, meaning that a 10 point
-font will be 13 units high. (10 * 96. / 72. = 13.3).
-
-Applications should never need to call this function.
+Copies @rect into a new #ClutterRect instance.
 
-Since: 0.4
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
-</parameter_description>
-</parameter>
-<parameter name="dpi">
-<parameter_description> the resolution in &quot;dots per inch&quot; (Physical inches aren't
-actually involved; the terminology is conventional).
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly allocate copy of @rect.
+Use clutter_rect_free() to free the associated resources
+
+</return>
 </function>
 
-<function name="clutter_layout_manager_allocate">
+<function name="clutter_rect_equals">
 <description>
-Allocates the children of @container given an area
+Checks whether @a and @b are equals.
 
-See also clutter_actor_allocate()
+This function will normalize both @a and @b before comparing
+their origin and size.
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="container">
-<parameter_description> the #ClutterContainer using @manager
+<parameter name="a">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="allocation">
-<parameter_description> the #ClutterActorBox containing the allocated area
-of @container
+<parameter name="b">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> the allocation flags
+</parameters>
+<return> %TRUE if the rectangles match in origin and size.
+
+</return>
+</function>
+
+<function name="clutter_rect_free">
+<description>
+Frees the resources allocated by @rect.
+
+Since: 1.12
+
+</description>
+<parameters>
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_get_preferred_width">
+<function name="clutter_rect_get_center">
 <description>
-Computes the requested minimum and natural widths for an actor,
-optionally depending on the specified height, or if they are
-already computed, returns the cached values.
-
-An actor may not get its request - depending on the layout
-manager that's in effect.
+Retrieves the center of @rect, after normalizing the rectangle,
+and updates @center with the correct coordinates.
 
-A request should not incorporate the actor's scale or anchor point;
-those transformations do not affect layout, only rendering.
-
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="for_height">
-<parameter_description> available height when computing the preferred width,
-or a negative value to indicate that no height is defined
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="min_width_p">
-<parameter_description> return location for minimum width,
-or %NULL
+<parameter name="center">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
-<parameter name="natural_width_p">
-<parameter_description> return location for the natural
-width, or %NULL
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_rect_get_height">
+<description>
+Retrieves the height of @rect.
+
+Since: 1.12
+
+</description>
+<parameters>
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the height of the rectangle
+
+</return>
 </function>
 
-<function name="clutter_box_layout_get_easing_duration">
+<function name="clutter_rect_get_width">
 <description>
-Retrieves the duration set using clutter_box_layout_set_easing_duration()
+Retrieves the width of @rect.
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return> the duration of the animations, in milliseconds
+<return> the width of the rectangle
 
 </return>
 </function>
 
-<function name="clutter_script_get_type_from_name">
+<function name="clutter_rect_get_x">
 <description>
-Looks up a type by name, using the virtual function that 
-#ClutterScript has for that purpose. This function should
-rarely be used.
+Retrieves the X coordinate of the origin of @rect.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
-</parameter_description>
-</parameter>
-<parameter name="type_name">
-<parameter_description> name of the type to look up
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return> the type for the requested type name, or
-%G_TYPE_INVALID if not corresponding type was found.
+<return> the X coordinate of the origin of the rectangle
 
 </return>
 </function>
 
-<function name="clutter_texture_get_base_size">
+<function name="clutter_rect_get_y">
 <description>
-Gets the size in pixels of the untransformed underlying image
+Retrieves the Y coordinate of the origin of @rect.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> return location for the width, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> return location for the height, or %NULL
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the Y coordinate of the origin of the rectangle
+
+</return>
 </function>
 
-<function name="clutter_frame_source_add_full">
+<function name="clutter_rect_init">
 <description>
-Sets a function to be called at regular intervals with the given
-priority.  The function is called repeatedly until it returns
-%FALSE, at which point the timeout is automatically destroyed and
-the function will not be called again.  The @notify function is
-called when the timeout is destroyed.  The first call to the
-function will be at the end of the first @interval.
-
-This function is similar to g_timeout_add_full() except that it
-will try to compensate for delays. For example, if @func takes half
-the interval time to execute then the function will be called again
-half the interval time after it finished. In contrast
-g_timeout_add_full() would not fire until a full interval after the
-function completes so the delay between calls would be 1.0 / @fps *
-1.5. This function does not however try to invoke the function
-multiple times to catch up missing frames if @func takes more than
-@interval ms to execute.
+Initializes a #ClutterRect with the given origin and size.
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the frame source. Typically this will be in the
-range between %G_PRIORITY_DEFAULT and %G_PRIORITY_HIGH.
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="fps">
-<parameter_description> the number of times per second to call the function
+<parameter name="x">
+<parameter_description> X coordinate of the origin
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> function to call
+<parameter name="y">
+<parameter_description> Y coordinate of the origin
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
+<parameter name="width">
+<parameter_description> width of the rectangle
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> function to call when the timeout source is removed
+<parameter name="height">
+<parameter_description> height of the rectangle
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> the updated rectangle
 
 </return>
 </function>
 
-<function name="clutter_backend_get_resolution">
+<function name="clutter_rect_inset">
 <description>
-Gets the resolution for font handling on the screen; see
-clutter_backend_set_resolution() for full details.
-
-Since: 0.4
+Normalizes the @rect and offsets its origin by the @d_x and @d_y values;
+the size is adjusted by (2 * @d_x, 2 * @d_y).
 
-</description>
-<parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
-</parameter_description>
-</parameter>
-</parameters>
-<return> the current resolution, or -1 if no resolution
-has been set.
+If @d_x and @d_y are positive the size of the rectangle is decreased; if
+the values are negative, the size of the rectangle is increased.
 
-</return>
-</function>
+If the resulting rectangle has a negative width or height, the size is
+set to 0.
 
-<function name="json_array_add_element">
-<description>
-Appends @node inside @array. The array will take ownership of the
-#JsonNode.
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="d_x">
+<parameter_description> an horizontal value; a positive @d_x will create an inset rectangle,
+and a negative value will create a larger rectangle
+</parameter_description>
+</parameter>
+<parameter name="d_y">
+<parameter_description> a vertical value; a positive @d_x will create an inset rectangle,
+and a negative value will create a larger rectangle
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_lookup_filename">
+<function name="clutter_rect_intersection">
 <description>
-Looks up @filename inside the search paths of @script. If @filename
-is found, its full path will be returned .
+Computes the intersection of @a and @b, and places it in @res, if @res
+is not %NULL.
 
-Since: 0.8
+This function will normalize both @a and @b prior to computing their
+intersection.
+
+This function can be used to simply check if the intersection of @a and @b
+is not empty, by using %NULL for @res.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
+<parameter name="a">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="filename">
-<parameter_description> the name of the file to lookup
+<parameter name="b">
+<parameter_description> a #ClutterRect
+</parameter_description>
+</parameter>
+<parameter name="res">
+<parameter_description> a #ClutterRect, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the full path of @filename or %NULL if no path was
-found.
+<return> %TRUE if the intersection of @a and @b is not empty
 
 </return>
 </function>
 
-<function name="clutter_container_foreach_with_internals">
+<function name="clutter_rect_normalize">
 <description>
-Calls @callback for each child of @container, including &quot;internal&quot;
-children built in to the container itself that were never added
-by the application.
+Normalizes a #ClutterRect.
 
-Since: 1.0
+A #ClutterRect is defined by the area covered by its size; this means
+that a #ClutterRect with #ClutterRect.origin in [ 0, 0 ] and a
+#ClutterRect.size of [ 10, 10 ] is equivalent to a #ClutterRect with
+#ClutterRect.origin in [ 10, 10 ] and a #ClutterRect.size of [ -10, -10 ].
+
+This function is useful to ensure that a rectangle has positive width
+and height; it will modify the passed @rect and normalize its size.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> a function to be called for each child
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> data to be passed to the function, or %NULL
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_iter_get_valist">
+<function name="clutter_rect_offset">
 <description>
-See clutter_model_iter_get(). This version takes a va_list for language
-bindings.
+Offsets the origin of @rect by the given values, after normalizing
+the rectangle.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> a list of column/return location pairs, terminated by -1
+<parameter name="d_x">
+<parameter_description> the horizontal offset value
+</parameter_description>
+</parameter>
+<parameter name="d_y">
+<parameter_description> the vertical offset value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_container_add">
+<function name="clutter_rect_union">
 <description>
-Adds a list of #ClutterActor&lt;!-- --&gt;s to @container. Each time and
-actor is added, the &quot;actor-added&quot; signal is emitted. Each actor should
-be parented to @container, which takes a reference on the actor. You
-cannot add a #ClutterActor to more than one #ClutterContainer.
+Computes the smallest possible rectangle capable of fully containing
+both @a and @b, and places it into @res.
 
-Since: 0.4
+This function will normalize both @a and @b prior to computing their
+union.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
+<parameter name="a">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="first_actor">
-<parameter_description> the first #ClutterActor to add
+<parameter name="b">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> %NULL terminated list of actors to add
+<parameter name="res">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_get_length">
+<function name="clutter_rect_zero">
 <description>
-Retrieves an approximation of the total length of the path.
+A #ClutterRect with #ClutterRect.origin set at (0, 0) and a size
+of 0.
 
-Since: 1.0
+The returned value can be used as a guard.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
-</parameter_description>
-</parameter>
 </parameters>
-<return> the length of the path.
+<return> a rectangle with origin in (0, 0) and a size of 0.
+The returned #ClutterRect is owned by Clutter and it should not
+be modified or freed.
 
 </return>
 </function>
 
-<function name="clutter_text_get_line_wrap">
+<function name="clutter_rectangle_get_border_color">
 <description>
-Retrieves the value set using clutter_text_set_line_wrap().
+Gets the color of the border used by @rectangle and places
+it into @color.
 
-Since: 1.0
+Since: 0.2
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
+</parameter_description>
+</parameter>
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterText actor should wrap
-its contents
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animation_set_object">
+<function name="clutter_rectangle_get_border_width">
 <description>
-Attaches @animation to @object. The #ClutterAnimation will take a
-reference on @object.
+Gets the width (in pixels) of the border used by @rectangle
 
-Since: 1.0
+Since: 0.2
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the border's width
+
+</return>
 </function>
 
-<function name="json_node_set_array">
+<function name="clutter_rectangle_get_color">
 <description>
-Sets @array inside @node and increases the #JsonArray reference count
+Retrieves the color of @rectangle.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
 </parameter_description>
 </parameter>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_box_get_height">
+<function name="clutter_rectangle_new">
 <description>
-Retrieves the height of the @box
+Creates a new #ClutterActor with a rectangular shape.
 
-Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterActorBox
-</parameter_description>
-</parameter>
 </parameters>
-<return> the height of the box
-
+<return> a new #ClutterActor
 </return>
 </function>
 
-<function name="json_object_set_object_member">
+<function name="clutter_rectangle_new_with_color">
 <description>
-Convenience function for setting an object @value of
-@member_name inside @object.
-
-The @object will take ownership of the passed #JsonObject
-
-See also: json_object_set_member()
+Creates a new #ClutterActor with a rectangular shape
+and of the given @color.
 
-Since: 0.8
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value of the member
+<parameter name="color">
+<parameter_description> a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a new #ClutterActor
+</return>
 </function>
 
-<function name="clutter_score_get_loop">
+<function name="clutter_rectangle_set_border_color">
 <description>
-Gets whether @score is looping
-
-Since: 0.6
+Sets the color of the border used by @rectangle using @color
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> a #ClutterScore
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
+</parameter_description>
+</parameter>
+<parameter name="color">
+<parameter_description> the color of the border
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the score is looping
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_backend_get_double_click_time">
+<function name="clutter_rectangle_set_border_width">
 <description>
-Gets the maximum time between two button press events, as set
-by clutter_backend_set_double_click_time().
+Sets the width (in pixel) of the border used by @rectangle.
+A @width of 0 will unset the border.
 
-Since: 0.4
+Since: 0.2
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
 </parameter_description>
 </parameter>
-</parameters>
-<return> a time in milliseconds
-
-</return>
+<parameter name="width">
+<parameter_description> the width of the border
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
 </function>
 
-<function name="json_node_take_array">
+<function name="clutter_rectangle_set_color">
 <description>
-Sets @array into @node without increasing the #JsonArray reference count.
+Sets the color of @rectangle.
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="rectangle">
+<parameter_description> a #ClutterRectangle
 </parameter_description>
 </parameter>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="color">
+<parameter_description> a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_cursor_position">
+<function name="clutter_redraw">
 <description>
-Retrieves the cursor position.
+Forces a redraw of the entire stage. Applications should never use this
+function, but queue a redraw using clutter_actor_queue_redraw().
 
-Since: 1.0
+This function should only be used by libraries integrating Clutter from
+within another toolkit.
+
+Deprecated: 1.10: Use clutter_stage_ensure_redraw() instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
 </parameters>
-<return> the cursor position, in characters
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_container_find_child_by_name">
+<function name="clutter_rotate_action_new">
 <description>
-Finds a child actor of a container by its name. Search recurses
-into any child container.
+Creates a new #ClutterRotateAction instance
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="child_name">
-<parameter_description> the name of the requested child.
-</parameter_description>
-</parameter>
 </parameters>
-<return> The child actor with the requested name,
-or %NULL if no actor with that name was found.
+<return> the newly created #ClutterRotateAction
 
 </return>
 </function>
 
-<function name="clutter_model_iter_get_model">
+<function name="clutter_score_append">
 <description>
-Retrieves a pointer to the #ClutterModel that this iter is part of.
+Appends a timeline to another one existing in the score; the newly
+appended timeline will be started when @parent is complete.
+
+If @parent is %NULL, the new #ClutterTimeline will be started when
+clutter_score_start() is called.
+
+#ClutterScore will take a reference on @timeline.
 
 Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="score">
+<parameter_description> a #ClutterScore
+</parameter_description>
+</parameter>
+<parameter name="parent">
+<parameter_description> a #ClutterTimeline in the score, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to a #ClutterModel.
+<return> the id of the #ClutterTimeline inside the score, or
+0 on failure. The returned id can be used with clutter_score_remove()
+or clutter_score_get_timeline().
 
 </return>
 </function>
 
-<function name="json_array_add_string_element">
+<function name="clutter_score_append_at_marker">
 <description>
-Conveniently adds a string @value into @array
+Appends @timeline at the given @marker_name on the @parent
+#ClutterTimeline.
+
+If you want to append @timeline at the end of @parent, use
+clutter_score_append().
 
-See also: json_array_add_element(), json_node_set_string()
+The #ClutterScore will take a reference on @timeline.
 
 Since: 0.8
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a string value
+<parameter name="parent">
+<parameter_description> the parent #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="marker_name">
+<parameter_description> the name of the marker to use
+</parameter_description>
+</parameter>
+<parameter name="timeline">
+<parameter_description> the #ClutterTimeline to append
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the id of the #ClutterTimeline inside the score, or
+0 on failure. The returned id can be used with clutter_score_remove()
+or clutter_score_get_timeline().
+
+</return>
 </function>
 
-<function name="clutter_animation_update_interval">
+<function name="clutter_score_get_loop">
 <description>
-Changes the @interval for @property_name. The #ClutterAnimation
-will take ownership of the passed #ClutterInterval.
+Gets whether @score is looping
 
-Since: 1.0
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> name of the property
-</parameter_description>
-</parameter>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the score is looping
+
+</return>
 </function>
 
-<function name="clutter_text_set_font_name">
+<function name="clutter_score_get_timeline">
 <description>
-Sets the font used by a #ClutterText. The @font_name string
-must either be %NULL, which means that the font name from the
-default #ClutterBackend will be used; or be something that can
-be parsed by the pango_font_description_from_string() function,
-like:
-
-|[
-clutter_text_set_font_name (text, &quot;Sans 10pt&quot;);
-clutter_text_set_font_name (text, &quot;Serif 16px&quot;);
-clutter_text_set_font_name (text, &quot;Helvetica 10&quot;);
-]|
+Retrieves the #ClutterTimeline for @id_ inside @score.
 
-Since: 1.0
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
-<parameter name="font_name">
-<parameter_description> a font name, or %NULL to set the default font name
+<parameter name="id_">
+<parameter_description> the id of the timeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the requested timeline, or %NULL. This
+function does not increase the reference count on the returned
+#ClutterTimeline
+
+</return>
 </function>
 
-<function name="clutter_actor_get_scale_center">
+<function name="clutter_score_is_playing">
 <description>
-Retrieves the scale center coordinate in pixels relative to the top
-left corner of the actor. If the scale center was specified using a
-#ClutterGravity this will calculate the pixel offset using the
-current size of the actor.
+Query state of a #ClutterScore instance.
 
-Since: 1.0
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="center_x">
-<parameter_description> Location to store the X position
-of the scale center, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="center_y">
-<parameter_description> Location to store the Y position
-of the scale center, or %NULL.
+<parameter name="score">
+<parameter_description> A #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if score is currently playing
+
+</return>
 </function>
 
-<function name="json_node_get_object">
+<function name="clutter_score_list_timelines">
 <description>
-Retrieves the #JsonObject stored inside a #JsonNode
+Retrieves a list of all the #ClutterTimelines managed by @score.
 
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #JsonObject
+<return> a
+#GSList containing all the timelines in the score. This function does
+not increase the reference count of the returned timelines. Use
+g_slist_free() on the returned list to deallocate its resources.
+
 </return>
 </function>
 
-<function name="clutter_model_get_n_rows">
+<function name="clutter_score_new">
 <description>
-Retrieves the number of rows inside @model, eventually taking
-into account any filtering function set using clutter_model_set_filter().
+Creates a new #ClutterScore. A #ClutterScore is an object that can
+hold multiple #ClutterTimeline&lt;!-- --&gt;s in a sequential order.
 
 Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
 </parameters>
-<return> The length of the @model. If there is a filter set, then
-the length of the filtered @model is returned.
+<return> the newly created #ClutterScore. Use g_object_unref()
+when done.
 
 </return>
 </function>
 
-<function name="clutter_text_set_justify">
+<function name="clutter_score_pause">
 <description>
-Sets whether the text of the #ClutterText actor should be justified
-on both margins. This setting is ignored if Clutter is compiled
-against Pango &lt; 1.18.
+Pauses a playing score @score.
 
-Since: 1.0
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="justify">
-<parameter_description> whether the text should be justified
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_texture_set_area_from_rgb_data">
+<function name="clutter_score_remove">
 <description>
-Updates a sub-region of the pixel data in a #ClutterTexture.
+Removes the #ClutterTimeline with the given id inside @score. If
+the timeline has other timelines attached to it, those are removed
+as well.
 
 Since: 0.6
+Deprecated: 1.8
 
-</description>
-<parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> Image data in RGB type colorspace.
-</parameter_description>
-</parameter>
-<parameter name="has_alpha">
-<parameter_description> Set to TRUE if image data has an alpha channel.
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> X coordinate of upper left corner of region to update.
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> Y coordinate of upper left corner of region to update.
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> Width in pixels of region to update.
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> Height in pixels of region to update.
-</parameter_description>
-</parameter>
-<parameter name="rowstride">
-<parameter_description> Distance in bytes between row starts on source buffer.
-</parameter_description>
-</parameter>
-<parameter name="bpp">
-<parameter_description> bytes per pixel (Currently only 3 and 4 supported,
-depending on @has_alpha)
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> #ClutterTextureFlags
+</description>
+<parameters>
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="id_">
+<parameter_description> the id of the timeline to remove
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_shader_get_cogl_fragment_shader">
+<function name="clutter_score_remove_all">
 <description>
-Retrieves the underlying #CoglHandle for the fragment shader.
+Removes all the timelines inside @score.
 
-Since: 1.0
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="score">
+<parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #CoglHandle for the fragment shader, or %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_stage_manager_get_default_stage">
+<function name="clutter_score_rewind">
 <description>
-Returns the default #ClutterStage.
+Rewinds a #ClutterScore to its initial state.
 
-Since: 0.8
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="stage_manager">
-<parameter_description> a #ClutterStageManager
+<parameter name="score">
+<parameter_description> A #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
-<return> the default stage. The returned object
-is owned by Clutter and you should never reference or unreference it
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_score_append_at_marker">
+<function name="clutter_score_set_loop">
 <description>
-Appends @timeline at the given @marker_name on the @parent
-#ClutterTimeline.
-
-If you want to append @timeline at the end of @parent, use
-clutter_score_append().
-
-The #ClutterScore will take a reference on @timeline.
+Sets whether @score should loop. A looping #ClutterScore will start
+from its initial state after the ::complete signal has been fired.
 
-Since: 0.8
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
@@ -11841,370 +30458,327 @@ Since: 0.8
 <parameter_description> a #ClutterScore
 </parameter_description>
 </parameter>
-<parameter name="parent">
-<parameter_description> the parent #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="marker_name">
-<parameter_description> the name of the marker to use
-</parameter_description>
-</parameter>
-<parameter name="timeline">
-<parameter_description> the #ClutterTimeline to append
+<parameter name="loop">
+<parameter_description> %TRUE for enable looping
 </parameter_description>
 </parameter>
 </parameters>
-<return> the id of the #ClutterTimeline inside the score, or
-0 on failure. The returned id can be used with clutter_score_remove()
-or clutter_score_get_timeline().
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_move_anchor_point_from_gravity">
+<function name="clutter_score_start">
 <description>
-Sets an anchor point on the actor based on the given gravity, adjusting the
-actor postion so that its relative position within its parent remains
-unchanged.
-
-Since version 1.0 the anchor point will be stored as a gravity so
-that if the actor changes size then the anchor point will move. For
-example, if you set the anchor point to %CLUTTER_GRAVITY_SOUTH_EAST
-and later double the size of the actor, the anchor point will move
-to the bottom right.
+Starts the score.
 
 Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="gravity">
-<parameter_description> #ClutterGravity.
+<parameter name="score">
+<parameter_description> A #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_set_depth">
+<function name="clutter_score_stop">
 <description>
-Sets the Z coordinate of @self to @depth.
+Stops and rewinds a playing #ClutterScore instance.
 
-The unit used by @depth is dependant on the perspective setup. See
-also clutter_stage_set_perspective().
+Since: 0.6
+Deprecated: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="depth">
-<parameter_description> Z co-ord
+<parameter name="score">
+<parameter_description> A #ClutterScore
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_set_fullscreen">
+<function name="clutter_script_add_search_paths">
 <description>
-Asks to place the stage window in the fullscreen or unfullscreen
-states.
-
- ( Note that you shouldn't assume the window is definitely full screen
-afterward, because other entities (e.g. the user or window manager)
-could unfullscreen it again, and not all window managers honor
-requests to fullscreen windows.
+Adds @paths to the list of search paths held by @script.
 
-If you want to receive notification of the fullscreen state you
-should either use the #ClutterStage::fullscreen and
-#ClutterStage::unfullscreen signals, or use the notify signal
-for the #ClutterStage:fullscreen-set property
+The search paths are used by clutter_script_lookup_filename(), which
+can be used to define search paths for the textures source file name
+or other custom, file-based properties.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="fullscreen">
-<parameter_description> %TRUE to to set the stage fullscreen
+<parameter name="paths">
+<parameter_description> an array of strings containing
+different search paths
+</parameter_description>
+</parameter>
+<parameter name="n_paths">
+<parameter_description> the length of the passed array
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_set_string">
+<function name="clutter_script_add_states">
 <description>
-Sets @value as the string content of the @node, replacing any existing
-content.
+Associates a #ClutterState to the #ClutterScript instance using the given
+name.
+
+The #ClutterScript instance will use @state to resolve target states when
+connecting signal handlers.
+
+The #ClutterScript instance will take a reference on the #ClutterState
+passed to this function.
+
+Since: 1.8
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a string value
+<parameter name="name">
+<parameter_description> a name for the @state, or %NULL to
+set the default #ClutterState
+</parameter_description>
+</parameter>
+<parameter name="state">
+<parameter_description> a #ClutterState
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_dup_object">
+<function name="clutter_script_connect_signals">
 <description>
-Retrieves the #JsonObject inside @node. The reference count of
-the returned object is increased.
+Connects all the signals defined into a UI definition file to their
+handlers.
+
+This method invokes clutter_script_connect_signals_full() internally
+and uses  #GModule's introspective features (by opening the current
+module's scope) to look at the application's symbol table.
+
+Note that this function will not work if #GModule is not supported by
+the platform Clutter is running on.
 
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="script">
+<parameter_description> a #ClutterScript
+</parameter_description>
+</parameter>
+<parameter name="user_data">
+<parameter_description> data to be passed to the signal handlers, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #JsonObject
-</return>
+<return></return>
 </function>
 
-<function name="clutter_bin_layout_add">
+<function name="clutter_script_connect_signals_full">
 <description>
-Adds a #ClutterActor to the container using @self and
-sets the alignment policies for it
+Connects all the signals defined into a UI definition file to their
+handlers.
 
-This function is equivalent to clutter_container_add_actor()
-and clutter_layout_manager_child_set_property() but it does not
-require a pointer to the #ClutterContainer associated to the
-#ClutterBinLayout
+This function allows to control how the signal handlers are
+going to be connected to their respective signals. It is meant
+primarily for language bindings to allow resolving the function
+names using the native API, but it can also be used on platforms
+that do not support GModule.
 
-Since: 1.2
+Applications should use clutter_script_connect_signals().
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBinLayout
-</parameter_description>
-</parameter>
-<parameter name="child">
-<parameter_description> a #ClutterActor
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="x_align">
-<parameter_description> horizontal alignment policy for @child
+<parameter name="func">
+<parameter_description> signal connection function
 </parameter_description>
 </parameter>
-<parameter name="y_align">
-<parameter_description> vertical alignment policy for @child
+<parameter name="user_data">
+<parameter_description> data to be passed to the signal handlers, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_node_free">
+<function name="clutter_script_ensure_objects">
 <description>
-Frees the memory of an allocated node.
+Ensure that every object defined inside @script is correctly
+constructed. You should rarely need to use this function.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #ClutterPathNode
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_timeline_list_markers">
+<function name="clutter_script_get_object">
 <description>
-Retrieves the list of markers at time @msecs. If @frame_num is a
-negative integer, all the markers attached to @timeline will be
-returned.
+Retrieves the object bound to @name. This function does not increment
+the reference count of the returned object.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="msecs">
-<parameter_description> the time to check, or -1
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="n_markers">
-<parameter_description> the number of markers returned
+<parameter name="name">
+<parameter_description> the name of the object to retrieve
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly
-allocated, %NULL terminated string array containing the names of
-the markers. Use g_strfreev() when done.
+<return> the named object, or %NULL if no object
+with the given name was available
 
 </return>
 </function>
 
-<function name="clutter_actor_set_anchor_point_from_gravity">
+<function name="clutter_script_get_objects">
 <description>
-Sets an anchor point on the actor, based on the given gravity (this is a
-convenience function wrapping clutter_actor_set_anchor_point()).
+Retrieves a list of objects for the given names. After @script, object
+names/return location pairs should be listed, with a %NULL pointer
+ending the list, like:
 
-Since version 1.0 the anchor point will be stored as a gravity so
-that if the actor changes size then the anchor point will move. For
-example, if you set the anchor point to %CLUTTER_GRAVITY_SOUTH_EAST
-and later double the size of the actor, the anchor point will move
-to the bottom right.
+&lt;informalexample&gt;&lt;programlisting&gt;
+GObject *my_label, *a_button, *main_timeline;
+
+clutter_script_get_objects (script,
+&quot;my-label&quot;, &amp;my_label,
+&quot;a-button&quot;, &amp;a_button,
+&quot;main-timeline&quot;, &amp;main_timeline,
+NULL);
+&lt;/programlisting&gt;&lt;/informalexample&gt;
+
+Note: This function does not increment the reference count of the
+returned objects.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="gravity">
-<parameter_description> #ClutterGravity.
+<parameter name="first_name">
+<parameter_description> the name of the first object to retrieve
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_flow_layout_get_column_spacing">
-<description>
-Retrieves the spacing between columns
-
-Since: 1.2
-
-</description>
-<parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+<parameter name="Varargs">
+<parameter_description> return location for a #GObject, then additional names, ending
+with %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the spacing between columns of the #ClutterFlowLayout,
-in pixels
+<return> the number of objects returned.
 
 </return>
 </function>
 
-<function name="clutter_x11_texture_pixmap_sync_window">
+<function name="clutter_script_get_states">
 <description>
-Resets the texture's pixmap from its window, perhaps in response to the
-pixmap's invalidation as the window changed size.
+Retrieves the #ClutterState for the given @state_name.
 
-Since: 0.8
+If @name is %NULL, this function will return the default
+#ClutterState instance.
 
-</description>
-<parameters>
-<parameter name="texture">
-<parameter_description> the texture to bind
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Since: 1.8
 
-<function name="json_node_set_value">
-<description>
-Sets @value inside @node. The passed #GValue is copied into the #JsonNode
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the #GValue to set
+<parameter name="name">
+<parameter_description> the name of the #ClutterState, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the #ClutterState for the
+given name. The #ClutterState is owned by the #ClutterScript instance
+and it should not be unreferenced
+
+</return>
 </function>
 
-<function name="clutter_binding_pool_override_action">
+<function name="clutter_script_get_translation_domain">
 <description>
-Allows overriding the action for @key_val and @modifiers inside a
-#ClutterBindingPool. See clutter_binding_pool_install_action().
-
-When an action has been activated using clutter_binding_pool_activate()
-the passed @callback will be invoked (with @data).
-
-Actions can be blocked with clutter_binding_pool_block_action()
-and then unblocked using clutter_binding_pool_unblock_action().
+Retrieves the translation domain set using
+clutter_script_set_translation_domain().
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> bitmask of modifiers
-</parameter_description>
-</parameter>
-<parameter name="callback">
-<parameter_description> function to be called when the action is activated
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to be passed to @callback
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> function to be called when the action is removed
-from the pool
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the translation domain, if any is set,
+or %NULL
+
+</return>
 </function>
 
-<function name="clutter_timeline_advance_to_marker">
+<function name="clutter_script_get_type_from_name">
 <description>
-Advances @timeline to the time of the given @marker_name.
-
-&lt;note&gt;&lt;para&gt;Like clutter_timeline_advance(), this function will not
-emit the #ClutterTimeline::new-frame for the time where @marker_name
-is set, nor it will emit #ClutterTimeline::marker-reached for
-@marker_name.&lt;/para&gt;&lt;/note&gt;
+Looks up a type by name, using the virtual function that 
+#ClutterScript has for that purpose. This function should
+rarely be used.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="marker_name">
-<parameter_description> the name of the marker
+<parameter name="type_name">
+<parameter_description> name of the type to look up
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the type for the requested type name, or
+%G_TYPE_INVALID if not corresponding type was found.
+
+</return>
 </function>
 
 <function name="clutter_script_list_objects">
@@ -12223,3523 +30797,3962 @@ Since: 0.8.2
 </parameter_description>
 </parameter>
 </parameters>
-<return> a list of #GObject&lt;!-- --&gt;s,
-or %NULL. The objects are owned by the #ClutterScript instance. Use g_list_free() on the
-returned value when done.
+<return> a list
+of #GObject&lt;!-- --&gt;s, or %NULL. The objects are owned by the
+#ClutterScript instance. Use g_list_free() on the returned list when
+done.
 
 </return>
 </function>
 
-<function name="clutter_texture_new_from_file">
+<function name="clutter_script_load_from_data">
 <description>
-Creates a new ClutterTexture actor to display the image contained a
-file. If the image failed to load then NULL is returned and @error
-is set.
+Loads the definitions from @data into @script and merges with
+the currently loaded ones, if any.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="filename">
-<parameter_description> The name of an image file to load.
+<parameter name="script">
+<parameter_description> a #ClutterScript
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> a buffer containing the definitions
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> the length of the buffer, or -1 if @data is a NUL-terminated
+buffer
 </parameter_description>
 </parameter>
 <parameter name="error">
-<parameter_description> Return locatoin for an error.
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly created #ClutterTexture object or NULL on
-error.
+<return> on error, zero is returned and @error is set
+accordingly. On success, the merge id for the UI definitions is
+returned. You can use the merge id with clutter_script_unmerge_objects().
 
 </return>
 </function>
 
-<function name="clutter_texture_get_filter_quality">
+<function name="clutter_script_load_from_file">
 <description>
-Gets the filter quality used when scaling a texture.
+Loads the definitions from @filename into @script and merges with
+the currently loaded ones, if any.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
+<parameter name="script">
+<parameter_description> a #ClutterScript
+</parameter_description>
+</parameter>
+<parameter name="filename">
+<parameter_description> the full path to the definition file
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> The filter quality value.
+<return> on error, zero is returned and @error is set
+accordingly. On success, the merge id for the UI definitions is
+returned. You can use the merge id with clutter_script_unmerge_objects().
 
 </return>
 </function>
 
-<function name="clutter_layout_manager_end_animation">
+<function name="clutter_script_load_from_resource">
 <description>
-Ends an animation started by clutter_layout_manager_begin_animation()
-
-The result of this call depends on the @manager implementation
+Loads the definitions from a resource file into @script and merges with
+the currently loaded ones, if any.
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
+<parameter name="script">
+<parameter_description> a #ClutterScript
+</parameter_description>
+</parameter>
+<parameter name="resource_path">
+<parameter_description> the resource path of the file to parse
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> on error, zero is returned and @error is set
+accordingly. On success, the merge id for the UI definitions is
+returned. You can use the merge id with clutter_script_unmerge_objects().
+
+</return>
 </function>
 
-<function name="clutter_input_device_get_device_coords">
+<function name="clutter_script_lookup_filename">
 <description>
-Retrieves the latest coordinates of the pointer of @device
+Looks up @filename inside the search paths of @script. If @filename
+is found, its full path will be returned .
 
-Since: 1.2
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="device">
-<parameter_description> a #ClutterInputDevice of type %CLUTTER_POINTER_DEVICE
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> return location for the X coordinate
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> return location for the Y coordinate
+<parameter name="filename">
+<parameter_description> the name of the file to lookup
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the full path of @filename or %NULL if no path was
+found.
+
+</return>
 </function>
 
-<function name="clutter_path_get_n_nodes">
+<function name="clutter_script_new">
 <description>
-Retrieves the number of nodes in the path.
+Creates a new #ClutterScript instance. #ClutterScript can be used
+to load objects definitions for scenegraph elements, like actors,
+or behavioural elements, like behaviours and timelines. The
+definitions must be encoded using the JavaScript Object Notation (JSON)
+language.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
-</parameter_description>
-</parameter>
 </parameters>
-<return> the number of nodes.
+<return> the newly created #ClutterScript instance. Use
+g_object_unref() when done.
 
 </return>
 </function>
 
-<function name="clutter_stage_get_perspective">
+<function name="clutter_script_set_translation_domain">
 <description>
-Retrieves the stage perspective.
+Sets the translation domain for @script.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-<parameter name="perspective">
-<parameter_description> return location for a #ClutterPerspective
+<parameter name="domain">
+<parameter_description> the translation domain, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_x11_handle_event">
+<function name="clutter_script_unmerge_objects">
 <description>
-This function processes a single X event; it can be used to hook
-into external X event retrieval (for example that done by GDK).
+Unmerges the objects identified by @merge_id.
 
-Since:  0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="xevent">
-<parameter_description> pointer to XEvent structure
+<parameter name="script">
+<parameter_description> a #ClutterScript
 </parameter_description>
 </parameter>
-</parameters>
-<return> #ClutterX11FilterReturn. %CLUTTER_X11_FILTER_REMOVE
-indicates that Clutter has internally handled the event and the
-caller should do no further processing. %CLUTTER_X11_FILTER_CONTINUE
-indicates that Clutter is either not interested in the event,
-or has used the event to update internal state without taking
-any exclusive action. %CLUTTER_X11_FILTER_TRANSLATE will not
-occur.
-
-</return>
+<parameter name="merge_id">
+<parameter_description> merge id returned when loading a UI definition
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
 </function>
 
-<function name="clutter_get_default_frame_rate">
+<function name="clutter_scriptable_get_id">
 <description>
-Retrieves the default frame rate. See clutter_set_default_frame_rate().
+Retrieves the id of @scriptable set using clutter_scriptable_set_id().
 
 Since: 0.6
 
 </description>
 <parameters>
+<parameter name="scriptable">
+<parameter_description> a #ClutterScriptable
+</parameter_description>
+</parameter>
 </parameters>
-<return> the default frame rate
+<return> the id of the object. The returned string is owned by
+the scriptable object and should never be modified of freed
 
 </return>
 </function>
 
-<function name="clutter_actor_animate_with_alphav">
+<function name="clutter_scriptable_parse_custom_node">
 <description>
-Animates the given list of properties of @actor between the current
-value for each property and a new final value. The animation has a
-definite behaviour given by the passed @alpha.
-
-See clutter_actor_animate() for further details.
-
-This function is useful if you want to use an existing #ClutterAlpha
-to animate @actor.
-
-This is the vector-based variant of clutter_actor_animate_with_alpha(),
-useful for language bindings.
-
-&lt;warning&gt;Unlike clutter_actor_animate_with_alpha(), this function will
-not allow you to specify &quot;signal::&quot; names and callbacks.&lt;/warning&gt;
+Parses the passed JSON node. The implementation must set the type
+of the passed #GValue pointer using g_value_init().
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="scriptable">
+<parameter_description> a #ClutterScriptable
 </parameter_description>
 </parameter>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha
+<parameter name="script">
+<parameter_description> the #ClutterScript creating the scriptable instance
 </parameter_description>
 </parameter>
-<parameter name="n_properties">
-<parameter_description> number of property names and values
+<parameter name="value">
+<parameter_description> the generic value to be set
 </parameter_description>
 </parameter>
-<parameter name="properties">
-<parameter_description> a vector
-containing the property names to set
+<parameter name="name">
+<parameter_description> the name of the node
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a vector containing the
-property values to set
+<parameter name="node">
+<parameter_description> the JSON node to be parsed
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterAnimation object. The object is owned by the
-#ClutterActor and should not be unreferenced with g_object_unref()
+<return> %TRUE if the node was successfully parsed, %FALSE otherwise.
 
 </return>
 </function>
 
-<function name="clutter_actor_is_scaled">
+<function name="clutter_scriptable_set_custom_property">
 <description>
-Checks whether the actor is scaled in either dimension.
+Overrides the common properties setting. The underlying virtual
+function should be used when implementing custom properties.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-</parameters>
-<return> %TRUE if the actor is scaled.
-
-</return>
-</function>
-
-<function name="clutter_layout_manager_child_get">
-<description>
-Retrieves the values for a list of properties out of the
-#ClutterLayoutMeta created by @manager and attached to the
-child of a @container
-
-Since: 1.2
-
-</description>
-<parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="container">
-<parameter_description> a #ClutterContainer using @manager
+<parameter name="scriptable">
+<parameter_description> a #ClutterScriptable
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @container
+<parameter name="script">
+<parameter_description> the #ClutterScript creating the scriptable instance
 </parameter_description>
 </parameter>
-<parameter name="first_property">
-<parameter_description> the name of the first property
+<parameter name="name">
+<parameter_description> the name of the property
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of property name and return location for the value pairs
+<parameter name="value">
+<parameter_description> the value of the property
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_add_cairo_path">
+<function name="clutter_scriptable_set_id">
 <description>
-Add the nodes of the Cairo path to the end of @path.
+Sets @id_ as the unique Clutter script it for this instance of
+#ClutterScriptableIface.
 
-Since: 1.0
+This name can be used by user interface designer applications to
+define a unique name for an object constructable using the UI
+definition language parsed by #ClutterScript.
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
+<parameter name="scriptable">
+<parameter_description> a #ClutterScriptable
 </parameter_description>
 </parameter>
-<parameter name="cpath">
-<parameter_description> a Cairo path
+<parameter name="id_">
+<parameter_description> the #ClutterScript id of the object
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_main_quit">
+<function name="clutter_scroll_actor_get_scroll_mode">
 <description>
-Terminates the Clutter mainloop.
+Retrieves the #ClutterScrollActor:scroll-mode property
+
+Since: 1.12
 
 </description>
 <parameters>
+<parameter name="actor">
+<parameter_description> a #ClutterScrollActor
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> the scrolling mode
+
+</return>
 </function>
 
-<function name="clutter_stage_manager_peek_stages">
+<function name="clutter_scroll_actor_new">
 <description>
-Lists all currently used stages.
+Creates a new #ClutterScrollActor.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="stage_manager">
-<parameter_description> a #ClutterStageManager
-</parameter_description>
-</parameter>
 </parameters>
-<return> a pointer
-to the internal list of #ClutterStage objects. The returned list
-is owned by the #ClutterStageManager and should never be modified
-or freed
+<return> The newly created #ClutterScrollActor
+instance.
 
 </return>
 </function>
 
-<function name="clutter_layout_manager_get_preferred_width">
+<function name="clutter_scroll_actor_scroll_to_point">
 <description>
-Computes the minimum and natural widths of the @container according
-to @manager.
+Scrolls the contents of @actor so that @point is the new origin
+of the visible area.
 
-See also clutter_actor_get_preferred_width()
+The coordinates of @point must be relative to the @actor.
 
-Since: 1.2
+This function will use the currently set easing state of the @actor
+to transition from the current scroll origin to the new one.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
-<parameter name="container">
-<parameter_description> the #ClutterContainer using @manager
+<parameter name="actor">
+<parameter_description> a #ClutterScrollActor
 </parameter_description>
 </parameter>
-<parameter name="for_height">
-<parameter_description> the height for which the width should be computed, or -1
+<parameter name="point">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
-<parameter name="min_width_p">
-<parameter_description> return location for the minimum width
-of the layout, or %NULL
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_scroll_actor_scroll_to_rect">
+<description>
+Scrolls @actor so that @rect is in the visible portion.
+
+Since: 1.12
+
+</description>
+<parameters>
+<parameter name="actor">
+<parameter_description> a #ClutterScrollActor
 </parameter_description>
 </parameter>
-<parameter name="nat_width_p">
-<parameter_description> return location for the natural width
-of the layout, or %NULL
+<parameter name="rect">
+<parameter_description> a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_layout_set_easing_mode">
+<function name="clutter_scroll_actor_set_scroll_mode">
 <description>
-Sets the easing mode to be used by @layout when animating changes in layout
-properties
-
-Use clutter_box_layout_set_use_animations() to enable and disable the
-animations
+Sets the #ClutterScrollActor:scroll-mode property.
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="actor">
+<parameter_description> a #ClutterScrollActor
 </parameter_description>
 </parameter>
 <parameter name="mode">
-<parameter_description> an easing mode, either from #ClutterAnimationMode or a logical id
-from clutter_alpha_register_func()
+<parameter_description> a #ClutterScrollMode
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_activatable">
+<function name="clutter_set_default_frame_rate">
 <description>
-Retrieves whether a #ClutterText is activatable or not.
+Sets the default frame rate. This frame rate will be used to limit
+the number of frames drawn if Clutter is not able to synchronize
+with the vertical refresh rate of the display. When synchronization
+is possible, this value is ignored.
 
-Since: 1.0
+Since: 0.6
+
+Deprecated: 1.10: This function does not do anything any more.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="frames_per_sec">
+<parameter_description> the new default frame rate
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the actor is activatable
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_get_timeline">
+<function name="clutter_set_font_flags">
 <description>
-Get the timeline hooked up for driving the #ClutterAnimator
+Sets the font quality options for subsequent text rendering
+operations.
 
-Since: 1.2
+Using mipmapped textures will improve the quality for scaled down
+text but will use more texture memory.
+
+Enabling hinting improves text quality for static text but may
+introduce some artifacts if the text is animated.
+
+Since: 1.0
+
+Deprecated: 1.10: Use clutter_backend_set_font_options() and the
+#cairo_font_option_t API.
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
+<parameter name="flags">
+<parameter_description> The new flags
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterTimeline that drives the animator
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_units_from_pt">
+<function name="clutter_set_motion_events_enabled">
 <description>
-Stores a value in typographic points inside @units
+Sets whether per-actor motion events should be enabled or not on
+all #ClutterStage&lt;!-- --&gt;s managed by Clutter.
 
-Since: 1.0
+If @enable is %FALSE the following events will not work:
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;para&gt;ClutterActor::motion-event, unless on the
+#ClutterStage&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;ClutterActor::enter-event&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;ClutterActor::leave-event&lt;/para&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
+
+Since: 0.6
+
+Deprecated: 1.8: Use clutter_stage_set_motion_events_enabled() instead.
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="enable">
+<parameter_description> %TRUE to enable per-actor motion events
 </parameter_description>
 </parameter>
-<parameter name="pt">
-<parameter_description> typographic points
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_set_windowing_backend">
+<description>
+Restricts clutter to only use the specified backend.
+This must be called before the first API call to clutter, including
+clutter_get_option_context()
+
+Since: 1.16
+
+</description>
+<parameters>
+<parameter name="backend_type">
+<parameter_description> the name of a clutter window backend
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_layout_set_pack_start">
+<function name="clutter_settings_get_default">
 <description>
-Sets whether children of @layout should be layed out by appending
-them or by prepending them
+Retrieves the singleton instance of #ClutterSettings
 
-Since: 1.2
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+</parameters>
+<return> the instance of #ClutterSettings. The
+returned object is owned by Clutter and it should not be unreferenced
+directly
+
+</return>
+</function>
+
+<function name="clutter_shader_compile">
+<description>
+Compiles and links GLSL sources set for vertex and fragment shaders for
+a #ClutterShader. If the compilation fails and a #GError return location is
+provided the error will contain the errors from the compiler, if any.
+
+Since: 0.8
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
+
+</description>
+<parameters>
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
-<parameter name="pack_start">
-<parameter_description> %TRUE if the @layout should pack children at the
-beginning of the layout
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> returns TRUE if the shader was succesfully compiled.
+
+</return>
 </function>
 
-<function name="clutter_path_clear">
+<function name="clutter_shader_effect_get_program">
 <description>
-Removes all nodes from the path.
+Retrieves a pointer to the program's handle
 
-Since: 1.0
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
+<parameter name="effect">
+<parameter_description> a #ClutterShaderEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the program's handle,
+or %COGL_INVALID_HANDLE
+
+</return>
 </function>
 
-<function name="clutter_scriptable_parse_custom_node">
+<function name="clutter_shader_effect_get_shader">
 <description>
-Parses the passed JSON node. The implementation must set the type
-of the passed #GValue pointer using g_value_init().
+Retrieves a pointer to the shader's handle
 
-Since: 0.6
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="scriptable">
-<parameter_description> a #ClutterScriptable
-</parameter_description>
-</parameter>
-<parameter name="script">
-<parameter_description> the #ClutterScript creating the scriptable instance
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the generic value to be set
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the node
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> the JSON node to be parsed
+<parameter name="effect">
+<parameter_description> a #ClutterShaderEffect
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the node was successfully parsed, %FALSE otherwise.
+<return> a pointer to the shader's handle,
+or %COGL_INVALID_HANDLE
 
 </return>
 </function>
 
-<function name="json_array_remove_element">
+<function name="clutter_shader_effect_new">
 <description>
-Removes the #JsonNode inside @array at @index_ freeing its allocated
-resources.
+Creates a new #ClutterShaderEffect, to be applied to an actor using
+clutter_actor_add_effect().
+
+The effect will be empty until clutter_shader_effect_set_shader_source()
+is called.
+
+Since: 1.8
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the position of the element to be removed
+<parameter name="shader_type">
+<parameter_description> the type of the shader, either %CLUTTER_FRAGMENT_SHADER,
+or %CLUTTER_VERTEX_SHADER
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterShaderEffect.
+Use g_object_unref() when done.
+
+</return>
 </function>
 
-<function name="clutter_media_set_audio_volume">
+<function name="clutter_shader_effect_set_shader_source">
 <description>
-Sets the playback volume of @media to @volume.
+Sets the source of the GLSL shader used by @effect
 
-Since: 1.0
+This function should only be called by implementations of
+the #ClutterShaderEffect class, and not by application code.
+
+This function can only be called once; subsequent calls will
+yield no result.
+
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="effect">
+<parameter_description> a #ClutterShaderEffect
 </parameter_description>
 </parameter>
-<parameter name="volume">
-<parameter_description> the volume as a double between 0.0 and 1.0
+<parameter name="source">
+<parameter_description> the source of a GLSL shader
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the source was set
+
+</return>
 </function>
 
-<function name="clutter_actor_map">
+<function name="clutter_shader_effect_set_uniform">
 <description>
-Sets the %CLUTTER_ACTOR_MAPPED flag on the actor and possibly maps
-and realizes its children if they are visible. Does nothing if the
-actor is not visible.
+Sets a list of values as the payload for the uniform @name inside
+the shader effect
 
-Calling this is allowed in only one case: you are implementing the
-#ClutterActor::map virtual function in an actor and you need to map
-the children of that actor. It is not necessary to call this
-if you implement #ClutterContainer because the default implementation
-will automatically map children of containers.
+The @gtype must be one of: %G_TYPE_INT, for 1 or more integer values;
+%G_TYPE_FLOAT, for 1 or more floating point values;
+%CLUTTER_TYPE_SHADER_INT, for a pointer to an array of integer values;
+%CLUTTER_TYPE_SHADER_FLOAT, for a pointer to an array of floating point
+values; and %CLUTTER_TYPE_SHADER_MATRIX, for a pointer to an array of
+floating point values mapping a matrix
 
-When overriding map, it is mandatory to chain up to the parent
-implementation.
+The number of values interepreted is defined by the @n_value
+argument, and by the @gtype argument. For instance, a uniform named
+&quot;sampler0&quot; and containing a single integer value is set using:
 
-Since: 1.0
+|[
+clutter_shader_effect_set_uniform (effect, &quot;sampler0&quot;,
+G_TYPE_INT, 1,
+0);
+]|
+
+While a uniform named &quot;components&quot; and containing a 3-elements vector
+of floating point values (a &quot;vec3&quot;) can be set using:
+
+|[
+gfloat component_r, component_g, component_b;
+
+clutter_shader_effect_set_uniform (effect, &quot;components&quot;,
+G_TYPE_FLOAT, 3,
+component_r,
+component_g,
+component_b);
+]|
+
+or can be set using:
+
+|[
+gfloat component_vec[3];
+
+clutter_shader_effect_set_uniform (effect, &quot;components&quot;,
+CLUTTER_TYPE_SHADER_FLOAT, 3,
+component_vec);
+]|
+
+Finally, a uniform named &quot;map&quot; and containing a matrix can be set using:
+
+|[
+clutter_shader_effect_set_uniform (effect, &quot;map&quot;,
+CLUTTER_TYPE_SHADER_MATRIX, 1,
+cogl_matrix_get_array (&amp;matrix));
+]|
+
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="effect">
+<parameter_description> a #ClutterShaderEffect
+</parameter_description>
+</parameter>
+<parameter name="name">
+<parameter_description> the name of the uniform to set
+</parameter_description>
+</parameter>
+<parameter name="gtype">
+<parameter_description> the type of the uniform to set
+</parameter_description>
+</parameter>
+<parameter name="n_values">
+<parameter_description> the number of values
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> a list of values
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_get_iter_at_row">
+<function name="clutter_shader_effect_set_uniform_value">
 <description>
-Retrieves a #ClutterModelIter representing the row at the given index.
+Sets @value as the payload for the uniform @name inside the shader
+effect
 
-If a filter function has been set using clutter_model_set_filter()
-then the @model implementation will return the first non filtered
-row.
+The #GType of the @value must be one of: %G_TYPE_INT, for a single
+integer value; %G_TYPE_FLOAT, for a single floating point value;
+%CLUTTER_TYPE_SHADER_INT, for an array of integer values;
+%CLUTTER_TYPE_SHADER_FLOAT, for an array of floating point values;
+and %CLUTTER_TYPE_SHADER_MATRIX, for a matrix of floating point
+values. It also accepts %G_TYPE_DOUBLE for compatibility with other
+languages than C.
 
-Since: 0.6
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="effect">
+<parameter_description> a #ClutterShaderEffect
 </parameter_description>
 </parameter>
-<parameter name="row">
-<parameter_description> position of the row to retrieve
+<parameter name="name">
+<parameter_description> the name of the uniform to set
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue with the value of the uniform to set
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterModelIter, or %NULL if @row was
-out of bounds. When done using the iterator object, call g_object_unref()
-to deallocate its resources
-
-</return>
+<return></return>
 </function>
 
-<function name="json_object_new">
+<function name="clutter_shader_get_cogl_fragment_shader">
 <description>
-Creates a new #JsonObject, an JSON object type representation.
+Retrieves the underlying #CoglHandle for the fragment shader.
 
+Since: 1.0
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
+<parameter name="shader">
+<parameter_description> a #ClutterShader
+</parameter_description>
+</parameter>
 </parameters>
-<return> the newly created #JsonObject
+<return> A #CoglHandle for the fragment
+shader, or %NULL. The handle is owned by the #ClutterShader
+and it should not be unreferenced
+
 </return>
 </function>
 
-<function name="clutter_model_get_last_iter">
+<function name="clutter_shader_get_cogl_program">
 <description>
-Retrieves a #ClutterModelIter representing the last non-filtered
-row in @model.
+Retrieves the underlying #CoglHandle for the shader program.
 
-Since: 0.6
+Since: 1.0
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterModelIter.
-Call g_object_unref() when done using it
+<return> A #CoglHandle for the shader program,
+or %NULL. The handle is owned by the #ClutterShader and it should
+not be unreferenced
 
 </return>
 </function>
 
-<function name="clutter_text_get_selectable">
+<function name="clutter_shader_get_cogl_vertex_shader">
 <description>
-Retrieves whether a #ClutterText is selectable or not.
+Retrieves the underlying #CoglHandle for the vertex shader.
 
 Since: 1.0
 
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
+
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the actor is selectable
+<return> A #CoglHandle for the vertex
+shader, or %NULL. The handle is owned by the #ClutterShader
+and it should not be unreferenced
 
 </return>
 </function>
 
-<function name="clutter_container_remove_actor">
+<function name="clutter_shader_get_fragment_source">
 <description>
-Removes @actor from @container. The actor should be unparented, so
-if you want to keep it around you must hold a reference to it
-yourself, using g_object_ref(). When the actor has been removed,
-the &quot;actor-removed&quot; signal is emitted by @container.
+Query the current GLSL fragment source set on @shader.
 
-Since: 0.4
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the source of the fragment shader for this
+ClutterShader object or %NULL. The returned string is owned by the
+shader object and should never be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_flow_layout_set_column_spacing">
+<function name="clutter_shader_get_is_enabled">
 <description>
-Sets the space between columns, in pixels
+Checks whether @shader is enabled.
 
-Since: 1.2
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
-</parameter_description>
-</parameter>
-<parameter name="spacing">
-<parameter_description> the space between columns
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the shader is enabled.
+
+</return>
 </function>
 
-<function name="clutter_actor_set_name">
+<function name="clutter_shader_get_vertex_source">
 <description>
-Sets the given name to @self. The name can be used to identify
-a #ClutterActor.
+Query the current GLSL vertex source set on @shader.
+
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> Textual tag to apply to actor
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the source of the vertex shader for this
+ClutterShader object or %NULL. The returned string is owned by the
+shader object and should never be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_model_iter_copy">
+<function name="clutter_shader_is_compiled">
 <description>
-Copies the passed iterator.
+Checks whether @shader is is currently compiled, linked and bound
+to the GL context.
 
 Since: 0.8
 
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
+
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
-<return> a copy of the iterator, or %NULL
+<return> %TRUE if the shader is compiled, linked and ready for use.
 
 </return>
 </function>
 
-<function name="clutter_get_motion_events_enabled">
+<function name="clutter_shader_new">
 <description>
-Gets whether the per-actor motion events are enabled.
+Create a new #ClutterShader instance.
 
 Since: 0.6
 
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
+
 </description>
 <parameters>
 </parameters>
-<return> %TRUE if the motion events are enabled
+<return> a new #ClutterShader.
 
 </return>
 </function>
 
-<function name="clutter_backend_set_double_click_distance">
+<function name="clutter_shader_release">
 <description>
-Sets the maximum distance used to verify a double click event.
+Frees up any GL context resources held by the shader.
 
-Since: 0.4
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
-</parameter_description>
-</parameter>
-<parameter name="distance">
-<parameter_description> a distance, in pixels
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_timeline_set_duration">
+<function name="clutter_shader_set_fragment_source">
 <description>
-Sets the duration of the timeline, in milliseconds. The speed
-of the timeline depends on the ClutterTimeline:fps setting.
+Sets the GLSL source code to be used by a #ClutterShader for the fragment
+program.
 
 Since: 0.6
 
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
+
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
-<parameter name="msecs">
-<parameter_description> duration of the timeline in milliseconds
+<parameter name="data">
+<parameter_description> GLSL source code.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> length of source buffer (currently ignored)
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_create_pango_layout">
+<function name="clutter_shader_set_is_enabled">
 <description>
-Creates a new #PangoLayout from the same #PangoContext used
-by the #ClutterActor. The #PangoLayout is already configured
-with the font map, resolution and font options, and the
-given @text.
+Enables a shader. This function will attempt to compile and link
+the shader, if it isn't already.
 
-If you want to keep around a #PangoLayout created by this
-function you will have to connect to the #ClutterBackend::font-changed
-and #ClutterBackend::resolution-changed signals, and call
-pango_layout_context_changed() in response to them.
+When @enabled is %FALSE the default state of the GL pipeline will be
+used instead.
 
-Since: 1.0
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="shader">
+<parameter_description> a #ClutterShader
 </parameter_description>
 </parameter>
-<parameter name="text">
-<parameter_description> (allow-none) the text to set on the #PangoLayout, or %NULL
+<parameter name="enabled">
+<parameter_description> The new state of the shader.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #PangoLayout. Use g_object_unref()
-when done
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_get_source">
+<function name="clutter_shader_set_uniform">
 <description>
-Retrieves the source #ClutterActor the event originated from, or
-NULL if the event has no source.
+Sets a user configurable variable in the GLSL shader programs attached to
+a #ClutterShader.
 
-Since: 0.6
+Since: 1.0
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="shader">
+<parameter_description> a #ClutterShader.
 </parameter_description>
 </parameter>
-</parameters>
-<return> a #ClutterActor
-
-</return>
-</function>
-
-<function name="clutter_actor_get_z_rotation_gravity">
-<description>
-Retrieves the center for the rotation around the Z axis as a
-compass direction. If the center was specified in pixels or units
-this will return %CLUTTER_GRAVITY_NONE.
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="name">
+<parameter_description> name of uniform in GLSL shader program to set.
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #ClutterShaderFloat, #ClutterShaderInt or #ClutterShaderMatrix
+#GValue.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the Z rotation center
-
-</return>
+<return></return>
 </function>
 
-<function name="cogl_pango_font_map_get_renderer">
+<function name="clutter_shader_set_vertex_source">
 <description>
-Retrieves the #CoglPangoRenderer for the passed font map.
+Sets the GLSL source code to be used by a #ClutterShader for the vertex
+program.
 
-Since: 1.0
+Since: 0.6
+
+Deprecated: 1.8: Use #ClutterShaderEffect instead.
 
 </description>
 <parameters>
-<parameter name="fm">
-<parameter_description> a #CoglPangoFontMap
+<parameter name="shader">
+<parameter_description> a #ClutterShader
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> GLSL source code.
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> length of source buffer (currently ignored)
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #PangoRenderer
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_x11_get_default_display">
+<function name="clutter_size_alloc">
 <description>
-Retrieves the pointer to the default display.
+Allocates a new #ClutterSize.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
 </parameters>
-<return> the default display
+<return> the newly allocated #ClutterSize.
+Use clutter_size_free() to free its resources.
 
 </return>
 </function>
 
-<function name="clutter_timeline_get_progress">
+<function name="clutter_size_copy">
 <description>
-The position of the timeline in a [0, 1] interval.
+Creates a new #ClutterSize and duplicates @size.
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="size">
+<parameter_description> a #ClutterSize
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the timeline.
+<return> the newly allocated #ClutterSize.
+Use clutter_size_free() to free its resources.
 
 </return>
 </function>
 
-<function name="clutter_color_to_pixel">
+<function name="clutter_size_equals">
 <description>
-Converts @color into a packed 32 bit integer, containing
-all the four 8 bit channels used by #ClutterColor.
+Compares two #ClutterSize for equality.
 
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="a">
+<parameter_description> a #ClutterSize to compare
 </parameter_description>
 </parameter>
-</parameters>
-<return> a packed color
-</return>
-</function>
-
-<function name="clutter_backend_get_double_click_distance">
-<description>
-Retrieves the distance used to verify a double click event
-
-Since: 0.4
-
-</description>
-<parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
+<parameter name="b">
+<parameter_description> a #ClutterSize to compare
 </parameter_description>
 </parameter>
 </parameters>
-<return> a distance, in pixels.
+<return> %TRUE if the two #ClutterSize are equal
 
 </return>
 </function>
 
-<function name="clutter_event_get_device_type">
+<function name="clutter_size_free">
 <description>
-Retrieves the type of the device for @event
+Frees the resources allocated for @size.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="size">
+<parameter_description> a #ClutterSize
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterInputDeviceType for the device, if
-any is set
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_texture_get_pixel_format">
+<function name="clutter_size_init">
 <description>
-Retrieves the pixel format used by @texture. This is
-equivalent to:
-
-|[
-handle = clutter_texture_get_pixel_format (texture);
-
-if (handle != COGL_INVALID_HANDLE)
-format = cogl_texture_get_format (handle);
-]|
+Initializes a #ClutterSize with the given dimensions.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
+<parameter name="size">
+<parameter_description> a #ClutterSize
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the width
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the height
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #CoglPixelFormat value
+<return> the initialized #ClutterSize
 
 </return>
 </function>
 
-<function name="clutter_container_child_set">
+<function name="clutter_snap_constraint_get_edges">
 <description>
-Sets container specific properties on the child of a container.
+Retrieves the edges used by the @constraint
 
-Since: 0.8
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor that is a child of @container.
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
 </parameter_description>
 </parameter>
-<parameter name="first_prop">
-<parameter_description> name of the first property to be set.
+<parameter name="from_edge">
+<parameter_description> return location for the actor's edge, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> value for the first property, followed optionally by more name/value
-pairs terminated with NULL.
+<parameter name="to_edge">
+<parameter_description> return location for the source's edge, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_x11_get_default_screen">
-<description>
-Gets the number of the default X Screen object.
-
-Since: 0.6
-
-</description>
-<parameters>
-</parameters>
-<return> the number of the default screen
-
-</return>
-</function>
-
-<function name="clutter_path_add_rel_move_to">
+<function name="clutter_snap_constraint_get_offset">
 <description>
-Same as clutter_path_add_move_to() except the coordinates are
-relative to the previous node.
+Retrieves the offset set using clutter_snap_constraint_set_offset()
 
-Since: 1.0
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> the x coordinate
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> the y coordinate
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the offset, in pixels
+
+</return>
 </function>
 
-<function name="clutter_animation_get_alpha">
+<function name="clutter_snap_constraint_get_source">
 <description>
-Retrieves the #ClutterAlpha used by @animation.
+Retrieves the #ClutterActor set using clutter_snap_constraint_set_source()
 
-Since: 1.0
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
 </parameter_description>
 </parameter>
 </parameters>
-<return> the alpha object used by the animation
+<return> a pointer to the source actor
 
 </return>
 </function>
 
-<function name="clutter_get_current_event_time">
+<function name="clutter_snap_constraint_new">
 <description>
-Retrieves the timestamp of the last event, if there is an
-event or if the event has a timestamp.
+Creates a new #ClutterSnapConstraint that will snap a #ClutterActor
+to the @edge of @source, with the given @offset.
 
-Since: 1.0
+Since: 1.6
 
 </description>
 <parameters>
+<parameter name="source">
+<parameter_description> the #ClutterActor to use as the source of
+the constraint, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="from_edge">
+<parameter_description> the edge of the actor to use in the constraint
+</parameter_description>
+</parameter>
+<parameter name="to_edge">
+<parameter_description> the edge of @source to use in the constraint
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset to apply to the constraint, in pixels
+</parameter_description>
+</parameter>
 </parameters>
-<return> the event timestamp, or %CLUTTER_CURRENT_TIME
+<return> the newly created #ClutterSnapConstraint
 
 </return>
 </function>
 
-<function name="clutter_timeline_stop">
+<function name="clutter_snap_constraint_set_edges">
 <description>
-Stops the #ClutterTimeline and moves to frame 0
+Sets the edges to be used by the @constraint
+
+The @from_edge is the edge on the #ClutterActor to which @constraint
+has been added. The @to_edge is the edge of the #ClutterActor inside
+the #ClutterSnapConstraint:source property.
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
+</parameter_description>
+</parameter>
+<parameter name="from_edge">
+<parameter_description> the edge on the actor
+</parameter_description>
+</parameter>
+<parameter name="to_edge">
+<parameter_description> the edge on the source
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_get_current_event">
+<function name="clutter_snap_constraint_set_offset">
 <description>
-If an event is currently being processed, return that event.
-This function is intended to be used to access event state
-that might not be exposed by higher-level widgets.  For
-example, to get the key modifier state from a Button 'clicked'
-event.
+Sets the offset to be applied to the constraint
 
-Since: 1.2
+Since: 1.6
 
 </description>
 <parameters>
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
+</parameter_description>
+</parameter>
+<parameter name="offset">
+<parameter_description> the offset to apply, in pixels
+</parameter_description>
+</parameter>
 </parameters>
-<return> The current ClutterEvent, or %NULL if none
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_rectangle_set_color">
+<function name="clutter_snap_constraint_set_source">
 <description>
-Sets the color of @rectangle.
+Sets the source #ClutterActor for the constraint
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
+<parameter name="constraint">
+<parameter_description> a #ClutterSnapConstraint
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="source">
+<parameter_description> a #ClutterActor, or %NULL to unset the source
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_clear_glyph_cache">
+<function name="clutter_stage_ensure_current">
 <description>
-Clears the internal cache of glyphs used by the Pango
-renderer. This will free up some memory and GL texture
-resources. The cache will be automatically refilled as more text is
-drawn.
+This function essentially makes sure the right GL context is
+current for the passed stage. It is not intended to
+be used by applications.
 
 Since: 0.8
 
 </description>
 <parameters>
+<parameter name="stage">
+<parameter_description> the #ClutterStage
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_texture_get_max_tile_waste">
+<function name="clutter_stage_ensure_redraw">
 <description>
-Gets the maximum waste that will be used when creating a texture or
--1 if slicing is disabled.
+Ensures that @stage is redrawn
 
-Since: 0.8
+This function should not be called by applications: it is
+used when embedding a #ClutterStage into a toolkit with
+another windowing system, like GTK+.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> The maximum waste or -1 if the texture waste is
-unlimited.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_text_set_markup">
+<function name="clutter_stage_ensure_viewport">
 <description>
-Sets @markup as the contents of a #ClutterText.
+Ensures that the GL viewport is updated with the current
+stage window size.
 
-This is a convenience function for setting a string containing
-Pango markup, and it is logically equivalent to:
+This function will queue a redraw of @stage.
 
-|[
-clutter_text_set_text (CLUTTER_TEXT (actor), markup);
-clutter_text_set_use_markup (CLUTTER_TEXT (actor), TRUE);
-]|
+This function should not be called by applications; it is used
+when embedding a #ClutterStage into a toolkit with another
+windowing system, like GTK+.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="markup">
-<parameter_description> a string containing Pango markup. Passing %NULL is the same
-as passing &quot;&quot; (the empty string)
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animation_bind">
+<function name="clutter_stage_event">
 <description>
-Adds a single property with name @property_name to the
-animation @animation.  For more information about animations,
-see clutter_actor_animate().
+This function is used to emit an event on the main stage.
 
-This method returns the animation primarily to make chained
-calls convenient in language bindings.
+You should rarely need to use this function, except for
+synthetised events.
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the property to control
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="final">
-<parameter_description> The final value of the property
+<parameter name="event">
+<parameter_description> a #ClutterEvent
 </parameter_description>
 </parameter>
 </parameters>
-<return> The animation itself.
+<return> the return value from the signal emission
 
 </return>
 </function>
 
-<function name="json_object_remove_member">
+<function name="clutter_stage_get_accept_focus">
 <description>
-Removes @member_name from @object, freeing its allocated resources.
+Retrieves the value set with clutter_stage_set_accept_focus().
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member to remove
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the #ClutterStage should accept focus, and %FALSE
+otherwise
+
+</return>
 </function>
 
-<function name="clutter_vertex_copy">
+<function name="clutter_stage_get_actor_at_pos">
 <description>
-Copies @vertex
+Checks the scene at the coordinates @x and @y and returns a pointer
+to the #ClutterActor at those coordinates.
+
+By using @pick_mode it is possible to control which actors will be
+painted and thus available.
 
-Since: 1.0
 
 </description>
 <parameters>
-<parameter name="vertex">
-<parameter_description> a #ClutterVertex
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="pick_mode">
+<parameter_description> how the scene graph should be painted
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> X coordinate to check
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> Y coordinate to check
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated copy of #ClutterVertex. Use
-clutter_vertex_free() to free the allocated resources
-
+<return> the actor at the specified coordinates,
+if any
 </return>
 </function>
 
-<function name="clutter_actor_get_transformed_size">
+<function name="clutter_stage_get_color">
 <description>
-Gets the absolute size of an actor in pixels, taking into account the
-scaling factors.
-
-If the actor has a valid allocation, the allocated size will be used.
-If the actor has not a valid allocation then the preferred size will
-be transformed and returned.
-
-If you want the transformed allocation, see
-clutter_actor_get_abs_allocation_vertices() instead.
-
-&lt;note&gt;When the actor (or one of its ancestors) is rotated around the
-X or Y axis, it no longer appears as on the stage as a rectangle, but
-as a generic quadrangle; in that case this function returns the size
-of the smallest rectangle that encapsulates the entire quad. Please
-note that in this case no assumptions can be made about the relative
-position of this envelope to the absolute position of the actor, as
-returned by clutter_actor_get_transformed_position(); if you need this
-information, you need to use clutter_actor_get_abs_allocation_vertices()
-to get the coords of the actual quadrangle.&lt;/note&gt;
+Retrieves the stage color.
 
-Since: 0.8
+Deprecated: 1.10: Use clutter_actor_get_background_color() instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> return location for the width, or %NULL
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> return location for the height, or %NULL
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_get_actors">
+<function name="clutter_stage_get_default">
 <description>
-Retrieves all the actors to which @behave applies. It is not recommended
-for derived classes to use this in there alpha notify method but use 
-#clutter_behaviour_actors_foreach as it avoids alot of needless allocations.
+Retrieves a #ClutterStage singleton.
 
-Since: 0.2
+This function is not as useful as it sounds, and will most likely
+by deprecated in the future. Application code should only create
+a #ClutterStage instance using clutter_stage_new(), and manage the
+lifetime of the stage manually.
+
+The default stage singleton has a platform-specific behaviour: on
+platforms without the %CLUTTER_FEATURE_STAGE_MULTIPLE feature flag
+set, the first #ClutterStage instance will also be set to be the
+default stage instance, and this function will always return a
+pointer to it.
+
+On platforms with the %CLUTTER_FEATURE_STAGE_MULTIPLE feature flag
+set, the default stage will be created by the first call to this
+function, and every following call will return the same pointer to
+it.
+
+Deprecated: 1.10: Use clutter_stage_new() instead.
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
-</parameter_description>
-</parameter>
 </parameters>
-<return> a list of
-actors. You should free the returned list with g_slist_free() when
-finished using it.
+<return> the main
+#ClutterStage. You should never destroy or unref the returned
+actor.
 
 </return>
 </function>
 
-<function name="clutter_threads_set_lock_functions">
+<function name="clutter_stage_get_fog">
 <description>
-Allows the application to replace the standard method that
-Clutter uses to protect its data structures. Normally, Clutter
-creates a single #GMutex that is locked by clutter_threads_enter(),
-and released by clutter_threads_leave(); using this function an
-application provides, instead, a function @enter_fn that is
-called by clutter_threads_enter() and a function @leave_fn that is
-called by clutter_threads_leave().
-
-The functions must provide at least same locking functionality
-as the default implementation, but can also do extra application
-specific processing.
-
-As an example, consider an application that has its own recursive
-lock that when held, holds the Clutter lock as well. When Clutter
-unlocks the Clutter lock when entering a recursive main loop, the
-application must temporarily release its lock as well.
-
-Most threaded Clutter apps won't need to use this method.
+Retrieves the current depth cueing settings from the stage.
 
-This method must be called before clutter_threads_init(), and cannot
-be called multiple times.
+Since: 0.6
 
-Since: 0.4
+Deprecated: 1.10: This function will always return the default
+values of #ClutterFog
 
 </description>
 <parameters>
-<parameter name="enter_fn">
-<parameter_description> function called when aquiring the Clutter main lock
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="leave_fn">
-<parameter_description> function called when releasing the Clutter main lock
+<parameter name="fog">
+<parameter_description> return location for a #ClutterFog structure
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_texture_set_cogl_material">
+<function name="clutter_stage_get_fullscreen">
 <description>
-Replaces the underlying Cogl material drawn by this actor with
-@cogl_material. A reference to the material is taken so if the
-handle is no longer needed it should be deref'd with
-cogl_handle_unref. Texture data is attached to the material so
-calling this function also replaces the Cogl
-texture. #ClutterTexture requires that the material have a texture
-layer so you should set one on the material before calling this
-function.
+Retrieves whether the stage is full screen or not
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+</parameters>
+<return> %TRUE if the stage is full screen
 
-Since: 0.8
+</return>
+</function>
+
+<function name="clutter_stage_get_key_focus">
+<description>
+Retrieves the actor that is currently under key focus.
 
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="cogl_material">
-<parameter_description> A CoglHandle for a material
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the actor with key focus, or the stage
+
+</return>
 </function>
 
-<function name="clutter_x11_enable_xinput">
+<function name="clutter_stage_get_minimum_size">
 <description>
-Enables the use of the XInput extension if present on connected
-XServer and support built into Clutter. XInput allows for multiple
-pointing devices to be used.
-
-This function must be called before clutter_init().
+Retrieves the minimum size for a stage window as set using
+clutter_stage_set_minimum_size().
 
-Since XInput might not be supported by the X server, you might
-want to use clutter_x11_has_xinput() to see if support was enabled.
+The returned size may not correspond to the actual minimum size and
+it is specific to the #ClutterStage implementation inside the
+Clutter backend
 
-Since: 0.8
+Since: 1.2
 
 </description>
 <parameters>
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> return location for the minimum width, in pixels,
+or %NULL
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> return location for the minimum height, in pixels,
+or %NULL
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_event_copy">
+<function name="clutter_stage_get_motion_events_enabled">
 <description>
-Copies @event.
+Retrieves the value set using clutter_stage_set_motion_events_enabled().
 
+Since: 1.8
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> A #ClutterEvent.
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly allocated #ClutterEvent
+<return> %TRUE if the per-actor motion event delivery is enabled
+and %FALSE otherwise
+
 </return>
 </function>
 
-<function name="clutter_actor_is_rotated">
+<function name="clutter_stage_get_no_clear_hint">
 <description>
-Checks whether any rotation is applied to the actor.
+Retrieves the hint set with clutter_stage_set_no_clear_hint()
 
-Since: 0.6
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the actor is rotated.
+<return> %TRUE if the stage should not clear itself on every paint
+cycle, and %FALSE otherwise
 
 </return>
 </function>
 
-<function name="clutter_actor_get_scale">
+<function name="clutter_stage_get_perspective">
 <description>
-Retrieves an actors scale factors.
-
-Since: 0.2
+Retrieves the stage perspective.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="scale_x">
-<parameter_description> Location to store horizonal
-scale factor, or %NULL.
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="scale_y">
-<parameter_description> Location to store vertical
-scale factor, or %NULL.
+<parameter name="perspective">
+<parameter_description> return location for a
+#ClutterPerspective
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_set_request_mode">
+<function name="clutter_stage_get_redraw_clip_bounds">
 <description>
-Sets the geometry request mode of @self.
-
-The @mode determines the order for invoking
-clutter_actor_get_preferred_width() and
-clutter_actor_get_preferred_height()
+Gets the bounds of the current redraw for @stage in stage pixel
+coordinates. E.g., if only a single actor has queued a redraw then
+Clutter may redraw the stage with a clip so that it doesn't have to
+paint every pixel in the stage. This function would then return the
+bounds of that clip. An application can use this information to
+avoid some extra work if it knows that some regions of the stage
+aren't going to be painted. This should only be called while the
+stage is being painted. If there is no current redraw clip then
+this function will set @clip to the full extents of the stage.
 
-Since: 1.2
+Since: 1.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> the request mode
+<parameter name="clip">
+<parameter_description> Return location for the clip bounds
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_rectangle_get_color">
+<function name="clutter_stage_get_throttle_motion_events">
 <description>
-Retrieves the color of @rectangle.
+Retrieves the value set with clutter_stage_set_throttle_motion_events()
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
-</parameter_description>
-</parameter>
-<parameter name="color">
-<parameter_description> return location for a #ClutterColor
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the motion events are being throttled,
+and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_interval_clone">
+<function name="clutter_stage_get_title">
 <description>
-Creates a copy of @interval.
+Gets the stage title.
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterInterval
+<return> pointer to the title string for the stage. The
+returned string is owned by the actor and should not
+be modified or freed.
 
 </return>
 </function>
 
-<function name="clutter_box_layout_get_pack_start">
+<function name="clutter_stage_get_use_alpha">
 <description>
-Retrieves the value set using clutter_box_layout_set_pack_start()
+Retrieves the value set using clutter_stage_set_use_alpha()
 
 Since: 1.2
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterBoxLayout should pack children
-at the beginning of the layout, and %FALSE otherwise
+<return> %TRUE if the stage should honour the opacity and the
+alpha channel of the stage color
 
 </return>
 </function>
 
-<function name="cogl_pango_render_layout_subpixel">
+<function name="clutter_stage_get_use_fog">
 <description>
-FIXME
+Gets whether the depth cueing effect is enabled on @stage.
 
-Since: 1.0
+Since: 0.6
+
+Deprecated: 1.10: This function will always return %FALSE
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #PangoLayout
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> FIXME
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> FIXME
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> color to use when rendering the layout
+</parameters>
+<return> %TRUE if the depth cueing effect is enabled
+
+</return>
+</function>
+
+<function name="clutter_stage_get_user_resizable">
+<description>
+Retrieves the value set with clutter_stage_set_user_resizable().
+
+Since: 0.4
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags to pass to the renderer
+</parameters>
+<return> %TRUE if the stage is resizable by the user.
+
+</return>
+</function>
+
+<function name="clutter_stage_hide_cursor">
+<description>
+Makes the cursor invisible on the stage window
+
+Since: 0.4
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="cogl_pango_render_layout">
+<function name="clutter_stage_is_default">
 <description>
-Renders @layout.
+Checks if @stage is the default stage, or an instance created using
+clutter_stage_new() but internally using the same implementation.
 
-Since: 1.0
+Since: 0.8
+
+Deprecated: 1.10: Track the stage pointer inside your application
+code, or use clutter_actor_get_stage() to retrieve the stage for
+a given actor.
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #PangoLayout
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> X coordinate to render the layout at
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> Y coordinate to render the layout at
-</parameter_description>
-</parameter>
-<parameter name="color">
-<parameter_description> color to use when rendering the layout
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> flags to pass to the renderer
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the passed stage is the default one
+
+</return>
 </function>
 
-<function name="clutter_script_add_search_paths">
+<function name="clutter_stage_manager_get_default">
 <description>
-Adds @paths to the list of search paths held by @script.
+Returns the default #ClutterStageManager.
 
-The search paths are used by clutter_script_lookup_filename(), which
-can be used to define search paths for the textures source file name
-or other custom, file-based properties.
+Since: 0.8
+
+</description>
+<parameters>
+</parameters>
+<return> the default stage manager instance. The returned
+object is owned by Clutter and you should not reference or unreference it.
+
+</return>
+</function>
+
+<function name="clutter_stage_manager_get_default_stage">
+<description>
+Returns the default #ClutterStage.
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
-</parameter_description>
-</parameter>
-<parameter name="paths">
-<parameter_description> an array of strings containing different search paths
-</parameter_description>
-</parameter>
-<parameter name="n_paths">
-<parameter_description> the length of the passed array
+<parameter name="stage_manager">
+<parameter_description> a #ClutterStageManager
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the default stage. The returned object
+is owned by Clutter and you should never reference or unreference it
+
+</return>
 </function>
 
-<function name="clutter_model_iter_get_row">
+<function name="clutter_stage_manager_list_stages">
 <description>
-Retrieves the position of the row that the @iter points to.
+Lists all currently used stages.
 
-Since: 0.6
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="stage_manager">
+<parameter_description> a #ClutterStageManager
 </parameter_description>
 </parameter>
 </parameters>
-<return> the position of the @iter in the model
+<return> a newly
+allocated list of #ClutterStage objects. Use g_slist_free() to
+deallocate it when done.
 
 </return>
 </function>
 
-<function name="clutter_value_set_color">
+<function name="clutter_stage_manager_peek_stages">
 <description>
-Sets @value to @color.
+Lists all currently used stages.
 
-Since: 0.8.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue initialized to #CLUTTER_TYPE_COLOR
-</parameter_description>
-</parameter>
-<parameter name="color">
-<parameter_description> the color to set
+<parameter name="stage_manager">
+<parameter_description> a #ClutterStageManager
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer
+to the internal list of #ClutterStage objects. The returned list
+is owned by the #ClutterStageManager and should never be modified
+or freed
+
+</return>
 </function>
 
-<function name="clutter_timeline_add_marker_at_time">
+<function name="clutter_stage_manager_set_default_stage">
 <description>
-Adds a named marker that will be hit when the timeline has been
-running for @msecs milliseconds. Markers are unique string
-identifiers for a given time. Once @timeline reaches
-@msecs, it will emit a ::marker-reached signal for each marker
-attached to that time.
-
-A marker can be removed with clutter_timeline_remove_marker(). The
-timeline can be advanced to a marker using
-clutter_timeline_advance_to_marker().
+Sets @stage as the default stage.
 
 Since: 0.8
 
+Deprecated: 1.2: Calling this function has no effect
+
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="marker_name">
-<parameter_description> the unique name for this marker
+<parameter name="stage_manager">
+<parameter_description> a #ClutterStageManager
 </parameter_description>
 </parameter>
-<parameter name="msecs">
-<parameter_description> position of the marker in milliseconds
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_object_dup_member">
+<function name="clutter_stage_new">
 <description>
-Retrieves a copy of the #JsonNode containing the value of @member_name
-inside a #JsonObject
+Creates a new, non-default stage. A non-default stage is a new
+top-level actor which can be used as another container. It works
+exactly like the default stage, but while clutter_stage_get_default()
+will always return the same instance, you will have to keep a pointer
+to any #ClutterStage returned by clutter_stage_new().
 
-Since: 0.6
+The ability to support multiple stages depends on the current
+backend. Use clutter_feature_available() and
+%CLUTTER_FEATURE_STAGE_MULTIPLE to check at runtime whether a
+backend supports multiple stages.
+
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="member_name">
-<parameter_description> the name of the JSON object member to access
-</parameter_description>
-</parameter>
 </parameters>
-<return> a copy of the node for the requested object member
-or %NULL. Use json_node_free() when done.
+<return> a new stage, or %NULL if the default backend does
+not support multiple stages. Use clutter_actor_destroy() to
+programmatically close the returned stage.
 
 </return>
 </function>
 
-<function name="clutter_actor_box_interpolate">
+<function name="clutter_stage_queue_redraw">
 <description>
-Interpolates between @initial and @final #ClutterActorBox&lt;!-- --&gt;es
-using @progress
+Queues a redraw for the passed stage.
 
-Since: 1.2
+&lt;note&gt;Applications should call clutter_actor_queue_redraw() and not
+this function.&lt;/note&gt;
+
+Since: 0.8
+
+Deprecated: 1.10: Use clutter_actor_queue_redraw() instead.
 
 </description>
 <parameters>
-<parameter name="initial">
-<parameter_description> the initial #ClutterActorBox
-</parameter_description>
-</parameter>
-<parameter name="final">
-<parameter_description> the final #ClutterActorBox
-</parameter_description>
-</parameter>
-<parameter name="progress">
-<parameter_description> the interpolation progress
-</parameter_description>
-</parameter>
-<parameter name="result">
-<parameter_description> return location for the interpolation
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_score_remove">
+<function name="clutter_stage_read_pixels">
 <description>
-Removes the #ClutterTimeline with the given id inside @score. If
-the timeline has other timelines attached to it, those are removed
-as well.
+Makes a screenshot of the stage in RGBA 8bit data, returns a
+linear buffer with @width * 4 as rowstride.
+
+The alpha data contained in the returned buffer is driver-dependent,
+and not guaranteed to hold any sensible value.
 
-Since: 0.6
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> a #ClutterScore
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="id">
-<parameter_description> the id of the timeline to remove
+<parameter name="x">
+<parameter_description> x coordinate of the first pixel that is read from stage
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> y coordinate of the first pixel that is read from stage
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> Width dimention of pixels to be read, or -1 for the
+entire stage width
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> Height dimention of pixels to be read, or -1 for the
+entire stage height
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to newly allocated memory with the buffer
+or %NULL if the read failed. Use g_free() on the returned data
+to release the resources it has allocated.
+</return>
 </function>
 
-<function name="clutter_actor_get_anchor_point_gravity">
+<function name="clutter_stage_set_accept_focus">
 <description>
-Retrieves the anchor position expressed as a #ClutterGravity. If
-the anchor point was specified using pixels or units this will
-return %CLUTTER_GRAVITY_NONE.
+Sets whether the @stage should accept the key focus when shown.
 
-Since: 1.0
+This function should be called before showing @stage using
+clutter_actor_show().
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="accept_focus">
+<parameter_description> %TRUE to accept focus on show
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterGravity used by the anchor point
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_clone_set_source">
+<function name="clutter_stage_set_color">
 <description>
-Sets @source as the source actor to be cloned by @clone.
+Sets the stage color.
 
-Since: 1.0
+Deprecated: 1.10: Use clutter_actor_set_background_color() instead.
 
 </description>
 <parameters>
-<parameter name="clone">
-<parameter_description> a #ClutterClone
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="source">
-<parameter_description> a #ClutterActor, or %NULL
+<parameter name="color">
+<parameter_description> A #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_shader_get_cogl_program">
+<function name="clutter_stage_set_fog">
 <description>
-Retrieves the underlying #CoglHandle for the shader program.
+Sets the fog (also known as &quot;depth cueing&quot;) settings for the @stage.
 
-Since: 1.0
+A #ClutterStage will only use a linear fog progression, which
+depends solely on the distance from the viewer. The cogl_set_fog()
+function in COGL exposes more of the underlying implementation,
+and allows changing the for progression function. It can be directly
+used by disabling the #ClutterStage:use-fog property and connecting
+a signal handler to the #ClutterActor::paint signal on the @stage,
+like:
 
-</description>
-<parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
-</parameter_description>
-</parameter>
-</parameters>
-<return> A #CoglHandle for the shader program, or %NULL
+|[
+clutter_stage_set_use_fog (stage, FALSE);
+g_signal_connect (stage, &quot;paint&quot;, G_CALLBACK (on_stage_paint), NULL);
+]|
 
-</return>
-</function>
+The paint signal handler will call cogl_set_fog() with the
+desired settings:
 
-<function name="clutter_actor_get_height">
-<description>
-Retrieves the height of a #ClutterActor.
+|[
+static void
+on_stage_paint (ClutterActor *actor)
+{
+ClutterColor stage_color = { 0, };
+CoglColor fog_color = { 0, };
 
-If the actor has a valid allocation, this function will return the
-height of the allocated area given to the actor.
+/ * set the fog color to the stage background color * /
+clutter_stage_get_color (CLUTTER_STAGE (actor), &amp;stage_color);
+cogl_color_init_from_4ub (&amp;fog_color,
+stage_color.red,
+stage_color.green,
+stage_color.blue,
+stage_color.alpha);
 
-If the actor does not have a valid allocation, this function will
-return the actor's natural height, that is the preferred height of
-the actor.
+/ * enable fog * /
+cogl_set_fog (&amp;fog_color,
+COGL_FOG_MODE_EXPONENTIAL, / * mode * /
+0.5,                       / * density * /
+5.0, 30.0);                / * z_near and z_far * /
+}
+]|
 
-If you care whether you get the preferred height or the height that
-has been assigned to the actor, you should probably call a different
-function like clutter_actor_get_allocation_box() to retrieve the
-allocated size or clutter_actor_get_preferred_height() to retrieve the
-preferred height.
+&lt;note&gt;The fogging functions only work correctly when the visible actors use
+unmultiplied alpha colors. By default Cogl will premultiply textures and
+cogl_set_source_color() will premultiply colors, so unless you explicitly
+load your textures requesting an unmultiplied internal format and use
+cogl_material_set_color() you can only use fogging with fully opaque actors.
+Support for premultiplied colors will improve in the future when we can
+depend on fragment shaders.&lt;/note&gt;
 
-If an actor has a fixed height, for instance a height that has been
-assigned using clutter_actor_set_height(), the height returned will
-be the same value.
+Since: 0.6
 
+Deprecated: 1.10: Fog settings are ignored.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="stage">
+<parameter_description> the #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="fog">
+<parameter_description> a #ClutterFog structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the height of the actor, in pixels
-</return>
+<return></return>
 </function>
 
-<function name="clutter_behaviour_ellipse_get_tilt">
+<function name="clutter_stage_set_fullscreen">
 <description>
-Gets the tilt of the ellipse around the center in Y axis.
+Asks to place the stage window in the fullscreen or unfullscreen
+states.
+
+ ( Note that you shouldn't assume the window is definitely full screen
+afterward, because other entities (e.g. the user or window manager)
+could unfullscreen it again, and not all window managers honor
+requests to fullscreen windows.
+
+If you want to receive notification of the fullscreen state you
+should either use the #ClutterStage::fullscreen and
+#ClutterStage::unfullscreen signals, or use the notify signal
+for the #ClutterStage:fullscreen-set property
 
-Since: 0.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
-</parameter_description>
-</parameter>
-<parameter name="angle_tilt_x">
-<parameter_description> return location for tilt angle on the X axis, or %NULL.
-</parameter_description>
-</parameter>
-<parameter name="angle_tilt_y">
-<parameter_description> return location for tilt angle on the Y axis, or %NULL.
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="angle_tilt_z">
-<parameter_description> return location for tilt angle on the Z axis, or %NULL.
+<parameter name="fullscreen">
+<parameter_description> %TRUE to to set the stage fullscreen
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_add_idle">
+<function name="clutter_stage_set_key_focus">
 <description>
-Simple wrapper around clutter_threads_add_idle_full() using the
-default priority.
+Sets the key focus on @actor. An actor with key focus will receive
+all the key events. If @actor is %NULL, the stage will receive
+focus.
 
-Since: 0.4
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="func">
-<parameter_description> function to call
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
+<parameter name="actor">
+<parameter_description> the actor to set key focus to, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_position">
+<function name="clutter_stage_set_minimum_size">
 <description>
-This function tries to &quot;do what you mean&quot; and tell you where the
-actor is, prior to any transformations. Retrieves the fixed
-position of an actor in pixels, if one has been set; otherwise, if
-the allocation is valid, returns the actor's allocated position;
-otherwise, returns 0,0.
+Sets the minimum size for a stage window, if the default backend
+uses #ClutterStage inside a window
 
-The returned position is in pixels.
+This is a convenience function, and it is equivalent to setting the
+#ClutterActor:min-width and #ClutterActor:min-height on @stage
 
-Since: 0.6
+If the current size of @stage is smaller than the minimum size, the
+@stage will be resized to the new @width and @height
+
+This function has no effect if @stage is fullscreen
+
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> return location for the X coordinate, or %NULL
+<parameter name="width">
+<parameter_description> width, in pixels
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> return location for the Y coordinate, or %NULL
+<parameter name="height">
+<parameter_description> height, in pixels
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_init">
+<function name="clutter_stage_set_motion_events_enabled">
 <description>
-Initialises the Clutter threading mechanism, so that Clutter API can be
-called by multiple threads, using clutter_threads_enter() and
-clutter_threads_leave() to mark the critical sections.
+Sets whether per-actor motion events (and relative crossing
+events) should be disabled or not.
 
-You must call g_thread_init() before this function.
+The default is %TRUE.
 
-This function must be called before clutter_init().
+If @enable is %FALSE the following events will not be delivered
+to the actors children of @stage.
 
-It is safe to call this function multiple times.
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;para&gt;#ClutterActor::motion-event&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;#ClutterActor::enter-event&lt;/para&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;para&gt;#ClutterActor::leave-event&lt;/para&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
 
-Since: 0.4
+The events will still be delivered to the #ClutterStage.
+
+The main side effect of this function is that disabling the motion
+events will disable picking to detect the #ClutterActor underneath
+the pointer for each motion event. This is useful, for instance,
+when dragging a #ClutterActor across the @stage: the actor underneath
+the pointer is not going to change, so it's meaningless to perform
+a pick.
+
+Since: 1.8
 
 </description>
 <parameters>
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="enabled">
+<parameter_description> %TRUE to enable the motion events delivery, and %FALSE
+otherwise
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_get_allocation_box">
+<function name="clutter_stage_set_no_clear_hint">
 <description>
-Gets the layout box an actor has been assigned. The allocation can
-only be assumed valid inside a paint() method; anywhere else, it
-may be out-of-date.
+Sets whether the @stage should clear itself at the beginning
+of each paint cycle or not.
 
-An allocation does not incorporate the actor's scale or anchor point;
-those transformations do not affect layout, only rendering.
+Clearing the #ClutterStage can be a costly operation, especially
+if the stage is always covered - for instance, in a full-screen
+video player or in a game with a background texture.
 
-&lt;note&gt;Do not call any of the clutter_actor_get_allocation_*() family
-of functions inside the implementation of the get_preferred_width()
-or get_preferred_height() virtual functions.&lt;/note&gt;
+&lt;note&gt;&lt;para&gt;This setting is a hint; Clutter might discard this
+hint depending on its internal state.&lt;/para&gt;&lt;/note&gt;
 
-Since: 0.8
+&lt;warning&gt;&lt;para&gt;If parts of the stage are visible and you disable
+clearing you might end up with visual artifacts while painting the
+contents of the stage.&lt;/para&gt;&lt;/warning&gt;
+
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="box">
-<parameter_description> the function fills this in with the actor's allocation
+<parameter name="no_clear">
+<parameter_description> %TRUE if the @stage should not clear itself on every
+repaint cycle
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_array_foreach_element">
+<function name="clutter_stage_set_paint_callback">
 <description>
-Iterates over all elements of @array and calls @func on
-each one of them.
-
-It is safe to change the value of a #JsonNode of the @array
-from within the iterator @func, but it is not safe to add or
-remove elements from the @array.
+Sets a callback function to be invoked after the @stage has been
+painted.
 
-Since: 0.8
+Since: 1.14
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="func">
-<parameter_description> the function to be called on each element
+<parameter name="callback">
+<parameter_description> a callback
 </parameter_description>
 </parameter>
 <parameter name="data">
-<parameter_description> data to be passed to the function
+<parameter_description> data to be passed to @callback
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> function to be called when the callback is removed
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_get_sorting_column">
+<function name="clutter_stage_set_perspective">
 <description>
-Retrieves the number of column used for sorting the @model.
-
-Since: 0.6
+Sets the stage perspective. Using this function is not recommended
+because it will disable Clutter's attempts to generate an
+appropriate perspective based on the size of the stage.
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-</parameters>
-<return> a column number, or -1 if the model is not sorted
-
-</return>
-</function>
-
-<function name="clutter_actor_paint">
-<description>
-Renders the actor to display.
-
-This function should not be called directly by applications.
-Call clutter_actor_queue_redraw() to queue paints, instead.
-
-This function will emit the #ClutterActor::paint signal.
-
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="perspective">
+<parameter_description> A #ClutterPerspective
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_set_description">
+<function name="clutter_stage_set_sync_delay">
 <description>
-Replaces all of the nodes in the path with nodes described by
-@str. See clutter_path_add_string() for details of the format.
+This function enables an alternate behavior where Clutter draws at
+a fixed point in time after the frame presentation time (also known
+as the VBlank time). This is most useful when the application
+wants to show incoming data with predictable latency. (The primary
+example of this would be a window system compositor.) By synchronizing
+to provide new data before Clutter redraws, an external source of
+updates (in the compositor, an application) can get a reliable latency.
 
-If the string is invalid then %FALSE is returned and the path is
-unaltered.
+The appropriate value of @sync_delay depends on the complexity of
+drawing the stage's scene graph - in general a value of between 0
+and 8 ms (up to one-half of a typical 60hz frame rate) is appropriate.
+using a larger value will reduce latency but risks skipping a frame if
+drawing the stage takes too long.
 
-Since: 1.0
+Since: 1.14
+Stability: unstable
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description> a string describing the path
+<parameter name="sync_delay">
+<parameter_description> number of milliseconds after frame presentation to wait
+before painting the next frame. If less than zero, restores the
+default behavior where redraw is throttled to the refresh rate but
+not synchronized to it.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the path was valid, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_set_shader_param_int">
+<function name="clutter_stage_set_throttle_motion_events">
 <description>
-Sets the value for a named int parameter of the shader applied to
-@actor.
+Sets whether motion events received between redraws should
+be throttled or not. If motion events are throttled, those
+events received by the windowing system between redraws will
+be compressed so that only the last event will be propagated
+to the @stage and its actors.
 
-Since: 0.8
+This function should only be used if you want to have all
+the motion events delivered to your application code.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> the name of the parameter
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the parameter
+<parameter name="throttle">
+<parameter_description> %TRUE to throttle motion events
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_color_from_pixel">
+<function name="clutter_stage_set_title">
 <description>
-Converts @pixel from the packed representation of a four 8 bit channel
-color to a #ClutterColor.
+Sets the stage title.
+
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> return location for a #ClutterColor
+<parameter name="stage">
+<parameter_description> A #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="pixel">
-<parameter_description> a 32 bit packed integer containing a color
+<parameter name="title">
+<parameter_description> A utf8 string for the stage windows title.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_set_sorting_column">
+<function name="clutter_stage_set_use_alpha">
 <description>
-Sets the model to sort by @column. If @column is a negative value
-the sorting column will be unset.
+Sets whether the @stage should honour the #ClutterActor:opacity and
+the alpha channel of the #ClutterStage:color
 
-Since: 0.6
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="column">
-<parameter_description> the column of the @model to sort, or -1
+<parameter name="use_alpha">
+<parameter_description> whether the stage should honour the opacity or the
+alpha channel of the stage color
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_pack_after">
+<function name="clutter_stage_set_use_fog">
 <description>
-Adds @actor to @box, placing it after @sibling, and sets layout
-properties at the same time, if the #ClutterLayoutManager used by
-@box supports them
-
-If @sibling is %NULL then @actor is placed at the end of the
-list of children, to be allocated and painted after every other child
+Sets whether the depth cueing effect on the stage should be enabled
+or not.
 
-This function is a wrapper around clutter_container_add_actor(),
-clutter_container_raise_child() and clutter_layout_manager_child_set()
+Depth cueing is a 3D effect that makes actors farther away from the
+viewing point less opaque, by fading them with the stage color.
 
-Since: 1.2
+The parameters of the GL fog used can be changed using the
+clutter_stage_set_fog() function.
 
-</description>
-<parameters>
-<parameter name="box">
-<parameter_description> a #ClutterBox
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="sibling">
-<parameter_description> a #ClutterActor or %NULL
-</parameter_description>
-</parameter>
-<parameter name="first_property">
-<parameter_description> the name of the first property to set, or %NULL
+Since: 0.6
+
+Deprecated: 1.10: Calling this function produces no visible effect
+
+</description>
+<parameters>
+<parameter name="stage">
+<parameter_description> the #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> a list of property name and value pairs, terminated by %NULL
+<parameter name="fog">
+<parameter_description> %TRUE for enabling the depth cueing effect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_set_selection_color">
+<function name="clutter_stage_set_user_resizable">
 <description>
-Sets the color of the selection of a #ClutterText actor.
-
-If @color is %NULL, the selection color will be the same as the
-cursor color, or if no cursor color is set either then it will be
-the same as the text color.
+Sets if the stage is resizable by user interaction (e.g. via
+window manager controls)
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> the color of the selection, or %NULL to unset it
+<parameter name="resizable">
+<parameter_description> whether the stage should be user resizable.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_backend_get_font_options">
+<function name="clutter_stage_show_cursor">
 <description>
-Retrieves the font options for @backend.
-
-Since: 0.8
+Shows the cursor on the stage window
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> the font options of the #ClutterBackend.
-The returned #cairo_font_options_t is owned by the backend and should
-not be modified or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_box_layout_set_spacing">
+<function name="clutter_stage_skip_sync_delay">
 <description>
-Sets the spacing between children of @layout
+Causes the next frame for the stage to be drawn as quickly as
+possible, ignoring any delay that clutter_stage_set_sync_delay()
+would normally cause.
 
-Since: 1.2
+Since: 1.14
+Stability: unstable
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
-</parameter_description>
-</parameter>
-<parameter name="spacing">
-<parameter_description> the spacing between children of the layout, in pixels
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_cairo_texture_new">
+<function name="clutter_state_get_animator">
 <description>
-Creates a new #ClutterCairoTexture actor, with a surface of @width by
-@height pixels.
+Retrieves the #ClutterAnimator that is being used for transitioning
+between the two states, if any has been set
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="width">
-<parameter_description> the width of the surface
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> the height of the surface
+<parameter name="source_state_name">
+<parameter_description> the name of a source state
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the name of a target state
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterCairoTexture actor
+<return> a #ClutterAnimator instance, or %NULL
 
 </return>
 </function>
 
-<function name="clutter_model_iter_get">
+<function name="clutter_state_get_duration">
 <description>
-Gets the value of one or more cells in the row referenced by @iter. The
-variable argument list should contain integer column numbers, each column
-column number followed by a place to store the value being retrieved. The
-list is terminated by a -1.
+Queries the duration used for transitions between a source and
+target state pair
 
-For example, to get a value from column 0 with type %G_TYPE_STRING use:
-&lt;informalexample&gt;&lt;programlisting&gt;
-clutter_model_iter_get (iter, 0, &amp;place_string_here, -1);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
+The semantics for the query are the same as the semantics used for
+setting the duration with clutter_state_set_duration()
 
-where place_string_here is a gchar* to be filled with the string. If
-appropriate, the returned values have to be freed or unreferenced.
-
-Since: 0.6
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a list of column/return location pairs, terminated by -1
+<parameter name="state">
+<parameter_description> a #ClutterState
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_behaviour_ellipse_set_angle_start">
-<description>
-Sets the angle at which movement starts; angles &gt;= 360 degress get clamped
-to the canonical interval &lt;0, 360).
-
-Since: 0.6
-
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="source_state_name">
+<parameter_description> the name of the source state to
+get the duration of, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="angle_start">
-<parameter_description> angle at which movement starts in degrees, between 0 and 360.
+<parameter name="target_state_name">
+<parameter_description> the name of the source state to
+get the duration of, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the duration, in milliseconds
+
+</return>
 </function>
 
-<function name="clutter_model_appendv">
+<function name="clutter_state_get_keys">
 <description>
-Creates and appends a new row to the #ClutterModel, setting the row
-values for the given @columns upon creation.
+Returns a list of pointers to opaque structures with accessor functions
+that describe the keys added to an animator.
 
-Since: 0.6
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
 </parameter_description>
 </parameter>
-<parameter name="n_columns">
-<parameter_description> the number of columns and values
+<parameter name="source_state_name">
+<parameter_description> the source transition name to query,
+or %NULL for all source states
 </parameter_description>
 </parameter>
-<parameter name="columns">
-<parameter_description> a vector with the columns to set
+<parameter name="target_state_name">
+<parameter_description> the target transition name to query,
+or %NULL for all target states
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a vector with the values
+<parameter name="object">
+<parameter_description> the specific object instance to list keys for,
+or %NULL for all managed objects
+</parameter_description>
+</parameter>
+<parameter name="property_name">
+<parameter_description> the property name to search for, or %NULL
+for all properties.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a
+newly allocated #GList of #ClutterStateKey&lt;!-- --&gt;s. The contents of
+the returned list are owned by the #ClutterState and should not be
+modified or freed. Use g_list_free() to free the resources allocated
+by the returned list when done using it
+
+</return>
 </function>
 
-<function name="clutter_actor_move_by">
+<function name="clutter_state_get_state">
 <description>
-Moves an actor by the specified distance relative to its current
-position in pixels.
+Queries the currently set target state.
 
-This function modifies the fixed position of an actor and thus removes
-it from any layout management. Another way to move an actor is with an
-anchor point, see clutter_actor_set_anchor_point().
+During a transition this function will return the target of the transition.
 
-Since: 0.2
+This function is useful when called from handlers of the
+#ClutterState::completed signal.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="dx">
-<parameter_description> Distance to move Actor on X axis.
-</parameter_description>
-</parameter>
-<parameter name="dy">
-<parameter_description> Distance to move Actor on Y axis.
+<parameter name="state">
+<parameter_description> a #ClutterState
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a string containing the target state. The returned string
+is owned by the #ClutterState and should not be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_text_set_attributes">
+<function name="clutter_state_get_states">
 <description>
-Sets the attributes list that are going to be applied to the
-#ClutterText contents.
-
-The #ClutterText actor will take a reference on the #PangoAttrList
-passed to this function.
+Gets a list of all the state names managed by this #ClutterState.
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="attrs">
-<parameter_description> a #PangoAttrList or %NULL to unset the attributes
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated
+#GList of state names. The contents of the returned #GList are owned
+by the #ClutterState and should not be modified or freed. Use
+g_list_free() to free the resources allocated by the returned list when
+done using it
+
+</return>
 </function>
 
-<function name="clutter_cairo_texture_set_surface_size">
+<function name="clutter_state_get_timeline">
 <description>
-Resizes the Cairo surface used by @self to @width and @height.
+Gets the timeline driving the #ClutterState
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterCairoTexture
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> the new width of the surface
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> the new height of the surface
+<parameter name="state">
+<parameter_description> a #ClutterState
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #ClutterTimeline that drives
+the state change animations. The returned timeline is owned
+by the #ClutterState and it should not be unreferenced directly
+
+</return>
 </function>
 
-<function name="clutter_cairo_texture_clear">
+<function name="clutter_state_key_get_mode">
 <description>
-Clears @self's internal drawing surface, so that the next upload
-will replace the previous contents of the #ClutterCairoTexture
-rather than adding to it.
+Retrieves the easing mode used for @state_key.
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterCairoTexture
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the mode of a #ClutterStateKey
+
+</return>
 </function>
 
-<function name="clutter_threads_add_frame_source_full">
+<function name="clutter_state_key_get_object">
 <description>
-Sets a function to be called at regular intervals holding the Clutter
-threads lock, with the given priority. The function is called repeatedly
-until it returns %FALSE, at which point the timeout is automatically
-removed and the function will not be called again. The @notify function
-is called when the timeout is removed.
-
-This function is similar to clutter_threads_add_timeout_full()
-except that it will try to compensate for delays. For example, if
-@func takes half the interval time to execute then the function
-will be called again half the interval time after it finished. In
-contrast clutter_threads_add_timeout_full() would not fire until a
-full interval after the function completes so the delay between
-calls would be @interval * 1.5. This function does not however try
-to invoke the function multiple times to catch up missing frames if
-@func takes more than @interval ms to execute.
-
-See also clutter_threads_add_idle_full().
+Retrieves the object instance this #ClutterStateKey applies to.
 
-Since: 0.8
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the frame source. Typically this will be in the
-range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
-</parameter_description>
-</parameter>
-<parameter name="fps">
-<parameter_description> the number of times per second to call the function
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
-</parameter_description>
-</parameter>
-<parameter name="notify">
-<parameter_description> function to call when the timeout source is removed
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> the object this state key applies to.
 
 </return>
 </function>
 
-<function name="clutter_behaviour_scale_new">
+<function name="clutter_state_key_get_post_delay">
 <description>
-Creates a new  #ClutterBehaviourScale instance.
+Retrieves the duration of the pause after transitioning is complete
+as a fraction of the total transition time.
 
-Since: 0.2
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha
-</parameter_description>
-</parameter>
-<parameter name="x_scale_start">
-<parameter_description> initial scale factor on the X axis
-</parameter_description>
-</parameter>
-<parameter name="y_scale_start">
-<parameter_description> initial scale factor on the Y axis
-</parameter_description>
-</parameter>
-<parameter name="x_scale_end">
-<parameter_description> final scale factor on the X axis
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
-<parameter name="y_scale_end">
-<parameter_description> final scale factor on the Y axis
+</parameters>
+<return> the post delay, used after doing the transition.
+
+</return>
+</function>
+
+<function name="clutter_state_key_get_pre_delay">
+<description>
+Retrieves the pause before transitioning starts as a fraction of
+the total transition time.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
+
+</description>
+<parameters>
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterBehaviourScale
+<return> the pre delay used before starting the transition.
 
 </return>
 </function>
 
-<function name="clutter_animation_set_alpha">
+<function name="clutter_state_key_get_property_name">
 <description>
-Sets @alpha as the #ClutterAlpha used by @animation.
-
-If @alpha is not %NULL, the #ClutterAnimation will take ownership
-of the #ClutterAlpha instance.
+Retrieves the name of the property this #ClutterStateKey applies to
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
-</parameter_description>
-</parameter>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha, or %NULL to unset the current #ClutterAlpha
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the property. The returned string is owned
+by the #ClutterStateKey and should never be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_stage_manager_get_default">
+<function name="clutter_state_key_get_property_type">
 <description>
-Returns the default #ClutterStageManager.
+Retrieves the #GType of the property a key applies to
 
-Since: 0.8
+You can use this type to initialize the #GValue to pass to
+clutter_state_key_get_value()
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
+<parameter name="key">
+<parameter_description> a #ClutterStateKey
+</parameter_description>
+</parameter>
 </parameters>
-<return> the default stage manager instance. The returned
-object is owned by Clutter and you should not reference or unreference it.
+<return> the #GType of the property
 
 </return>
 </function>
 
-<function name="clutter_behaviour_set_alpha">
+<function name="clutter_state_key_get_source_state_name">
 <description>
-Binds @alpha to a #ClutterBehaviour. The #ClutterAlpha object
-is what makes a behaviour work: for each tick of the timeline
-used by #ClutterAlpha a new value of the alpha parameter is
-computed by the alpha function; the value should be used by
-the #ClutterBehaviour to update one or more properties of the
-actors to which the behaviour applies.
-
-If @alpha is not %NULL, the #ClutterBehaviour will take ownership
-of the #ClutterAlpha instance.
+Retrieves the name of the source state of the @state_key
 
-Since: 0.2
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
-</parameter_description>
-</parameter>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha or %NULL to unset a previously set alpha
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the source state for this key, or %NULL
+if this is the generic state key for the given property when
+transitioning to the target state. The returned string is owned
+by the #ClutterStateKey and should never be modified or freed
+
+</return>
 </function>
 
-<function name="clutter_alpha_set_mode">
+<function name="clutter_state_key_get_target_state_name">
 <description>
-Sets the progress function of @alpha using the symbolic value
-of @mode, as taken by the #ClutterAnimationMode enumeration or
-using the value returned by clutter_alpha_register_func().
+Get the name of the source state this #ClutterStateKey contains,
+or NULL if this is the generic state key for the given property
+when transitioning to the target state.
 
-Since: 1.0
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> a #ClutterAnimationMode
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the name of the source state for this key, or NULL if
+the key is generic
+
+</return>
 </function>
 
-<function name="json_array_get_array_element">
+<function name="clutter_state_key_get_value">
 <description>
-Conveniently retrieves the array from the element at @index_
-inside @array
+Retrieves a copy of the value for a #ClutterStateKey.
 
-See also: json_array_get_element(), json_node_get_array()
+The #GValue needs to be already initialized for the value type
+of the property or to a type that allow transformation from the value
+type of the key.
 
-Since: 0.8
+Use g_value_unset() when done.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="state_key">
+<parameter_description> a #ClutterStateKey
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to retrieve
+<parameter name="value">
+<parameter_description> a #GValue initialized with the correct type for the @state_key
 </parameter_description>
 </parameter>
 </parameters>
-<return> the array
+<return> %TRUE if the value was successfully retrieved,
+and %FALSE otherwise
 
 </return>
 </function>
 
-<function name="clutter_stage_get_user_resizable">
+<function name="clutter_state_new">
 <description>
-Retrieves the value set with clutter_stage_set_user_resizable().
+Creates a new #ClutterState
 
-Since: 0.4
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the stage is resizable by the user.
+<return> the newly create #ClutterState instance
 
 </return>
 </function>
 
-<function name="clutter_box_layout_get_expand">
+<function name="clutter_state_remove_key">
 <description>
-Retrieves whether @actor should expand inside @layout
+Removes all keys matching the search criteria passed in arguments.
 
-Since: 1.2
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @layout
+<parameter name="source_state_name">
+<parameter_description> the source state name to query,
+or %NULL for all source states
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the target state name to query,
+or %NULL for all target states
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description> the specific object instance to list keys for,
+or %NULL for all managed objects
+</parameter_description>
+</parameter>
+<parameter name="property_name">
+<parameter_description> the property name to search for,
+or %NULL for all properties.
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterActor should expand, %FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_get_debug_enabled">
+<function name="clutter_state_set">
 <description>
-Check if clutter has debugging turned on.
+Adds multiple keys to a named state of a #ClutterState instance, specifying
+the easing mode and value a given property of an object should have at a
+given progress of the animation.
+
+The mode specified is the easing mode used when going to from the previous
+key to the specified key.
+
+For instance, the code below:
+
+|[
+clutter_state_set (state, NULL, &quot;hover&quot;,
+button, &quot;opacity&quot;, CLUTTER_LINEAR, 255,
+button, &quot;scale-x&quot;, CLUTTER_EASE_OUT_CUBIC, 1.2,
+button, &quot;scale-y&quot;, CLUTTER_EASE_OUT_CUBIC, 1.2,
+NULL);
+]|
+
+will create a transition from any state (a @source_state_name or NULL is
+treated as a wildcard) and a state named &quot;hover&quot;; the
+&lt;emphasis&gt;button&lt;/emphasis&gt; object will have the #ClutterActor:opacity
+property animated to a value of 255 using %CLUTTER_LINEAR as the animation
+mode, and the #ClutterActor:scale-x and #ClutterActor:scale-y properties
+animated to a value of 1.2 using %CLUTTER_EASE_OUT_CUBIC as the animation
+mode. To change the state (and start the transition) you can use the
+clutter_state_set_state() function:
+
+|[
+clutter_state_set_state (state, &quot;hover&quot;);
+]|
+
+If a given object, state_name, property tuple already exist in the
+#ClutterState instance, then the mode and value will be replaced with
+the new specified values.
+
+If a property name is prefixed with &quot;delayed::&quot; two additional
+arguments per key are expected: a value relative to the full state time
+to pause before transitioning and a similar value to pause after
+transitioning, e.g.:
 
+|[
+clutter_state_set (state, &quot;hover&quot;, &quot;toggled&quot;,
+button, &quot;delayed::scale-x&quot;, CLUTTER_LINEAR, 1.0, 0.2, 0.2,
+button, &quot;delayed::scale-y&quot;, CLUTTER_LINEAR, 1.0, 0.2, 0.2,
+NULL);
+]|
+
+will pause for 20% of the duration of the transition before animating,
+and 20% of the duration after animating.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
+</parameter_description>
+</parameter>
+<parameter name="source_state_name">
+<parameter_description> the name of the source state keys are being added for
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the name of the target state keys are being added for
+</parameter_description>
+</parameter>
+<parameter name="first_object">
+<parameter_description> a #GObject
+</parameter_description>
+</parameter>
+<parameter name="first_property_name">
+<parameter_description> a property of @first_object to specify a key for
+</parameter_description>
+</parameter>
+<parameter name="first_mode">
+<parameter_description> the id of the alpha function to use
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the value @first_property_name should have in @target_state_name,
+followed by object, property name, mode, value tuples, terminated
+by %NULL
+</parameter_description>
+</parameter>
 </parameters>
-<return> TRUE if debugging is turned on, FALSE otherwise.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_behaviour_rotate_get_direction">
+<function name="clutter_state_set_animator">
 <description>
-Retrieves the #ClutterRotateDirection used by the rotate behaviour.
+Specifies a #ClutterAnimator to be used when transitioning between
+the two named states.
 
-Since: 0.4
+The @animator allows specifying a transition between the state that is
+more elaborate than the basic transitions allowed by the tweening of
+properties defined in the #ClutterState keys.
+
+If @animator is %NULL it will unset an existing animator.
+
+#ClutterState will take a reference on the passed @animator, if any
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
+</parameter_description>
+</parameter>
+<parameter name="source_state_name">
+<parameter_description> the name of a source state
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the name of a target state
+</parameter_description>
+</parameter>
+<parameter name="animator">
+<parameter_description> a #ClutterAnimator instance, or %NULL to
+unset an existing #ClutterAnimator
 </parameter_description>
 </parameter>
 </parameters>
-<return> the rotation direction
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_score_remove_all">
+<function name="clutter_state_set_duration">
 <description>
-Removes all the timelines inside @score.
+Sets the duration of a transition.
 
-Since: 0.6
+If both state names are %NULL the default duration for @state is set.
+
+If only @target_state_name is specified, the passed @duration becomes
+the default duration for transitions to the target state.
+
+If both states names are specified, the passed @duration only applies
+to the specified transition.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> a #ClutterScore
+<parameter name="state">
+<parameter_description> a #ClutterState
+</parameter_description>
+</parameter>
+<parameter name="source_state_name">
+<parameter_description> the name of the source state, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the name of the target state, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="duration">
+<parameter_description> the duration of the transition, in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_ellipse_set_direction">
+<function name="clutter_state_set_key">
 <description>
-Sets the rotation direction used by the ellipse behaviour.
+Sets one specific end key for a state name, @object, @property_name
+combination.
 
-Since: 0.4
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="state">
+<parameter_description> a #ClutterState instance.
 </parameter_description>
 </parameter>
-<parameter name="direction">
-<parameter_description> the rotation direction
+<parameter name="source_state_name">
+<parameter_description> the source transition to specify
+transition for, or %NULL to specify the default fallback when a
+more specific source state doesn't exist.
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the name of the transition to set a key value for.
+</parameter_description>
+</parameter>
+<parameter name="object">
+<parameter_description> the #GObject to set a key for
+</parameter_description>
+</parameter>
+<parameter name="property_name">
+<parameter_description> the property to set a key for
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> the id of the alpha function to use
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> the value for property_name of object in state_name
+</parameter_description>
+</parameter>
+<parameter name="pre_delay">
+<parameter_description> relative time of the transition to be idle in the beginning
+of the transition
+</parameter_description>
+</parameter>
+<parameter name="post_delay">
+<parameter_description> relative time of the transition to be idle in the end of
+the transition
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #ClutterState instance, allowing
+chaining of multiple calls
+
+</return>
 </function>
 
-<function name="clutter_text_get_cursor_color">
+<function name="clutter_state_set_state">
 <description>
-Retrieves the color of the cursor of a #ClutterText actor.
+Change the current state of #ClutterState to @target_state_name.
 
-Since: 1.0
+The state will animate during its transition, see
+#clutter_state_warp_to_state for animation-free state switching.
+
+Setting a %NULL state will stop the current animation and unset
+the current state, but keys will be left intact.
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="state">
+<parameter_description> a #ClutterState
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> return location for a #ClutterColor
+<parameter name="target_state_name">
+<parameter_description> the state to transition to
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the #ClutterTimeline that drives the
+state transition. The returned timeline is owned by the #ClutterState
+and it should not be unreferenced
+
+</return>
 </function>
 
-<function name="clutter_x11_texture_pixmap_new_with_window">
+<function name="clutter_state_warp_to_state">
 <description>
-Creates a new #ClutterX11TexturePixmap for @window
+Change to the specified target state immediately with no animation.
 
-Since: 0.8
+See clutter_state_set_state().
+
+Since: 1.4
+Deprecated: 1.12: Use #ClutterKeyframeTransition and
+#ClutterTransitionGroup instead
 
 </description>
 <parameters>
-<parameter name="window">
-<parameter_description> the X window to which this texture should be bound
+<parameter name="state">
+<parameter_description> a #ClutterState
+</parameter_description>
+</parameter>
+<parameter name="target_state_name">
+<parameter_description> the state to transition to
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterX11TexturePixmap bound to the given X window.
+<return> the #ClutterTimeline that drives the
+state transition. The returned timeline is owned by the #ClutterState
+and it should not be unreferenced
 
 </return>
 </function>
 
-<function name="clutter_ungrab_keyboard">
+<function name="clutter_swipe_action_new">
 <description>
-Removes an existing grab of the keyboard.
+Creates a new #ClutterSwipeAction instance
 
-Since: 0.6
+Since: 1.8
+
+</description>
+<parameters>
+</parameters>
+<return> the newly created #ClutterSwipeAction
+
+</return>
+</function>
+
+<function name="clutter_table_layout_get_alignment">
+<description>
+Retrieves the horizontal and vertical alignment policies for @actor
+as set using clutter_table_layout_pack() or
+clutter_table_layout_set_alignment().
+
+Since: 1.4
+
+Deprecated: 1.12: Use clutter_actor_get_x_align() and
+clutter_actor_get_y_align() instead.
 
 </description>
 <parameters>
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="x_align">
+<parameter_description> return location for the horizontal alignment policy
+</parameter_description>
+</parameter>
+<parameter name="y_align">
+<parameter_description> return location for the vertical alignment policy
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_single_line_mode">
+<function name="clutter_table_layout_get_column_count">
 <description>
-Retrieves whether the #ClutterText actor is in single line mode.
+Retrieve the current number of columns in @layout
+
+Since: 1.4
 
-Since: 1.0
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="layout">
+<parameter_description> A #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the #ClutterText actor is in single line mode
+<return> the number of columns
 
 </return>
 </function>
 
-<function name="cogl_pango_font_map_set_use_mipmapping">
+<function name="clutter_table_layout_get_column_spacing">
 <description>
-Sets whether the renderer for the passed font map should use
-mipmapping when rendering a #PangoLayout.
+Retrieves the spacing set using clutter_table_layout_set_column_spacing()
 
-Since: 1.0
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="fm">
-<parameter_description> a #CoglPangoFontMap
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> %TRUE to enable the use of mipmapping
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the spacing between columns of the #ClutterTableLayout
+
+</return>
 </function>
 
-<function name="clutter_binding_pool_block_action">
+<function name="clutter_table_layout_get_easing_duration">
 <description>
-Blocks all the actions with name @action_name inside @pool.
+Retrieves the duration set using clutter_table_layout_set_easing_duration()
 
-Since: 1.0
+Since: 1.4
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="action_name">
-<parameter_description> an action name
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the duration of the animations, in milliseconds
+
+</return>
 </function>
 
-<function name="clutter_animator_key_get_object">
+<function name="clutter_table_layout_get_easing_mode">
 <description>
-Retrieves the object a key applies to.
+Retrieves the easing mode set using clutter_table_layout_set_easing_mode()
 
-Since: 1.2
+Since: 1.4
+
+Deprecated: 1.12: #ClutterTableLayout will honour the easing state
+of the children when allocating them
 
 </description>
 <parameters>
-<parameter name="key">
-<parameter_description> a #ClutterAnimatorKey
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return> the object an animator_key exist for.
+<return> an easing mode
 
 </return>
 </function>
 
-<function name="clutter_behaviour_rotate_set_bounds">
+<function name="clutter_table_layout_get_expand">
 <description>
-Sets the initial and final angles of a rotation behaviour; angles &gt;= 360
-degrees get clamped to the canonical interval &lt;0, 360).
+Retrieves the horizontal and vertical expand policies for @actor
+as set using clutter_table_layout_pack() or clutter_table_layout_set_expand()
 
-Since: 0.4
+Since: 1.4
+
+Deprecated: 1.12: Use clutter_actor_get_x_expand() and
+clutter_actor_get_y_expand() instead.
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
-<parameter name="angle_start">
-<parameter_description> initial angle in degrees, between 0 and 360.
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
 </parameter_description>
 </parameter>
-<parameter name="angle_end">
-<parameter_description> final angle in degrees, between 0 and 360.
+<parameter name="x_expand">
+<parameter_description> return location for the horizontal expand policy
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_cairo_texture_create">
-<description>
-Creates a new Cairo context for the @cairo texture. It is
-similar to using clutter_cairo_texture_create_region() with @x_offset
-and @y_offset of 0, @width equal to the @cairo texture surface width
-and @height equal to the @cairo texture surface height.
-
-&lt;warning&gt;&lt;para&gt;Do not call this function within the paint virtual
-function or from a callback to the #ClutterActor::paint
-signal.&lt;/para&gt;&lt;/warning&gt;
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> a #ClutterCairoTexture
+<parameter name="y_expand">
+<parameter_description> return location for the vertical expand policy
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly created Cairo context. Use cairo_destroy()
-to upload the contents of the context when done drawing
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_property_set_interpolation">
+<function name="clutter_table_layout_get_fill">
 <description>
-Set the interpolation method to use, %CLUTTER_INTERPOLATION_LINEAR causes
-the values to linearly change between the values, and
-%CLUTTER_INTERPOLATION_CUBIC causes the values to smoothly change between
-the values.
+Retrieves the horizontal and vertical fill policies for @actor
+as set using clutter_table_layout_pack() or clutter_table_layout_set_fill()
 
-Since: 1.2
+Since: 1.4
+
+Deprecated: 1.12: Use clutter_actor_get_x_align() and
+clutter_actor_get_y_align() instead.
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimatorKey
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
-<parameter name="object">
-<parameter_description> a #GObject
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> the name of a property on object
+<parameter name="x_fill">
+<parameter_description> return location for the horizontal fill policy
 </parameter_description>
 </parameter>
-<parameter name="interpolation">
-<parameter_description> the #ClutterInterpolation to use
+<parameter name="y_fill">
+<parameter_description> return location for the vertical fill policy
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_add_close">
+<function name="clutter_table_layout_get_row_count">
 <description>
-Adds a %CLUTTER_PATH_CLOSE type node to the path. This creates a
-straight line from the last node to the last %CLUTTER_PATH_MOVE_TO
-type node.
+Retrieve the current number rows in the @layout
 
-Since: 1.0
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
+<parameter name="layout">
+<parameter_description> A #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the number of rows
+
+</return>
 </function>
 
-<function name="clutter_media_get_audio_volume">
+<function name="clutter_table_layout_get_row_spacing">
 <description>
-Retrieves the playback volume of @media.
+Retrieves the spacing set using clutter_table_layout_set_row_spacing()
 
-Since: 1.0
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return> The playback volume between 0.0 and 1.0
+<return> the spacing between rows of the #ClutterTableLayout
 
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_get_angle_start">
+<function name="clutter_table_layout_get_span">
 <description>
-Gets the angle at which movements starts.
+Retrieves the row and column span for @actor as set using
+clutter_table_layout_pack() or clutter_table_layout_set_span()
 
-Since: 0.6
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="column_span">
+<parameter_description> return location for the col span
+</parameter_description>
+</parameter>
+<parameter name="row_span">
+<parameter_description> return location for the row span
 </parameter_description>
 </parameter>
 </parameters>
-<return> angle in degrees
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_texture_get_cogl_texture">
+<function name="clutter_table_layout_get_use_animations">
 <description>
-Retrieves the handle to the underlying COGL texture used for drawing
-the actor. No extra reference is taken so if you need to keep the
-handle then you should call cogl_handle_ref() on it.
+Retrieves whether @layout should animate changes in the layout properties
 
-The texture handle returned is the first layer of the material
-handle used by the #ClutterTexture. If you need to access the other
-layers you should use clutter_texture_get_cogl_material() instead
-and use the #CoglMaterial API.
+Since clutter_table_layout_set_use_animations()
 
-Since: 0.8
+Since: 1.4
 
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 </parameters>
-<return> COGL texture handle
+<return> %TRUE if the animations should be used, %FALSE otherwise
+
 </return>
 </function>
 
-<function name="json_object_unref">
+<function name="clutter_table_layout_new">
 <description>
-Decreases by one the reference count of a #JsonObject. If the
-reference count reaches zero, the object is destroyed and all
-its allocated resources are freed.
+Creates a new #ClutterTableLayout layout manager
+
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterTableLayout
+
+</return>
 </function>
 
-<function name="clutter_box_layout_set_fill">
+<function name="clutter_table_layout_pack">
 <description>
-Sets the horizontal and vertical fill policies for @actor
-inside @layout
+Packs @actor inside the #ClutterContainer associated to @layout
+at the given row and column.
 
-Since: 1.2
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
 <parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
 <parameter name="actor">
-<parameter_description> a #ClutterActor child of @layout
+<parameter_description> a #ClutterActor
 </parameter_description>
 </parameter>
-<parameter name="x_fill">
-<parameter_description> whether @actor should fill horizontally the allocated space
+<parameter name="column">
+<parameter_description> the column the @actor should be put, or -1 to append
 </parameter_description>
 </parameter>
-<parameter name="y_fill">
-<parameter_description> whether @actor should fill vertically the allocated space
+<parameter name="row">
+<parameter_description> the row the @actor should be put, or -1 to append
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_get_opacity">
+<function name="clutter_table_layout_set_alignment">
 <description>
-Retrieves the opacity value of an actor, as set by
-clutter_actor_set_opacity().
+Sets the horizontal and vertical alignment policies for @actor
+inside @layout
 
-For retrieving the absolute opacity of the actor inside a paint
-virtual function, see clutter_actor_get_paint_opacity().
+Since: 1.4
 
+Deprecated: 1.12: Use clutter_actor_set_x_align() and
+clutter_actor_set_y_align() instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="x_align">
+<parameter_description> Horizontal alignment policy for @actor
+</parameter_description>
+</parameter>
+<parameter name="y_align">
+<parameter_description> Vertical alignment policy for @actor
 </parameter_description>
 </parameter>
 </parameters>
-<return> the opacity of the actor
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_depth">
+<function name="clutter_table_layout_set_column_spacing">
 <description>
-Retrieves the depth of @self.
+Sets the spacing between columns of @layout
 
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="spacing">
+<parameter_description> the spacing between columns of the layout, in pixels
 </parameter_description>
 </parameter>
 </parameters>
-<return> the depth of the actor
-</return>
+<return></return>
 </function>
 
-<function name="clutter_text_get_line_wrap_mode">
+<function name="clutter_table_layout_set_easing_duration">
 <description>
-Retrieves the line wrap mode used by the #ClutterText actor.
+Sets the duration of the animations used by @layout when animating changes
+in the layout properties
 
-See clutter_text_set_line_wrap_mode ().
+Use clutter_table_layout_set_use_animations() to enable and disable the
+animations
 
-Since: 1.0
+Since: 1.4
+
+Deprecated: 1.12: #ClutterTableLayout will honour the easing state
+of the children when allocating them
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="msecs">
+<parameter_description> the duration of the animations, in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
-<return> the wrap mode used by the #ClutterText
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_set_anchor_point">
+<function name="clutter_table_layout_set_easing_mode">
 <description>
-Sets an anchor point for @self. The anchor point is a point in the
-coordinate space of an actor to which the actor position within its
-parent is relative; the default is (0, 0), i.e. the top-left corner
-of the actor.
+Sets the easing mode to be used by @layout when animating changes in layout
+properties
 
-Since: 0.6
+Use clutter_table_layout_set_use_animations() to enable and disable the
+animations
+
+Since: 1.4
+
+Deprecated: 1.12: #ClutterTableLayout will honour the easing state
+of the children when allocating them
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="anchor_x">
-<parameter_description> X coordinate of the anchor point
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
-<parameter name="anchor_y">
-<parameter_description> Y coordinate of the anchor point
+<parameter name="mode">
+<parameter_description> an easing mode, either from #ClutterAnimationMode or a logical id
+from clutter_alpha_register_func()
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_media_get_can_seek">
+<function name="clutter_table_layout_set_expand">
 <description>
-Retrieves whether @media is seekable or not.
+Sets the horizontal and vertical expand policies for @actor
+inside @layout
 
-Since: 0.2
+Since: 1.4
+
+Deprecated: 1.12: Use clutter_actor_set_x_expand() or
+clutter_actor_set_y_expand() instead.
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="x_expand">
+<parameter_description> whether @actor should allocate extra space horizontally
+</parameter_description>
+</parameter>
+<parameter name="y_expand">
+<parameter_description> whether @actor should allocate extra space vertically
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if @media can seek, %FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="json_array_get_string_element">
+<function name="clutter_table_layout_set_fill">
 <description>
-Conveniently retrieves the string value of the element at @index_
-inside @array
+Sets the horizontal and vertical fill policies for @actor
+inside @layout
 
-See also: json_array_get_element(), json_node_get_string()
+Since: 1.4
 
-Since: 0.8
+Deprecated: 1.12: Use clutter_actor_set_x_align() and
+clutter_actor_set_y_align() instead.
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to retrieve
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="x_fill">
+<parameter_description> whether @actor should fill horizontally the allocated space
+</parameter_description>
+</parameter>
+<parameter name="y_fill">
+<parameter_description> whether @actor should fill vertically the allocated space
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string value; the returned string is owned by
-the #JsonArray and should not be modified or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_name">
+<function name="clutter_table_layout_set_row_spacing">
 <description>
-Retrieves the name of @self.
+Sets the spacing between rows of @layout
 
+Since: 1.4
+
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="spacing">
+<parameter_description> the spacing between rows of the layout, in pixels
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the actor, or %NULL. The returned string is
-owned by the actor and should not be modified or freed.
-</return>
+<return></return>
 </function>
 
-<function name="json_object_set_null_member">
+<function name="clutter_table_layout_set_span">
 <description>
-Convenience function for setting a null @value of
-@member_name inside @object.
+Sets the row and column span for @actor
+inside @layout
 
-See also: json_object_set_member()
+Since: 1.4
 
-Since: 0.8
+Deprecated: 1.18: Use #ClutterGridLayout instead
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="actor">
+<parameter_description> a #ClutterActor child of @layout
+</parameter_description>
+</parameter>
+<parameter name="column_span">
+<parameter_description> Column span for @actor
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="row_span">
+<parameter_description> Row span for @actor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_get_use_alpha">
+<function name="clutter_table_layout_set_use_animations">
 <description>
-Retrieves the value set using clutter_stage_set_use_alpha()
+Sets whether @layout should animate changes in the layout properties
 
-Since: 1.2
+The duration of the animations is controlled by
+clutter_table_layout_set_easing_duration(); the easing mode to be used
+by the animations is controlled by clutter_table_layout_set_easing_mode()
+
+Since: 1.4
+
+Deprecated: 1.12: #ClutterTableLayout will honour the easing state
+of the children when allocating them
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="layout">
+<parameter_description> a #ClutterTableLayout
+</parameter_description>
+</parameter>
+<parameter name="animate">
+<parameter_description> %TRUE if the @layout should use animations
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the stage should honour the opacity and the
-alpha channel of the stage color
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animation_new">
+<function name="clutter_tap_action_new">
 <description>
-Creates a new #ClutterAnimation instance. You should set the
-#GObject to be animated using clutter_animation_set_object(),
-set the duration with clutter_animation_set_duration() and the
-easing mode using clutter_animation_set_mode().
-
-Use clutter_animation_bind() or clutter_animation_bind_interval()
-to define the properties to be animated. The interval and the
-animated properties can be updated at runtime.
-
-The clutter_actor_animate() and relative family of functions provide
-an easy way to animate a #ClutterActor and automatically manage the
-lifetime of a #ClutterAnimation instance, so you should consider using
-those functions instead of manually creating an animation.
+Creates a new #ClutterTapAction instance
 
-Since: 1.0
+Since: 1.14
 
 </description>
 <parameters>
 </parameters>
-<return> the newly created #ClutterAnimation. Use g_object_unref()
-to release the associated resources
+<return> the newly created #ClutterTapAction
 
 </return>
 </function>
 
-<function name="clutter_text_set_password_char">
+<function name="clutter_test_add">
 <description>
-Sets the character to use in place of the actual text in a
-password text actor.
+Adds a test unit to the Clutter test environment.
 
-If @wc is 0 the text will be displayed as it is entered in the
-#ClutterText actor.
+See also: g_test_add()
 
-Since: 1.0
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="test_path">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="wc">
-<parameter_description> a Unicode character, or 0 to unset the password character
+<parameter name="test_func">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animation_set_timeline">
+<function name="clutter_test_add_data">
 <description>
-Sets the #ClutterTimeline used by @animation.
+Adds a test unit to the Clutter test environment.
 
-Since: 1.0
+See also: g_test_add_data_func()
+
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="test_path">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline, or %NULL to unset the
-current #ClutterTimeline
+<parameter name="test_func">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="test_data">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_interval_get_interval">
+<function name="clutter_test_add_data_full">
 <description>
-Variable arguments wrapper for clutter_interval_get_initial_value()
-and clutter_interval_get_final_value() that avoids using the
-#GValue arguments:
-
-|[
-gint a = 0, b = 0;
-clutter_interval_get_interval (interval, &amp;a, &amp;b);
-]|
+Adds a test unit to the Clutter test environment.
 
-This function is meant for the convenience of the C API; bindings
-should reimplement this function using the #GValue-based API.
+See also: g_test_add_data_func_full()
 
-Since: 1.0
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="test_path">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="Varargs">
-<parameter_description> return locations for the initial and final values of
-the interval
+<parameter name="test_func">
+<parameter_description> (scope notified)
+</parameter_description>
+</parameter>
+<parameter name="test_data">
+<parameter_description>
+</parameter_description>
+</parameter>
+<parameter name="test_notify">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animator_property_set_ease_in">
+<function name="clutter_test_get_stage">
 <description>
-Sets whether a property value is to be eased into the animation.
+Retrieves the #ClutterStage used for testing.
 
-Since: 1.2
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimatorKey
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of a property on object
-</parameter_description>
-</parameter>
-<parameter name="ease_in">
-<parameter_description> we are going to be easing in this property
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the stage used for testing
+
+</return>
 </function>
 
-<function name="clutter_actor_get_geometry">
+<function name="clutter_test_init">
 <description>
-Gets the size and position of an actor relative to its parent
-actor. This is the same as calling clutter_actor_get_position() and
-clutter_actor_get_size(). It tries to &quot;do what you mean&quot; and get the
-requested size and position if the actor's allocation is invalid.
+Initializes the Clutter test environment.
+
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="argc">
+<parameter_description>
 </parameter_description>
 </parameter>
-<parameter name="geometry">
-<parameter_description> A location to store actors #ClutterGeometry
+<parameter name="argv">
+<parameter_description>
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_child_meta_get_container">
+<function name="clutter_test_run">
 <description>
-Retrieves the container using @data
+Runs the test suite using the units added by calling
+clutter_test_add().
 
-Since: 0.8
+The typical test suite is composed of a list of functions
+called by clutter_test_run(), for instance:
 
-</description>
-<parameters>
-<parameter name="data">
-<parameter_description> a #ClutterChildMeta
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #ClutterContainer
+|[
+static void unit_foo (void) { ... }
 
-</return>
-</function>
+static void unit_bar (void) { ... }
 
-<function name="clutter_actor_event">
-<description>
-This function is used to emit an event on the main stage.
-You should rarely need to use this function, except for
-synthetising events.
+static void unit_baz (void) { ... }
 
-Since: 0.6
+int
+main (int argc, char *argv[])
+{
+clutter_test_init (&amp;argc, &amp;argv);
+
+clutter_test_add (&quot;/unit/foo&quot;, unit_foo);
+clutter_test_add (&quot;/unit/bar&quot;, unit_bar);
+clutter_test_add (&quot;/unit/baz&quot;, unit_baz);
+
+return clutter_test_run ();
+}
+]|
+
+Since: 1.18
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
-</parameter_description>
-</parameter>
-<parameter name="capture">
-<parameter_description> TRUE if event in in capture phase, FALSE otherwise.
-</parameter_description>
-</parameter>
 </parameters>
-<return> the return value from the signal emission: %TRUE
-if the actor handled the event, or %FALSE if the event was
-not handled
+<return> the exit code for the test suite
 
 </return>
 </function>
 
-<function name="clutter_text_set_preedit_string">
+<function name="clutter_text_activate">
 <description>
-Sets, or unsets, the pre-edit string. This function is useful
-for input methods to display a string (with eventual specific
-Pango attributes) before it is entered inside the #ClutterText
-buffer.
-
-The preedit string and attributes are ignored if the #ClutterText
-actor is not editable.
+Emits the #ClutterText::activate signal, if @self has been set
+as activatable using clutter_text_set_activatable().
 
-This function should not be used by applications
+This function can be used to emit the ::activate signal inside
+a #ClutterActor::captured-event or #ClutterActor::key-press-event
+signal handlers before the default signal handler for the
+#ClutterText is invoked.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
@@ -15747,482 +34760,431 @@ Since: 1.2
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="preedit_str">
-<parameter_description> the pre-edit string, or %NULL to unset it
-</parameter_description>
-</parameter>
-<parameter name="preedit_attrs">
-<parameter_description> the pre-edit string attributes
-</parameter_description>
-</parameter>
-<parameter name="cursor_pos">
-<parameter_description> the cursor position for the pre-edit string
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the ::activate signal has been emitted,
+and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_actor_get_allocation_geometry">
+<function name="clutter_text_buffer_delete_text">
 <description>
-Gets the layout box an actor has been assigned.  The allocation can
-only be assumed valid inside a paint() method; anywhere else, it
-may be out-of-date.
+Deletes a sequence of characters from the buffer. @n_chars characters are
+deleted starting at @position. If @n_chars is negative, then all characters
+until the end of the text are deleted.
 
-An allocation does not incorporate the actor's scale or anchor point;
-those transformations do not affect layout, only rendering.
+If @position or @n_chars are out of bounds, then they are coerced to sane
+values.
 
-The returned rectangle is in pixels.
+Note that the positions are specified in characters, not bytes.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
-<parameter name="geom">
-<parameter_description> allocation geometry in pixels
+<parameter name="position">
+<parameter_description> position at which to delete text
+</parameter_description>
+</parameter>
+<parameter name="n_chars">
+<parameter_description> number of characters to delete
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The number of characters deleted.
+
+</return>
 </function>
 
-<function name="clutter_actor_pop_internal">
+<function name="clutter_text_buffer_emit_deleted_text">
 <description>
-Disables the effects of clutter_actor_pop_internal()
+Emits the #ClutterTextBuffer::deleted-text signal on @buffer.
 
-Since: 1.2
+Used when subclassing #ClutterTextBuffer
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
+</parameter_description>
+</parameter>
+<parameter name="position">
+<parameter_description> position at which text was deleted
+</parameter_description>
+</parameter>
+<parameter name="n_chars">
+<parameter_description> number of characters deleted
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_array_dup_element">
+<function name="clutter_text_buffer_emit_inserted_text">
 <description>
-Retrieves a copy of the #JsonNode containing the value of the
-element at @index_ inside a #JsonArray
+Emits the #ClutterTextBuffer::inserted-text signal on @buffer.
 
-Since: 0.6
+Used when subclassing #ClutterTextBuffer
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to retrieve
+<parameter name="position">
+<parameter_description> position at which text was inserted
+</parameter_description>
+</parameter>
+<parameter name="chars">
+<parameter_description> text that was inserted
+</parameter_description>
+</parameter>
+<parameter name="n_chars">
+<parameter_description> number of characters inserted
 </parameter_description>
 </parameter>
 </parameters>
-<return> a copy of the #JsonNode at the requested index.
-Use json_node_free() when done.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_text_get_attributes">
+<function name="clutter_text_buffer_get_bytes">
 <description>
-Gets the attribute list that was set on the #ClutterText actor
-clutter_text_set_attributes(), if any.
+Retrieves the length in bytes of the buffer.
+See clutter_text_buffer_get_length().
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
 </parameters>
-<return> the attribute list, or %NULL if none was set. The
-returned value is owned by the #ClutterText and should not be unreferenced.
+<return> The byte length of the buffer.
 
 </return>
 </function>
 
-<function name="json_object_get_members">
+<function name="clutter_text_buffer_get_length">
 <description>
-Retrieves all the names of the members of a #JsonObject. You can
-obtain the value for each member using json_object_get_member().
+Retrieves the length in characters of the buffer.
 
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #GList of member names. The content of the list
-is owned by the #JsonObject and should never be modified or
-freed. When you have finished using the returned list, use
-g_list_free() to free the resources it has allocated.
+<return> The number of characters in the buffer.
+
 </return>
 </function>
 
-<function name="clutter_model_insert">
+<function name="clutter_text_buffer_get_max_length">
 <description>
-Inserts a new row to the #ClutterModel at @row, setting the row
-values upon creation. For example, to insert a new row at index 100,
-where column 0 is type %G_TYPE_INT and column 1 is of type
-%G_TYPE_STRING:
-
-&lt;informalexample&gt;&lt;programlisting&gt;
-ClutterModel *model;
-model = clutter_model_default_new (2,
-G_TYPE_INT,    &quot;Score&quot;,
-G_TYPE_STRING, &quot;Team&quot;);
-clutter_model_insert (model, 3, 0, 42, 1, &quot;Team #1&quot;, -1);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
+Retrieves the maximum allowed length of the text in
+@buffer. See clutter_text_buffer_set_max_length().
 
-Since: 0.6
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> the position to insert the new row
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> pairs of column number and value, terminated with -1
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the maximum allowed number of characters
+in #ClutterTextBuffer, or 0 if there is no maximum.
+
+</return>
 </function>
 
-<function name="json_array_unref">
+<function name="clutter_text_buffer_get_text">
 <description>
-Decreases by one the reference count of a #JsonArray. If the
-reference count reaches zero, the array is destroyed and all
-its allocated resources are freed.
+Retrieves the contents of the buffer.
+
+The memory pointer returned by this call will not change
+unless this object emits a signal, or is finalized.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer to the contents of the widget as a
+string. This string points to internally allocated
+storage in the buffer and must not be freed, modified or
+stored.
+
+</return>
 </function>
 
-<function name="clutter_color_shade">
+<function name="clutter_text_buffer_insert_text">
 <description>
-Shades @color by @factor and saves the modified color into @result.
+Inserts @n_chars characters of @chars into the contents of the
+buffer, at position @position.
+
+If @n_chars is negative, then characters from chars will be inserted
+until a null-terminator is found. If @position or @n_chars are out of
+bounds, or the maximum buffer text length is exceeded, then they are
+coerced to sane values.
+
+Note that the position and length are in characters, not in bytes.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
-<parameter name="factor">
-<parameter_description> the shade factor to apply
+<parameter name="position">
+<parameter_description> the position at which to insert text.
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> return location for the shaded color
+<parameter name="chars">
+<parameter_description> the text to insert into the buffer.
+</parameter_description>
+</parameter>
+<parameter name="n_chars">
+<parameter_description> the length of the text in characters, or -1
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The number of characters actually inserted.
+
+</return>
 </function>
 
-<function name="clutter_color_hash">
+<function name="clutter_text_buffer_new">
 <description>
-Converts a #ClutterColor to a hash value.
-
-This function can be passed to g_hash_table_new() as the @hash_func
-parameter, when using #ClutterColor&lt;!-- --&gt;s as keys in a #GHashTable.
+Create a new ClutterTextBuffer object.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="v">
-<parameter_description> a #ClutterColor
-</parameter_description>
-</parameter>
 </parameters>
-<return> a hash value corresponding to the color
+<return> A new ClutterTextBuffer object.
 
 </return>
 </function>
 
-<function name="clutter_value_set_shader_int">
+<function name="clutter_text_buffer_new_with_text">
 <description>
-Sets @ints as the contents of @value. The passed #GValue
-must have been initialized using %CLUTTER_TYPE_SHADER_INT.
+Create a new ClutterTextBuffer object with some text.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue
-</parameter_description>
-</parameter>
-<parameter name="size">
-<parameter_description> number of integer values in @ints
+<parameter name="text">
+<parameter_description> initial buffer text
 </parameter_description>
 </parameter>
-<parameter name="ints">
-<parameter_description> an array of integer values
+<parameter name="text_len">
+<parameter_description> initial buffer text length, or -1 for null-terminated.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A new ClutterTextBuffer object.
+
+</return>
 </function>
 
-<function name="clutter_model_insert_value">
+<function name="clutter_text_buffer_set_max_length">
 <description>
-Sets the data in the cell specified by @iter and @column. The type of 
-@value must be convertable to the type of the column. If the row does
-not exist then it is created.
+Sets the maximum allowed length of the contents of the buffer. If
+the current contents are longer than the given length, then they
+will be truncated to fit.
 
-Since: 0.6
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="row">
-<parameter_description> position of the row to modify
-</parameter_description>
-</parameter>
-<parameter name="column">
-<parameter_description> column to modify
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> new value for the cell
+<parameter name="max_length">
+<parameter_description> the maximum length of the entry buffer, or 0 for no maximum.
+(other than the maximum length of entries.) The value passed in will
+be clamped to the range [ 0, %CLUTTER_TEXT_BUFFER_MAX_SIZE ].
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_alpha_get_timeline">
+<function name="clutter_text_buffer_set_text">
 <description>
-Gets the #ClutterTimeline bound to @alpha.
-
-Since: 0.2
+Sets the text in the buffer.
 
-</description>
-<parameters>
-<parameter name="alpha">
-<parameter_description> A #ClutterAlpha
-</parameter_description>
-</parameter>
-</parameters>
-<return> a #ClutterTimeline instance
+This is roughly equivalent to calling clutter_text_buffer_delete_text()
+and clutter_text_buffer_insert_text().
 
-</return>
-</function>
-
-<function name="json_object_set_int_member">
-<description>
-Convenience function for setting an integer @value of
-@member_name inside @object.
+Note that @n_chars is in characters, not in bytes.
 
-See also: json_object_set_member()
-
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="chars">
+<parameter_description> the new text
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the member
+<parameter name="n_chars">
+<parameter_description> the number of characters in @text, or -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_ellipse_get_center">
+<function name="clutter_text_coords_to_position">
 <description>
-Gets the center of the elliptical path path.
+Retrieves the position of the character at the given coordinates.
 
-Since: 0.4
+Return: the position of the character
+
+Since: 1.10
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 <parameter name="x">
-<parameter_description> return location for the X coordinate of the center, or %NULL
+<parameter_description> the X coordinate, relative to the actor
 </parameter_description>
 </parameter>
 <parameter name="y">
-<parameter_description> return location for the Y coordinate of the center, or %NULL
+<parameter_description> the Y coordinate, relative to the actor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animation_unbind_property">
+<function name="clutter_text_delete_chars">
 <description>
-Removes @property_name from the list of animated properties.
+Deletes @n_chars inside a #ClutterText actor, starting from the
+current cursor position.
+
+Somewhat awkwardly, the cursor position is decremented by the same
+number of characters you've deleted.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> name of the property
+<parameter name="n_chars">
+<parameter_description> the number of characters to delete
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_get_minimum_size">
+<function name="clutter_text_delete_selection">
 <description>
-Retrieves the minimum size for a stage window as set using
-clutter_stage_set_minimum_size().
+Deletes the currently selected text
 
-The returned size may not correspond to the actual minimum size and
-it is specific to the #ClutterStage implementation inside the
-Clutter backend
+This function is only useful in subclasses of #ClutterText
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> return location for the minimum width, in pixels,
-or %NULL
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> return location for the minimum height, in pixels,
-or %NULL
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if text was deleted or if the text actor
+is empty, and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_model_append">
+<function name="clutter_text_delete_text">
 <description>
-Creates and appends a new row to the #ClutterModel, setting the
-row values upon creation. For example, to append a new row where
-column 0 is type %G_TYPE_INT and column 1 is of type %G_TYPE_STRING:
+Deletes the text inside a #ClutterText actor between @start_pos
+and @end_pos.
 
-&lt;informalexample&gt;&lt;programlisting&gt;
-ClutterModel *model;
-model = clutter_model_default_new (2,
-G_TYPE_INT,    &quot;Score&quot;,
-G_TYPE_STRING, &quot;Team&quot;);
-clutter_model_append (model, 0, 42, 1, &quot;Team #1&quot;, -1);
-&lt;/programlisting&gt;&lt;/informalexample&gt;
+The starting and ending positions are expressed in characters,
+not in bytes.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> pairs of column number and value, terminated with -1
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_bin_layout_new">
-<description>
-Creates a new #ClutterBinLayout layout manager
-
-Since: 1.2
-
-</description>
-<parameters>
-<parameter name="x_align">
-<parameter_description> the default alignment policy to be used on the
-horizontal axis
+<parameter name="start_pos">
+<parameter_description> starting position
 </parameter_description>
 </parameter>
-<parameter name="y_align">
-<parameter_description> the default alignment policy to be used on the
-vertical axis
+<parameter name="end_pos">
+<parameter_description> ending position
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created layout manager
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_grab_pointer_for_device">
+<function name="clutter_text_get_activatable">
 <description>
-Grabs all the pointer events coming from the device @id for @actor.
-
-If @id is -1 then this function is equivalent to clutter_grab_pointer().
+Retrieves whether a #ClutterText is activatable or not.
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="id">
-<parameter_description> a device id, or -1
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the actor is activatable
+
+</return>
 </function>
 
-<function name="clutter_text_set_color">
+<function name="clutter_text_get_attributes">
 <description>
-Sets the color of the contents of a #ClutterText actor.
-
-The overall opacity of the #ClutterText actor will be the
-result of the alpha value of @color and the composited
-opacity of the actor itself on the scenegraph, as returned
-by clutter_actor_get_paint_opacity().
+Gets the attribute list that was set on the #ClutterText actor
+clutter_text_set_attributes(), if any.
 
 Since: 1.0
 
@@ -16232,37 +35194,38 @@ Since: 1.0
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> a #ClutterColor
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the attribute list, or %NULL if none was set. The
+returned value is owned by the #ClutterText and should not be unreferenced.
+
+</return>
 </function>
 
-<function name="clutter_flow_layout_get_orientation">
+<function name="clutter_text_get_buffer">
 <description>
-Retrieves the orientation of the @layout
+Get the #ClutterTextBuffer object which holds the text for
+this widget.
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the orientation of the #ClutterFlowLayout
+<return> A #GtkEntryBuffer object.
 
 </return>
 </function>
 
-<function name="clutter_text_set_cursor_size">
+<function name="clutter_text_get_chars">
 <description>
-Sets the size of the cursor of a #ClutterText. The cursor
-will only be visible if the #ClutterText:cursor-visible property
-is set to %TRUE.
+Retrieves the contents of the #ClutterText actor between
+@start_pos and @end_pos, but not including @end_pos.
+
+The positions are specified in characters, not in bytes.
 
 Since: 1.0
 
@@ -16272,341 +35235,341 @@ Since: 1.0
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> the size of the cursor, in pixels, or -1 to use the
-default value
+<parameter name="start_pos">
+<parameter_description> start of text, in characters
+</parameter_description>
+</parameter>
+<parameter name="end_pos">
+<parameter_description> end of text, in characters
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a newly allocated string with the contents of
+the text actor between the specified positions. Use g_free()
+to free the resources when done
+
+</return>
 </function>
 
-<function name="clutter_actor_get_size">
+<function name="clutter_text_get_color">
 <description>
-This function tries to &quot;do what you mean&quot; and return
-the size an actor will have. If the actor has a valid
-allocation, the allocation will be returned; otherwise,
-the actors natural size request will be returned.
-
-If you care whether you get the request vs. the allocation, you
-should probably call a different function like
-clutter_actor_get_allocation_box() or
-clutter_actor_get_preferred_width().
+Retrieves the text color as set by clutter_text_set_color().
 
-Since: 0.2
+Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> return location for the width, or %NULL.
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> return location for the height, or %NULL.
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_param_spec_color">
+<function name="clutter_text_get_cursor_color">
 <description>
-Creates a #GParamSpec for properties using #ClutterColor.
+Retrieves the color of the cursor of a #ClutterText actor.
 
-Since: 0.8.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> name of the property
-</parameter_description>
-</parameter>
-<parameter name="nick">
-<parameter_description> short name
-</parameter_description>
-</parameter>
-<parameter name="blurb">
-<parameter_description> description (can be translatable)
-</parameter_description>
-</parameter>
-<parameter name="default_value">
-<parameter_description> default value
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags for the param spec
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #GParamSpec
-
-</return>
+<return></return>
 </function>
 
-<function name="json_object_get_size">
+<function name="clutter_text_get_cursor_position">
 <description>
-Retrieves the number of members of a #JsonObject.
+Retrieves the cursor position.
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the number of members
+<return> the cursor position, in characters
+
 </return>
 </function>
 
-<function name="clutter_stage_set_title">
+<function name="clutter_text_get_cursor_rect">
 <description>
-Sets the stage title.
+Retrieves the rectangle that contains the cursor.
 
-Since: 0.4
+The coordinates of the rectangle's origin are in actor-relative
+coordinates.
+
+Since: 1.16
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="title">
-<parameter_description> A utf8 string for the stage windows title.
+<parameter name="rect">
+<parameter_description> return location of a #ClutterRect
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_media_get_subtitle_uri">
+<function name="clutter_text_get_cursor_size">
 <description>
-Retrieves the URI of the subtitle file in use.
+Retrieves the size of the cursor of a #ClutterText actor.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the URI of the subtitle file. Use g_free()
-to free the returned string
+<return> the size of the cursor, in pixels
 
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_set_height">
+<function name="clutter_text_get_cursor_visible">
 <description>
-Sets the height of the elliptical path.
+Retrieves whether the cursor of a #ClutterText actor is visible.
 
-Since: 0.4
+Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> height of the ellipse
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the cursor is visible
+
+</return>
 </function>
 
-<function name="clutter_rectangle_set_border_color">
+<function name="clutter_text_get_editable">
 <description>
-Sets the color of the border used by @rectangle using @color
+Retrieves whether a #ClutterText is editable or not.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> the color of the border
+</parameters>
+<return> %TRUE if the actor is editable
+
+</return>
+</function>
+
+<function name="clutter_text_get_ellipsize">
+<description>
+Returns the ellipsizing position of a #ClutterText actor, as
+set by clutter_text_set_ellipsize().
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> #PangoEllipsizeMode
+
+</return>
 </function>
 
-<function name="clutter_shader_new">
+<function name="clutter_text_get_font_description">
 <description>
-Create a new #ClutterShader instance.
+Retrieves the #PangoFontDescription used by @self
 
-Since: 0.6
+Since: 1.2
 
 </description>
 <parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #ClutterShader.
+<return> a #PangoFontDescription. The returned value is owned
+by the #ClutterText actor and it should not be modified or freed
 
 </return>
 </function>
 
-<function name="clutter_feature_get_all">
+<function name="clutter_text_get_font_name">
 <description>
-Returns all the supported features.
+Retrieves the font name as set by clutter_text_set_font_name().
 
-Since: 0.1.1
+Since: 1.0
 
 </description>
 <parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
 </parameters>
-<return> a logical OR of all the supported features.
+<return> a string containing the font name. The returned
+string is owned by the #ClutterText actor and should not be
+modified or freed
 
 </return>
 </function>
 
-<function name="clutter_actor_create_pango_context">
+<function name="clutter_text_get_justify">
 <description>
-Creates a #PangoContext for the given actor. The #PangoContext
-is already configured using the appropriate font map, resolution
-and font options.
-
-See also clutter_actor_get_pango_context().
+Retrieves whether the #ClutterText actor should justify its contents
+on both margins.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #PangoContext. Use g_object_unref()
-on the returned value to deallocate its resources
+<return> %TRUE if the text should be justified
 
 </return>
 </function>
 
-<function name="clutter_media_get_uri">
+<function name="clutter_text_get_layout">
 <description>
-Retrieves the URI from @media.
+Retrieves the current #PangoLayout used by a #ClutterText actor.
 
-Since: 0.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the URI of the media stream. Use g_free()
-to free the returned string
+<return> a #PangoLayout. The returned object is owned by
+the #ClutterText actor and should not be modified or freed
 
 </return>
 </function>
 
-<function name="clutter_actor_queue_redraw">
+<function name="clutter_text_get_layout_offsets">
 <description>
-Queues up a redraw of an actor and any children. The redraw occurs
-once the main loop becomes idle (after the current batch of events
-has been processed, roughly).
+Obtains the coordinates where the #ClutterText will draw the #PangoLayout
+representing the text.
 
-Applications rarely need to call this, as redraws are handled
-automatically by modification functions.
-
-This function will not do anything if @self is not visible, or
-if the actor is inside an invisible part of the scenegraph.
-
-Also be aware that painting is a NOP for actors with an opacity of
-0
+Since: 1.8
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> location to store X offset of layout, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> location to store Y offset of layout, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_add_timeout">
+<function name="clutter_text_get_line_alignment">
 <description>
-Simple wrapper around clutter_threads_add_timeout_full().
+Retrieves the alignment of a #ClutterText, as set by
+clutter_text_set_line_alignment().
 
-Since: 0.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> the time between calls to the function, in milliseconds
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
+<return> a #PangoAlignment
 
 </return>
 </function>
 
-<function name="clutter_behaviour_path_set_path">
+<function name="clutter_text_get_line_wrap">
 <description>
-Change the path that the actors will follow. This will take the
-floating reference on the #ClutterPath so you do not need to unref
-it.
+Retrieves the value set using clutter_text_set_line_wrap().
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="pathb">
-<parameter_description> the path behaviour
-</parameter_description>
-</parameter>
-<parameter name="path">
-<parameter_description> the new path to follow
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the #ClutterText actor should wrap
+its contents
+
+</return>
 </function>
 
-<function name="clutter_actor_get_flags">
+<function name="clutter_text_get_line_wrap_mode">
 <description>
-Retrieves the flags set on @self
+Retrieves the line wrap mode used by the #ClutterText actor.
+
+See clutter_text_set_line_wrap_mode ().
 
 Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> a bitwise or of #ClutterActorFlags or 0
+<return> the wrap mode used by the #ClutterText
 
 </return>
 </function>
 
-<function name="clutter_text_set_selection_bound">
+<function name="clutter_text_get_max_length">
 <description>
-Sets the other end of the selection, starting from the current
-cursor position.
+Gets the maximum length of text that can be set into a text actor.
 
-If @selection_bound is -1, the selection unset.
+See clutter_text_set_max_length().
 
 Since: 1.0
 
@@ -16616,73 +35579,35 @@ Since: 1.0
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="selection_bound">
-<parameter_description> the position of the end of the selection, in characters
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the maximum number of characters.
+
+</return>
 </function>
 
-<function name="clutter_texture_set_from_rgb_data">
+<function name="clutter_text_get_password_char">
 <description>
-Sets #ClutterTexture image data.
+Retrieves the character to use in place of the actual text
+as set by clutter_text_set_password_char().
 
-Since: 0.4.
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> Image data in RGBA type colorspace.
-</parameter_description>
-</parameter>
-<parameter name="has_alpha">
-<parameter_description> Set to TRUE if image data has an alpha channel.
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> Width in pixels of image data.
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> Height in pixels of image data
-</parameter_description>
-</parameter>
-<parameter name="rowstride">
-<parameter_description> Distance in bytes between row starts.
-</parameter_description>
-</parameter>
-<parameter name="bpp">
-<parameter_description> bytes per pixel (Currently only 3 and 4 supported,
-depending on @has_alpha)
-</parameter_description>
-</parameter>
-<parameter name="flags">
-<parameter_description> #ClutterTextureFlags
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL.
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE on success, %FALSE on failure.
+<return> a Unicode character or 0 if the password
+character is not set
 
 </return>
 </function>
 
-<function name="clutter_text_set_line_alignment">
+<function name="clutter_text_get_selectable">
 <description>
-Sets the way that the lines of a wrapped label are aligned with
-respect to each other. This does not affect the overall alignment
-of the label within its allocated or specified width.
-
-To align a #ClutterText actor you should add it to a container
-that supports alignment, or use the anchor point.
+Retrieves whether a #ClutterText is selectable or not.
 
 Since: 1.0
 
@@ -16692,680 +35617,663 @@ Since: 1.0
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="alignment">
-<parameter_description> A #PangoAlignment
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the actor is selectable
+
+</return>
 </function>
 
-<function name="clutter_stage_set_use_fog">
+<function name="clutter_text_get_selected_text_color">
 <description>
-Sets whether the depth cueing effect on the stage should be enabled
-or not.
-
-Depth cueing is a 3D effect that makes actors farther away from the
-viewing point less opaque, by fading them with the stage color.
+Retrieves the color of selected text of a #ClutterText actor.
 
-The parameters of the GL fog used can be changed using the
-clutter_stage_set_fog() function.
-
-Since: 0.6
+Since: 1.8
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> the #ClutterStage
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="fog">
-<parameter_description> %TRUE for enabling the depth cueing effect
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animator_property_get_interpolation">
+<function name="clutter_text_get_selection">
 <description>
-Get the interpolation used by animator for a property on a particular
-object.
+Retrieves the currently selected text.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimatorKey
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of a property on object
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> a ClutterInterpolation value.
+<return> a newly allocated string containing the currently
+selected text, or %NULL. Use g_free() to free the returned
+string.
+
 </return>
 </function>
 
-<function name="clutter_shader_set_fragment_source">
+<function name="clutter_text_get_selection_bound">
 <description>
-Sets the GLSL source code to be used by a #ClutterShader for the fragment
-program.
+Retrieves the other end of the selection of a #ClutterText actor,
+in characters from the current cursor position.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> GLSL source code.
+</parameters>
+<return> the position of the other end of the selection
+
+</return>
+</function>
+
+<function name="clutter_text_get_selection_color">
+<description>
+Retrieves the color of the selection of a #ClutterText actor.
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="length">
-<parameter_description> length of source buffer (currently ignored)
+<parameter name="color">
+<parameter_description> return location for a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_layout_get_easing_mode">
+<function name="clutter_text_get_single_line_mode">
 <description>
-Retrieves the easing mode set using clutter_box_layout_set_easing_mode()
+Retrieves whether the #ClutterText actor is in single line mode.
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> an easing mode
+<return> %TRUE if the #ClutterText actor is in single line mode
 
 </return>
 </function>
 
-<function name="clutter_actor_unmap">
+<function name="clutter_text_get_text">
 <description>
-Unsets the %CLUTTER_ACTOR_MAPPED flag on the actor and possibly
-unmaps its children if they were mapped.
+Retrieves a pointer to the current contents of a #ClutterText
+actor.
+
+If you need a copy of the contents for manipulating, either
+use g_strdup() on the returned string, or use:
+
+|[
+copy = clutter_text_get_chars (text, 0, -1);
+]|
 
-Calling this is allowed in only one case: you are implementing the
-#ClutterActor::unmap virtual function in an actor and you need to
-unmap the children of that actor. It is not necessary to call this
-if you implement #ClutterContainer because the default implementation
-will automatically unmap children of containers.
+Which will return a newly allocated string.
 
-When overriding unmap, it is mandatory to chain up to the parent
-implementation.
+If the #ClutterText actor is empty, this function will return
+an empty string, and not %NULL.
 
 Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the contents of the actor. The returned
+string is owned by the #ClutterText actor and should never be modified
+or freed
+
+</return>
 </function>
 
-<function name="clutter_event_new">
+<function name="clutter_text_get_use_markup">
 <description>
-Creates a new #ClutterEvent of the specified type.
+Retrieves whether the contents of the #ClutterText actor should be
+parsed for the Pango text markup.
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="type">
-<parameter_description> The type of event.
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
 </parameters>
-<return> A newly allocated #ClutterEvent.
+<return> %TRUE if the contents will be parsed for markup
+
 </return>
 </function>
 
-<function name="json_object_set_array_member">
+<function name="clutter_text_insert_text">
 <description>
-Convenience function for setting an array @value of
-@member_name inside @object.
+Inserts @text into a #ClutterActor at the given position.
 
-The @object will take ownership of the passed #JsonArray
+If @position is a negative number, the text will be appended
+at the end of the current contents of the #ClutterText.
 
-See also: json_object_set_member()
+The position is expressed in characters, not in bytes.
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="text">
+<parameter_description> the text to be inserted
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the member
+<parameter name="position">
+<parameter_description> the position of the insertion, or -1
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_add_string">
+<function name="clutter_text_insert_unichar">
 <description>
-Adds new nodes to the end of the path as described in @str. The
-format is a subset of the SVG path format. Each node is represented
-by a letter and is followed by zero, one or three pairs of
-coordinates. The coordinates can be separated by spaces or a
-comma. The types are:
-
-&lt;variablelist&gt;
-&lt;varlistentry&gt;&lt;term&gt;M&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-Adds a %CLUTTER_PATH_MOVE_TO node. Takes one pair of coordinates.
-&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
-&lt;varlistentry&gt;&lt;term&gt;L&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-Adds a %CLUTTER_PATH_LINE_TO node. Takes one pair of coordinates.
-&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
-&lt;varlistentry&gt;&lt;term&gt;C&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-Adds a %CLUTTER_PATH_CURVE_TO node. Takes three pairs of coordinates.
-&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
-&lt;varlistentry&gt;&lt;term&gt;z&lt;/term&gt;
-&lt;listitem&gt;&lt;para&gt;
-Adds a %CLUTTER_PATH_CLOSE node. No coordinates are needed.
-&lt;/para&gt;&lt;/listitem&gt;&lt;/varlistentry&gt;
-&lt;/variablelist&gt;
-
-The M, L and C commands can also be specified in lower case which
-means the coordinates are relative to the previous node.
-
-For example, to move an actor in a 100 by 100 pixel square centered
-on the point 300,300 you could use the following path:
-
-&lt;informalexample&gt;
-&lt;programlisting&gt;
-M 250,350 l 0 -100 L 350,250 l 0 100 z
-&lt;/programlisting&gt;
-&lt;/informalexample&gt;
-
-If the path description isn't valid %FALSE will be returned and no
-nodes will be added.
+Inserts @wc at the current cursor position of a
+#ClutterText actor.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description> a string describing the new nodes
+<parameter name="wc">
+<parameter_description> a Unicode character
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE is the path description was valid or %FALSE
-otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_script_load_from_data">
+<function name="clutter_text_new">
 <description>
-Loads the definitions from @data into @script and merges with
-the currently loaded ones, if any.
+Creates a new #ClutterText actor. This actor can be used to
+display and edit text.
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> a buffer containing the definitions
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> the length of the buffer, or -1 if @data is a NUL-terminated
-buffer
-</parameter_description>
-</parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> on error, zero is returned and @error is set
-accordingly. On success, the merge id for the UI definitions is
-returned. You can use the merge id with clutter_script_unmerge().
+<return> the newly created #ClutterText actor
 
 </return>
 </function>
 
-<function name="json_object_get_int_member">
+<function name="clutter_text_new_full">
 <description>
-Convenience function that retrieves the integer value
-stored in @member_name of @object
+Creates a new #ClutterText actor, using @font_name as the font
+description; @text will be used to set the contents of the actor;
+and @color will be used as the color to render @text.
 
-See also: json_object_get_member()
+This function is equivalent to calling clutter_text_new(),
+clutter_text_set_font_name(), clutter_text_set_text() and
+clutter_text_set_color().
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="font_name">
+<parameter_description> a string with a font description
+</parameter_description>
+</parameter>
+<parameter name="text">
+<parameter_description> the contents of the actor
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="color">
+<parameter_description> the color to be used to render @text
 </parameter_description>
 </parameter>
 </parameters>
-<return> the integer value of the object's member
+<return> the newly created #ClutterText actor
 
 </return>
 </function>
 
-<function name="clutter_x11_texture_pixmap_new_with_pixmap">
+<function name="clutter_text_new_with_buffer">
 <description>
-Creates a new #ClutterX11TexturePixmap for @pixmap
+Creates a new entry with the specified text buffer.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="pixmap">
-<parameter_description> the X Pixmap to which this texture should be bound
+<parameter name="buffer">
+<parameter_description> The buffer to use for the new #ClutterText.
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterX11TexturePixmap bound to the given X Pixmap
+<return> a new #ClutterText
 
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_get_angle_tilt">
+<function name="clutter_text_new_with_text">
 <description>
-Gets the tilt of the ellipse around the center in the given axis.
+Creates a new #ClutterText actor, using @font_name as the font
+description; @text will be used to set the contents of the actor.
 
-Since: 0.4
+This function is equivalent to calling clutter_text_new(),
+clutter_text_set_font_name(), and clutter_text_set_text().
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="font_name">
+<parameter_description> a string with a font description
 </parameter_description>
 </parameter>
-<parameter name="axis">
-<parameter_description> a #ClutterRotateAxis
+<parameter name="text">
+<parameter_description> the contents of the actor
 </parameter_description>
 </parameter>
 </parameters>
-<return> angle in degrees.
+<return> the newly created #ClutterText actor
 
 </return>
 </function>
 
-<function name="clutter_stage_manager_set_default_stage">
+<function name="clutter_text_node_new">
 <description>
-Sets @stage as the default stage.
+Creates a new #ClutterPaintNode that will paint a #PangoLayout
+with the given color.
 
-Since: 0.8
+This function takes a reference on the passed @layout, so it
+is safe to call g_object_unref() after it returns.
 
-Deprecated: 1.2: Calling this function has no effect
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="stage_manager">
-<parameter_description> a #ClutterStageManager
+<parameter name="layout">
+<parameter_description> a #PangoLayout, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="color">
+<parameter_description> the color used to paint the layout,
+or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterPaintNode.
+Use clutter_paint_node_unref() when done
+
+</return>
 </function>
 
-<function name="clutter_interval_set_final_value">
+<function name="clutter_text_position_to_coords">
 <description>
-Sets the final value of @interval to @value. The value is
-copied inside the #ClutterInterval.
+Retrieves the coordinates of the given @position.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a #GValue
+<parameter name="position">
+<parameter_description> position in characters
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_timeline_set_delay">
-<description>
-Sets the delay, in milliseconds, before @timeline should start.
-
-Since: 0.4
-
-</description>
-<parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="x">
+<parameter_description> return location for the X coordinate, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="msecs">
-<parameter_description> delay in milliseconds
+<parameter name="y">
+<parameter_description> return location for the Y coordinate, or %NULL
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_timeline_pause">
-<description>
-Pauses the #ClutterTimeline on current frame
-
-</description>
-<parameters>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
+<parameter name="line_height">
+<parameter_description> return location for the line height, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the conversion was successful
+
+</return>
 </function>
 
-<function name="clutter_actor_set_position">
+<function name="clutter_text_set_activatable">
 <description>
-Sets the actor's fixed position in pixels relative to any parent
-actor.
+Sets whether a #ClutterText actor should be activatable.
 
-If a layout manager is in use, this position will override the
-layout manager and force a fixed position.
+An activatable #ClutterText actor will emit the #ClutterText::activate
+signal whenever the 'Enter' (or 'Return') key is pressed; if it is not
+activatable, a new line will be appended to the current content.
 
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> New left position of actor in pixels.
+An activatable #ClutterText must also be set as editable using
+clutter_text_set_editable().
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> New top position of actor in pixels.
+<parameter name="activatable">
+<parameter_description> whether the #ClutterText actor should be activatable
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_set_height">
+<function name="clutter_text_set_attributes">
 <description>
-Forces a height on an actor, causing the actor's preferred width
-and height (if any) to be ignored.
-
-If @height is -1 the actor will use its preferred height instead of
-overriding it, i.e. you can &quot;unset&quot; the height with -1.
+Sets the attributes list that are going to be applied to the
+#ClutterText contents.
 
-This function sets both the minimum and natural size of the actor.
+The #ClutterText actor will take a reference on the #PangoAttrList
+passed to this function.
 
-since: 0.2
+Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> Requested new height for the actor, in pixels, or -1
+<parameter name="attrs">
+<parameter_description> a #PangoAttrList or %NULL to unset the attributes
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_texture_get_cogl_material">
+<function name="clutter_text_set_buffer">
 <description>
-Returns a handle to the underlying COGL material used for drawing
-the actor. No extra reference is taken so if you need to keep the
-handle then you should call cogl_handle_ref() on it.
-
-Since: 1.0
+Set the #ClutterTextBuffer object which holds the text for
+this widget.
 
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> A #ClutterTexture
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="buffer">
+<parameter_description> a #ClutterTextBuffer
 </parameter_description>
 </parameter>
 </parameters>
-<return> COGL material handle
-</return>
+<return></return>
 </function>
 
-<function name="json_parser_get_current_line">
+<function name="clutter_text_set_color">
 <description>
-Retrieves the line currently parsed, starting from 1.
+Sets the color of the contents of a #ClutterText actor.
+
+The overall opacity of the #ClutterText actor will be the
+result of the alpha value of @color and the composited
+opacity of the actor itself on the scenegraph, as returned
+by clutter_actor_get_paint_opacity().
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="parser">
-<parameter_description> a #JsonParser
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="color">
+<parameter_description> a #ClutterColor
 </parameter_description>
 </parameter>
 </parameters>
-<return> the currently parsed line.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_behaviour_is_applied">
+<function name="clutter_text_set_cursor_color">
 <description>
-Check if @behave applied to  @actor.
+Sets the color of the cursor of a #ClutterText actor.
 
-Since: 0.4
+If @color is %NULL, the cursor color will be the same as the
+text color.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="color">
+<parameter_description> the color of the cursor, or %NULL to unset it
 </parameter_description>
 </parameter>
 </parameters>
-<return> TRUE if actor has behaviour. FALSE otherwise.
-
-</return>
+<return></return>
 </function>
 
-<function name="json_generator_to_file">
+<function name="clutter_text_set_cursor_position">
 <description>
-Creates a JSON data stream and puts it inside @filename, overwriting the
-current file contents. This operation is atomic.
+Sets the cursor of a #ClutterText actor at @position.
+
+The position is expressed in characters, not in bytes.
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="generator">
-<parameter_description> a #JsonGenerator
-</parameter_description>
-</parameter>
-<parameter name="filename">
-<parameter_description> path to the target file
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="error">
-<parameter_description> return location for a #GError, or %NULL
+<parameter name="position">
+<parameter_description> the new cursor position, in characters
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if saving was successful.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_container_child_set_property">
+<function name="clutter_text_set_cursor_size">
 <description>
-Sets a container-specific property on a child of @container.
+Sets the size of the cursor of a #ClutterText. The cursor
+will only be visible if the #ClutterText:cursor-visible property
+is set to %TRUE.
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="child">
-<parameter_description> a #ClutterActor that is a child of @container.
-</parameter_description>
-</parameter>
-<parameter name="property">
-<parameter_description> the name of the property to set.
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value.
+<parameter name="size">
+<parameter_description> the size of the cursor, in pixels, or -1 to use the
+default value
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_unmerge_objects">
+<function name="clutter_text_set_cursor_visible">
 <description>
-Unmerges the objects identified by @merge_id.
+Sets whether the cursor of a #ClutterText actor should be
+visible or not.
 
-Since: 0.6
+The color of the cursor will be the same as the text color
+unless clutter_text_set_cursor_color() has been called.
+
+The size of the cursor can be set using clutter_text_set_cursor_size().
+
+The position of the cursor can be changed programmatically using
+clutter_text_set_cursor_position().
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="merge_id">
-<parameter_description> merge id returned when loading a UI definition
+<parameter name="cursor_visible">
+<parameter_description> whether the cursor should be visible
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_iter_is_first">
+<function name="clutter_text_set_editable">
 <description>
-Gets whether the current iterator is at the beginning of the model
-to which it belongs.
+Sets whether the #ClutterText actor should be editable.
 
-Since: 0.6
+An editable #ClutterText with key focus set using
+clutter_actor_grab_key_focus() or clutter_stage_set_key_focus()
+will receive key events and will update its contents accordingly.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="editable">
+<parameter_description> whether the #ClutterText should be editable
 </parameter_description>
 </parameter>
 </parameters>
-<return> #TRUE if @iter is the first iter in the filtered model
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_set_duration">
+<function name="clutter_text_set_ellipsize">
 <description>
-Runs the timeline of the #ClutterAnimator with a duration in msecs
-as specified.
+Sets the mode used to ellipsize (add an ellipsis: &quot;...&quot;) to the
+text if there is not enough space to render the entire contents
+of a #ClutterText actor
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="duration">
-<parameter_description> milliseconds a run of the animator should last.
+<parameter name="mode">
+<parameter_description> a #PangoEllipsizeMode
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_input_device_get_device_name">
+<function name="clutter_text_set_font_description">
 <description>
-Retrieves the name of the @device
+Sets @font_desc as the font description for a #ClutterText
+
+The #PangoFontDescription is copied by the #ClutterText actor
+so you can safely call pango_font_description_free() on it after
+calling this function.
 
 Since: 1.2
 
 </description>
 <parameters>
-<parameter name="device">
-<parameter_description> a #ClutterInputDevice
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="font_desc">
+<parameter_description> a #PangoFontDescription
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the device, or %NULL. The returned string
-is owned by the #ClutterInputDevice and should never be modified
-or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_free">
+<function name="clutter_text_set_font_name">
 <description>
-Frees all resources used by @event.
+Sets the font used by a #ClutterText. The @font_name string
+must either be %NULL, which means that the font name from the
+default #ClutterBackend will be used; or be something that can
+be parsed by the pango_font_description_from_string() function,
+like:
+
+|[
+clutter_text_set_font_name (text, &quot;Sans 10pt&quot;);
+clutter_text_set_font_name (text, &quot;Serif 16px&quot;);
+clutter_text_set_font_name (text, &quot;Helvetica 10&quot;);
+]|
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> A #ClutterEvent.
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="font_name">
+<parameter_description> a font name, or %NULL to set the default font name
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_set_cursor_position">
+<function name="clutter_text_set_justify">
 <description>
-Sets the cursor of a #ClutterText actor at @position.
-
-The position is expressed in characters, not in bytes.
+Sets whether the text of the #ClutterText actor should be justified
+on both margins. This setting is ignored if Clutter is compiled
+against Pango &lt; 1.18.
 
 Since: 1.0
 
@@ -17375,331 +36283,367 @@ Since: 1.0
 <parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="position">
-<parameter_description> the new cursor position, in characters
+<parameter name="justify">
+<parameter_description> whether the text should be justified
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_parser_get_root">
+<function name="clutter_text_set_line_alignment">
 <description>
-Retrieves the top level node from the parsed JSON stream.
+Sets the way that the lines of a wrapped label are aligned with
+respect to each other. This does not affect the overall alignment
+of the label within its allocated or specified width.
 
+To align a #ClutterText actor you should add it to a container
+that supports alignment, or use the anchor point.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="parser">
-<parameter_description> a #JsonParser
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="alignment">
+<parameter_description> A #PangoAlignment
 </parameter_description>
 </parameter>
 </parameters>
-<return> the root #JsonNode . The returned node
-is owned by the #JsonParser and should never be modified or freed.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_get_related">
+<function name="clutter_text_set_line_wrap">
 <description>
-Retrieves the related actor of a crossing event.
+Sets whether the contents of a #ClutterText actor should wrap,
+if they don't fit the size assigned to the actor.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent of type %CLUTTER_ENTER or of
-type %CLUTTER_LEAVE
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="line_wrap">
+<parameter_description> whether the contents should wrap
 </parameter_description>
 </parameter>
 </parameters>
-<return> the related #ClutterActor, or %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_box_copy">
+<function name="clutter_text_set_line_wrap_mode">
 <description>
-Copies @box
+If line wrapping is enabled (see clutter_text_set_line_wrap()) this
+function controls how the line wrapping is performed. The default is
+%PANGO_WRAP_WORD which means wrap on word boundaries.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterActorBox
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="wrap_mode">
+<parameter_description> the line wrapping mode
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated copy of #ClutterActorBox. Use
-clutter_actor_box_free() to free the allocated resources
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_script_connect_signals">
+<function name="clutter_text_set_markup">
 <description>
-Connects all the signals defined into a UI definition file to their
-handlers.
+Sets @markup as the contents of a #ClutterText.
 
-This method invokes clutter_script_connect_signals_full() internally
-and uses  #GModule's introspective features (by opening the current
-module's scope) to look at the application's symbol table.
+This is a convenience function for setting a string containing
+Pango markup, and it is logically equivalent to:
 
-Note that this function will not work if #GModule is not supported by
-the platform Clutter is running on.
+|[
+/ * the order is important * /
+clutter_text_set_text (CLUTTER_TEXT (actor), markup);
+clutter_text_set_use_markup (CLUTTER_TEXT (actor), TRUE);
+]|
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to be passed to the signal handlers, or %NULL
+<parameter name="markup">
+<parameter_description> a string containing Pango markup.
+Passing %NULL is the same as passing &quot;&quot; (the empty string)
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_show">
+<function name="clutter_text_set_max_length">
 <description>
-Flags an actor to be displayed. An actor that isn't shown will not
-be rendered on the stage.
-
-Actors are visible by default.
+Sets the maximum allowed length of the contents of the actor. If the
+current contents are longer than the given length, then they will be
+truncated to fit.
 
-If this function is called on an actor without a parent, the
-#ClutterActor:show-on-set-parent will be set to %TRUE as a side
-effect.
+Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="max">
+<parameter_description> the maximum number of characters allowed in the text actor; 0
+to disable or -1 to set the length of the current string
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_get_fog">
+<function name="clutter_text_set_password_char">
 <description>
-Retrieves the current depth cueing settings from the stage.
+Sets the character to use in place of the actual text in a
+password text actor.
 
-Since: 0.6
+If @wc is 0 the text will be displayed as it is entered in the
+#ClutterText actor.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> the #ClutterStage
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="fog">
-<parameter_description> return location for a #ClutterFog structure
+<parameter name="wc">
+<parameter_description> a Unicode character, or 0 to unset the password character
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_flow_layout_new">
+<function name="clutter_text_set_preedit_string">
 <description>
-Creates a new #ClutterFlowLayout with the given @orientation
+Sets, or unsets, the pre-edit string. This function is useful
+for input methods to display a string (with eventual specific
+Pango attributes) before it is entered inside the #ClutterText
+buffer.
+
+The preedit string and attributes are ignored if the #ClutterText
+actor is not editable.
+
+This function should not be used by applications
 
 Since: 1.2
 
 </description>
 <parameters>
-<parameter name="orientation">
-<parameter_description> the orientation of the flow layout
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-</parameters>
-<return> the newly created #ClutterFlowLayout
-
-</return>
-</function>
-
-<function name="clutter_interval_compute_value">
-<description>
-Computes the value between the @interval boundaries given the
-progress @factor and puts it into @value.
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
+<parameter name="preedit_str">
+<parameter_description> the pre-edit string, or %NULL to unset it
 </parameter_description>
 </parameter>
-<parameter name="factor">
-<parameter_description> the progress factor, between 0 and 1
+<parameter name="preedit_attrs">
+<parameter_description> the pre-edit string attributes
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> return location for an initialized #GValue
+<parameter name="cursor_pos">
+<parameter_description> the cursor position for the pre-edit string
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the operation was successful
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_rotation">
+<function name="clutter_text_set_selectable">
 <description>
-Retrieves the angle and center of rotation on the given axis,
-set using clutter_actor_set_rotation().
+Sets whether a #ClutterText actor should be selectable.
 
-Since: 0.8
+A selectable #ClutterText will allow selecting its contents using
+the pointer or the keyboard.
+
+Since: 1.0
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="axis">
-<parameter_description> the axis of rotation
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> return value for the X coordinate of the center of rotation
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> return value for the Y coordinate of the center of rotation
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="z">
-<parameter_description> return value for the Z coordinate of the center of rotation
+<parameter name="selectable">
+<parameter_description> whether the #ClutterText actor should be selectable
 </parameter_description>
 </parameter>
 </parameters>
-<return> the angle of rotation
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_timeline_set_loop">
+<function name="clutter_text_set_selected_text_color">
 <description>
-Sets whether @timeline should loop.
+Sets the selected text color of a #ClutterText actor.
+
+If @color is %NULL, the selected text color will be the same as the
+selection color, which then falls back to cursor, and then text color.
+
+Since: 1.8
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="loop">
-<parameter_description> %TRUE for enable looping
+<parameter name="color">
+<parameter_description> the selected text color, or %NULL to unset it
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_box_equal">
+<function name="clutter_text_set_selection">
 <description>
-Checks @box_a and @box_b for equality
+Selects the region of text between @start_pos and @end_pos.
+
+This function changes the position of the cursor to match
+@start_pos and the selection bound to match @end_pos.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box_a">
-<parameter_description> a #ClutterActorBox
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="box_b">
-<parameter_description> a #ClutterActorBox
+<parameter name="start_pos">
+<parameter_description> start of the selection, in characters
+</parameter_description>
+</parameter>
+<parameter name="end_pos">
+<parameter_description> end of the selection, in characters
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the passed #ClutterActorBox are equal
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_x11_has_xinput">
+<function name="clutter_text_set_selection_bound">
 <description>
-Gets whether Clutter has XInput support.
+Sets the other end of the selection, starting from the current
+cursor position.
 
-Since: 0.8
+If @selection_bound is -1, the selection unset.
+
+Since: 1.0
 
 </description>
 <parameters>
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="selection_bound">
+<parameter_description> the position of the end of the selection, in characters
+</parameter_description>
+</parameter>
 </parameters>
-<return> %TRUE if Clutter was compiled with XInput support
-and XInput support is available at run time.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_model_iter_set_value">
+<function name="clutter_text_set_selection_color">
 <description>
-Sets the data in the cell specified by @iter and @column. The type of
-@value must be convertable to the type of the column.
+Sets the color of the selection of a #ClutterText actor.
 
-Since: 0.6
+If @color is %NULL, the selection color will be the same as the
+cursor color, or if no cursor color is set either then it will be
+the same as the text color.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
-</parameter_description>
-</parameter>
-<parameter name="column">
-<parameter_description> column number to retrieve the value from
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> new value for the cell
+<parameter name="color">
+<parameter_description> the color of the selection, or %NULL to unset it
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_timeline_new">
+<function name="clutter_text_set_single_line_mode">
 <description>
-Creates a new #ClutterTimeline with a duration of @msecs.
+Sets whether a #ClutterText actor should be in single line mode
+or not. Only editable #ClutterText&lt;!-- --&gt;s can be in single line
+mode.
 
-Since: 0.6
+A text actor in single line mode will not wrap text and will clip
+the visible area to the predefined size. The contents of the
+text actor will scroll to display the end of the text if its length
+is bigger than the allocated width.
+
+When setting the single line mode the #ClutterText:activatable
+property is also set as a side effect. Instead of entering a new
+line character, the text actor will emit the #ClutterText::activate
+signal.
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="msecs">
-<parameter_description> Duration of the timeline in milliseconds
+<parameter name="self">
+<parameter_description> a #ClutterText
+</parameter_description>
+</parameter>
+<parameter name="single_line">
+<parameter_description> whether to enable single line mode
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterTimeline instance. Use
-g_object_unref() when done using it
-
-</return>
+<return></return>
 </function>
 
-<function name="cogl_pango_font_map_set_resolution">
+<function name="clutter_text_set_text">
 <description>
-Sets the resolution to be used by @font_map at @dpi.
+Sets the contents of a #ClutterText actor.
+
+If the #ClutterText:use-markup property was set to %TRUE it
+will be reset to %FALSE as a side effect. If you want to
+maintain the #ClutterText:use-markup you should use the
+clutter_text_set_markup() function instead
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="font_map">
-<parameter_description> a #CoglPangoFontMap
+<parameter name="self">
+<parameter_description> a #ClutterText
 </parameter_description>
 </parameter>
-<parameter name="dpi">
-<parameter_description> DPI to set
+<parameter name="text">
+<parameter_description> the text to set. Passing %NULL is the same
+as passing &quot;&quot; (the empty string)
 </parameter_description>
 </parameter>
 </parameters>
@@ -17712,7 +36656,9 @@ Sets whether the contents of the #ClutterText actor contains markup
 in &lt;link linkend=&quot;PangoMarkupFormat&quot;&gt;Pango's text markup language&lt;/link&gt;.
 
 Setting #ClutterText:use-markup on an editable #ClutterText will
-make the actor discard any markup.
+not have any effect except hiding the markup.
+
+See also #ClutterText:use-markup.
 
 Since: 1.0
 
@@ -17730,399 +36676,588 @@ Since: 1.0
 <return></return>
 </function>
 
-<function name="clutter_x11_get_stage_visual">
+<function name="clutter_texture_get_base_size">
 <description>
-Returns an XVisualInfo suitable for creating a foreign window for the given
-stage. NOTE: It doesn't do as the name may suggest, which is return the
-XVisualInfo that was used to create an existing window for the given stage.
+Gets the size in pixels of the untransformed underlying image
 
-XXX: It might be best to deprecate this function and replace with something
-along the lines of clutter_backend_x11_get_foreign_visual () or perhaps
-clutter_stage_x11_get_foreign_visual ()
+Deprecated: 1.12
 
-Deprecated: 1.2: Use clutter_x11_get_visual_info() instead
+</description>
+<parameters>
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> return location for the width, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> return location for the height, or %NULL
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-Since: 0.4
+<function name="clutter_texture_get_cogl_material">
+<description>
+Returns a handle to the underlying COGL material used for drawing
+the actor.
+
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return> An XVisualInfo suitable for creating a foreign stage. Use
-XFree() to free the returned value instead
+<return> a handle for a #CoglMaterial. The
+material is owned by the #ClutterTexture and it should not be
+unreferenced
 
 </return>
 </function>
 
-<function name="clutter_scriptable_set_id">
+<function name="clutter_texture_get_cogl_texture">
 <description>
-Sets @id as the unique Clutter script it for this instance of
-#ClutterScriptableIface.
+Retrieves the handle to the underlying COGL texture used for drawing
+the actor. No extra reference is taken so if you need to keep the
+handle then you should call cogl_handle_ref() on it.
 
-This name can be used by user interface designer applications to
-define a unique name for an object constructable using the UI
-definition language parsed by #ClutterScript.
+The texture handle returned is the first layer of the material
+handle used by the #ClutterTexture. If you need to access the other
+layers you should use clutter_texture_get_cogl_material() instead
+and use the #CoglMaterial API.
 
-Since: 0.6
+Since: 0.8
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="scriptable">
-<parameter_description> a #ClutterScriptable
-</parameter_description>
-</parameter>
-<parameter name="id">
-<parameter_description> the #ClutterScript id of the object
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #CoglHandle for the texture. The returned
+handle is owned by the #ClutterTexture and it should not be unreferenced
+
+</return>
 </function>
 
-<function name="clutter_box_layout_get_fill">
+<function name="clutter_texture_get_filter_quality">
 <description>
-Retrieves the horizontal and vertical fill policies for @actor
-as set using clutter_box_layout_pack() or clutter_box_layout_set_fill()
+Gets the filter quality used when scaling a texture.
 
-Since: 1.2
+Since: 0.8
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @layout
-</parameter_description>
-</parameter>
-<parameter name="x_fill">
-<parameter_description> return location for the horizontal fill policy
-</parameter_description>
-</parameter>
-<parameter name="y_fill">
-<parameter_description> return location for the vertical fill policy
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> The filter quality value.
+
+</return>
 </function>
 
-<function name="clutter_model_iter_prev">
+<function name="clutter_texture_get_keep_aspect_ratio">
 <description>
-Sets the @iter to point at the previous position in the model.
-The model implementation should take into account the presence of
-a filter function.
+Retrieves the value set using clutter_texture_set_keep_aspect_ratio()
 
-Since: 0.6
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return> The passed iterator, updated to point at the previous
-row in the model.
+<return> %TRUE if the #ClutterTexture should maintain the
+aspect ratio of the underlying image
 
 </return>
 </function>
 
-<function name="clutter_eglx_display">
+<function name="clutter_texture_get_load_async">
 <description>
-Gets the current EGLDisplay.
+Retrieves the value set using clutter_texture_set_load_async()
 
-Since: 0.4
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
+</parameter_description>
+</parameter>
 </parameters>
-<return> an EGLDisplay
+<return> %TRUE if the #ClutterTexture should load the data from
+disk asynchronously
 
 </return>
 </function>
 
-<function name="clutter_actor_set_z_rotation_from_gravity">
+<function name="clutter_texture_get_load_data_async">
 <description>
-Sets the rotation angle of @self around the Z axis using the center
-point specified as a compass point. For example to rotate such that
-the center of the actor remains static you can use
-%CLUTTER_GRAVITY_CENTER. If the actor changes size the center point
-will move accordingly.
+Retrieves the value set by clutter_texture_set_load_data_async()
 
 Since: 1.0
 
+Deprecated: 1.12
+
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="angle">
-<parameter_description> the angle of rotation
+</parameters>
+<return> %TRUE if the #ClutterTexture should load the image
+data from a file asynchronously
+
+</return>
+</function>
+
+<function name="clutter_texture_get_max_tile_waste">
+<description>
+Gets the maximum waste that will be used when creating a texture or
+-1 if slicing is disabled.
+
+Since: 0.8
+
+Deprecated: 1.12
+
+</description>
+<parameters>
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="gravity">
-<parameter_description> the center point of the rotation
+</parameters>
+<return> The maximum waste or -1 if the texture waste is
+unlimited.
+
+</return>
+</function>
+
+<function name="clutter_texture_get_pick_with_alpha">
+<description>
+Retrieves the value set by clutter_texture_set_load_data_async()
+
+Since: 1.4
+
+Deprecated: 1.12
+
+</description>
+<parameters>
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the #ClutterTexture should define its shape
+using the alpha channel when picking.
+
+</return>
 </function>
 
-<function name="cogl_sqrti">
+<function name="clutter_texture_get_pixel_format">
 <description>
-Very fast fixed point implementation of square root for integers.
+Retrieves the pixel format used by @texture. This is
+equivalent to:
 
-This function is at least 6x faster than clib sqrt() on x86, and (this is
-not a typo!) about 500x faster on ARM without FPU. It's error is &lt; 5%
-for arguments &lt; %COGL_SQRTI_ARG_5_PERCENT and &lt; 10% for arguments &lt;
-%COGL_SQRTI_ARG_10_PERCENT. The maximum argument that can be passed to
-this function is COGL_SQRTI_ARG_MAX.
+|[
+handle = clutter_texture_get_pixel_format (texture);
 
-Since: 0.2
+if (handle != COGL_INVALID_HANDLE)
+format = cogl_texture_get_format (handle);
+]|
+
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="x">
-<parameter_description> integer value
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
 </parameters>
-<return> integer square root.
-
+<return> a #CoglPixelFormat value
 
 </return>
 </function>
 
-<function name="clutter_actor_set_geometry">
+<function name="clutter_texture_get_repeat">
 <description>
-Sets the actor's fixed position and forces its minimum and natural
-size, in pixels. This means the untransformed actor will have the
-given geometry. This is the same as calling clutter_actor_set_position()
-and clutter_actor_set_size().
+Retrieves the horizontal and vertical repeat values set
+using clutter_texture_set_repeat()
+
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="geometry">
-<parameter_description> A #ClutterGeometry
+<parameter name="repeat_x">
+<parameter_description> return location for the horizontal repeat
+</parameter_description>
+</parameter>
+<parameter name="repeat_y">
+<parameter_description> return location for the vertical repeat
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_get_timestamp">
+<function name="clutter_texture_get_sync_size">
 <description>
-Returns the approximate number of microseconds passed since clutter was
-intialised.
+Retrieves the value set with clutter_texture_set_sync_size()
+
+Since: 1.0
 
+Deprecated: 1.12
 
 </description>
 <parameters>
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
+</parameter_description>
+</parameter>
 </parameters>
-<return> Number of microseconds since clutter_init() was called.
+<return> %TRUE if the #ClutterTexture should have the same
+preferred size of the underlying image data
+
 </return>
 </function>
 
-<function name="clutter_x11_set_stage_foreign">
+<function name="clutter_texture_new">
 <description>
-Target the #ClutterStage to use an existing external X Window
+Creates a new empty #ClutterTexture object.
 
-Since: 0.4
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
-<parameter name="xwindow">
-<parameter_description> an existing X Window id
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if foreign window is valid
+<return> A newly created #ClutterTexture object.
 
 </return>
 </function>
 
-<function name="clutter_animator_key_get_property_type">
+<function name="clutter_texture_new_from_actor">
 <description>
-Retrieves the #GType of the property a key applies to
+Creates a new #ClutterTexture object with its source a prexisting
+actor (and associated children). The textures content will contain
+'live' redirected output of the actors scene.
 
-You can use this type to initialize the #GValue to pass to
-clutter_animator_key_get_value()
+Note this function is intented as a utility call for uniformly applying
+shaders to groups and other potential visual effects. It requires that
+the %CLUTTER_FEATURE_OFFSCREEN feature is supported by the current backend
+and the target system.
 
-Since: 1.2
+Some tips on usage:
+
+&lt;itemizedlist&gt;
+&lt;listitem&gt;
+&lt;para&gt;The source actor must be made visible (i.e by calling
+#clutter_actor_show).&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;The source actor must have a parent in order for it to be
+allocated a size from the layouting mechanism. If the source
+actor does not have a parent when this function is called then
+the ClutterTexture will adopt it and allocate it at its
+preferred size. Using this you can clone an actor that is
+otherwise not displayed. Because of this feature if you do
+intend to display the source actor then you must make sure that
+the actor is parented before calling
+clutter_texture_new_from_actor() or that you unparent it before
+adding it to a container.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;When getting the image for the clone texture, Clutter
+will attempt to render the source actor exactly as it would
+appear if it was rendered on screen. The source actor's parent
+transformations are taken into account. Therefore if your
+source actor is rotated along the X or Y axes so that it has
+some depth, the texture will appear differently depending on
+the on-screen location of the source actor. While painting the
+source actor, Clutter will set up a temporary asymmetric
+perspective matrix as the projection matrix so that the source
+actor will be projected as if a small section of the screen was
+being viewed. Before version 0.8.2, an orthogonal identity
+projection was used which meant that the source actor would be
+clipped if any part of it was not on the zero Z-plane.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;Avoid reparenting the source with the created texture.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;A group can be padded with a transparent rectangle as to
+provide a border to contents for shader output (blurring text
+for example).&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;The texture will automatically resize to contain a further
+transformed source. However, this involves overhead and can be
+avoided by placing the source actor in a bounding group
+sized large enough to contain any child tranformations.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;Uploading pixel data to the texture (e.g by using
+clutter_texture_set_from_file()) will destroy the offscreen texture
+data and end redirection.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;listitem&gt;
+&lt;para&gt;cogl_texture_get_data() with the handle returned by
+clutter_texture_get_cogl_texture() can be used to read the
+offscreen texture pixels into a pixbuf.&lt;/para&gt;
+&lt;/listitem&gt;
+&lt;/itemizedlist&gt;
+
+Since: 0.6
+
+Deprecated: 1.8: Use the #ClutterOffscreenEffect and #ClutterShaderEffect
+directly on the intended #ClutterActor to replace the functionality of
+this function.
 
 </description>
 <parameters>
-<parameter name="key">
-<parameter_description> a #ClutterAnimatorKey
+<parameter name="actor">
+<parameter_description> A source #ClutterActor
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #GType of the property
+<return> A newly created #ClutterTexture object, or %NULL on failure.
 
 </return>
 </function>
 
-<function name="clutter_actor_box_new">
+<function name="clutter_texture_new_from_file">
 <description>
-Allocates a new #ClutterActorBox using the passed coordinates
-for the top left and bottom right points
+Creates a new ClutterTexture actor to display the image contained a
+file. If the image failed to load then NULL is returned and @error
+is set.
 
-Since: 1.0
+Since: 0.8
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="x_1">
-<parameter_description> X coordinate of the top left point
-</parameter_description>
-</parameter>
-<parameter name="y_1">
-<parameter_description> Y coordinate of the top left point
-</parameter_description>
-</parameter>
-<parameter name="x_2">
-<parameter_description> X coordinate of the bottom right point
+<parameter name="filename">
+<parameter_description> The name of an image file to load.
 </parameter_description>
 </parameter>
-<parameter name="y_2">
-<parameter_description> Y coordinate of the bottom right point
+<parameter name="error">
+<parameter_description> Return locatoin for an error.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly allocated #ClutterActorBox. Use
-clutter_actor_box_free() to free the resources
+<return> A newly created #ClutterTexture object or NULL on
+error.
 
 </return>
 </function>
 
-<function name="clutter_flow_layout_get_row_height">
+<function name="clutter_texture_node_new">
 <description>
-Retrieves the minimum and maximum row heights
+Creates a new #ClutterPaintNode that will paint the passed @texture.
 
-Since: 1.2
+This function will take a reference on @texture, so it is safe to
+call cogl_object_unref() on @texture when it returns.
+
+The @color must not be pre-multiplied with its #ClutterColor.alpha
+channel value; if @color is %NULL, a fully opaque white color will
+be used for blending.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+<parameter name="texture">
+<parameter_description> a #CoglTexture
 </parameter_description>
 </parameter>
-<parameter name="min_height">
-<parameter_description> return location for the minimum row height, or %NULL
+<parameter name="color">
+<parameter_description> a #ClutterColor used for blending, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="max_height">
-<parameter_description> return location for the maximum row height, or %NULL
+<parameter name="min_filter">
+<parameter_description> the minification filter for the texture
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_event_get_device_id">
-<description>
-Retrieves the events device id if set.
-
-
-</description>
-<parameters>
-<parameter name="event">
-<parameter_description> a clutter event 
+<parameter name="mag_filter">
+<parameter_description> the magnification filter for the texture
 </parameter_description>
 </parameter>
 </parameters>
-<return> A unique identifier for the device or -1 if the event has
-no specific device set.
+<return> the newly created #ClutterPaintNode.
+Use clutter_paint_node_unref() when done
+
 </return>
 </function>
 
-<function name="json_node_get_parent">
+<function name="clutter_texture_set_area_from_rgb_data">
 <description>
-Retrieves the parent #JsonNode of @node.
+Updates a sub-region of the pixel data in a #ClutterTexture.
+
+Since: 0.6
 
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> Image data in RGB type colorspace.
+</parameter_description>
+</parameter>
+<parameter name="has_alpha">
+<parameter_description> Set to TRUE if image data has an alpha channel.
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> X coordinate of upper left corner of region to update.
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> Y coordinate of upper left corner of region to update.
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> Width in pixels of region to update.
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> Height in pixels of region to update.
+</parameter_description>
+</parameter>
+<parameter name="rowstride">
+<parameter_description> Distance in bytes between row starts on source buffer.
+</parameter_description>
+</parameter>
+<parameter name="bpp">
+<parameter_description> bytes per pixel (Currently only 3 and 4 supported,
+depending on @has_alpha)
+</parameter_description>
+</parameter>
+<parameter name="flags">
+<parameter_description> #ClutterTextureFlags
+</parameter_description>
+</parameter>
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> the parent node, or %NULL if @node is the root node
+<return> %TRUE on success, %FALSE on failure.
+
 </return>
 </function>
 
-<function name="clutter_actor_set_shader_param_float">
+<function name="clutter_texture_set_cogl_material">
 <description>
-Sets the value for a named float parameter of the shader applied
-to @actor.
+Replaces the underlying Cogl material drawn by this actor with
+@cogl_material. A reference to the material is taken so if the
+handle is no longer needed it should be deref'd with
+cogl_handle_unref. Texture data is attached to the material so
+calling this function also replaces the Cogl
+texture. #ClutterTexture requires that the material have a texture
+layer so you should set one on the material before calling this
+function.
 
 Since: 0.8
 
+Deprecated: 1.12
+
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="param">
-<parameter_description> the name of the parameter
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the parameter
+<parameter name="cogl_material">
+<parameter_description> A CoglHandle for a material
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_get_default_text_direction">
+<function name="clutter_texture_set_cogl_texture">
 <description>
-Retrieves the default direction for the text. The text direction is
-determined by the locale and/or by the %CLUTTER_TEXT_DIRECTION environment
-variable
+Replaces the underlying COGL texture drawn by this actor with
+@cogl_tex. A reference to the texture is taken so if the handle is
+no longer needed it should be deref'd with cogl_handle_unref.
 
-The default text direction can be overridden on a per-actor basis by using
-clutter_actor_set_text_direction()
+Since: 0.8
 
-Since: 1.2
+Deprecated: 1.12
 
 </description>
 <parameters>
+<parameter name="texture">
+<parameter_description> A #ClutterTexture
+</parameter_description>
+</parameter>
+<parameter name="cogl_tex">
+<parameter_description> A CoglHandle for a texture
+</parameter_description>
+</parameter>
 </parameters>
-<return> the default text direction
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_set_timeline">
+<function name="clutter_texture_set_filter_quality">
 <description>
-Sets an external timeline that will be used for driving the animation
+Sets the filter quality when scaling a texture. The quality is an
+enumeration currently the following values are supported:
+%CLUTTER_TEXTURE_QUALITY_LOW which is fast but only uses nearest neighbour
+interpolation. %CLUTTER_TEXTURE_QUALITY_MEDIUM which is computationally a
+bit more expensive (bilinear interpolation), and
+%CLUTTER_TEXTURE_QUALITY_HIGH which uses extra texture memory resources to
+improve scaled down rendering as well (by using mipmaps). The default value
+is %CLUTTER_TEXTURE_QUALITY_MEDIUM.
 
-Since: 1.2
+Since: 0.8
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="filter_quality">
+<parameter_description> new filter quality value
 </parameter_description>
 </parameter>
 </parameters>
@@ -18143,6 +37278,8 @@ loaded or if an error occurred.
 
 Since: 0.8
 
+Deprecated: 1.12
+
 </description>
 <parameters>
 <parameter name="texture">
@@ -18163,23 +37300,13 @@ Since: 0.8
 </return>
 </function>
 
-<function name="clutter_texture_new">
+<function name="clutter_texture_set_from_rgb_data">
 <description>
-Creates a new empty #ClutterTexture object.
-
-
-</description>
-<parameters>
-</parameters>
-<return> A newly created #ClutterTexture object.
-</return>
-</function>
+Sets #ClutterTexture image data.
 
-<function name="clutter_texture_get_load_data_async">
-<description>
-Retrieves the value set by clutter_texture_set_load_data_async()
+Since: 0.4
 
-Since: 1.0
+Deprecated: 1.12
 
 </description>
 <parameters>
@@ -18187,231 +37314,41 @@ Since: 1.0
 <parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-</parameters>
-<return> %TRUE if the #ClutterTexture should load the image
-data from a file asynchronously
-
-</return>
-</function>
-
-<function name="clutter_text_set_max_length">
-<description>
-Sets the maximum allowed length of the contents of the actor. If the
-current contents are longer than the given length, then they will be
-truncated to fit.
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="max">
-<parameter_description> the maximum number of characters allowed in the text actor; 0
-to disable or -1 to set the length of the current string
+<parameter name="data">
+<parameter_description> image data in RGBA type colorspace.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_model_iter_set_valist">
-<description>
-See clutter_model_iter_set(); this version takes a va_list for language
-bindings.
-
-Since: 0.6
-
-</description>
-<parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="has_alpha">
+<parameter_description> set to %TRUE if image data has an alpha channel.
 </parameter_description>
 </parameter>
-<parameter name="args">
-<parameter_description> va_list of column/value pairs, terminiated by -1
+<parameter name="width">
+<parameter_description> width in pixels of image data.
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_actor_animate">
-<description>
-Animates the given list of properties of @actor between the current
-value for each property and a new final value. The animation has a
-definite duration and a speed given by the @mode.
-
-For example, this:
-
-|[
-clutter_actor_animate (rectangle, CLUTTER_LINEAR, 250,
-&quot;width&quot;, 100.0,
-&quot;height&quot;, 100.0,
-NULL);
-]|
-
-will make width and height properties of the #ClutterActor &quot;rectangle&quot;
-grow linearly between the current value and 100 pixels, in 250 milliseconds.
-
-The animation @mode is a logical id, either from the #ClutterAnimationMode
-enumeration of from clutter_alpha_register_func().
-
-All the properties specified will be animated between the current value
-and the final value. If a property should be set at the beginning of
-the animation but not updated during the animation, it should be prefixed
-by the &quot;fixed::&quot; string, for instance:
-
-|[
-clutter_actor_animate (actor, CLUTTER_EASE_IN_SINE, 100,
-&quot;rotation-angle-z&quot;, 360.0,
-&quot;fixed::rotation-center-z&quot;, &amp;center,
-NULL);
-]|
-
-Will animate the &quot;rotation-angle-z&quot; property between the current value
-and 360 degrees, and set the &quot;rotation-center-z&quot; property to the fixed
-value of the #ClutterVertex &quot;center&quot;.
-
-This function will implicitly create a #ClutterAnimation object which
-will be assigned to the @actor and will be returned to the developer
-to control the animation or to know when the animation has been
-completed.
-
-If a name argument starts with &quot;signal::&quot;, &quot;signal-after::&quot;,
-&quot;signal-swapped::&quot; or &quot;signal-swapped-after::&quot; the two following arguments
-are used as callback function and data for a signal handler installed on
-the #ClutterAnimation object for the specified signal name, for instance:
-
-|[
-
-static void
-on_animation_completed (ClutterAnimation *animation,
-ClutterActor     *actor)
-{
-clutter_actor_hide (actor);
-}
-
-clutter_actor_animate (actor, CLUTTER_EASE_IN_CUBIC, 100,
-&quot;opacity&quot;, 0,
-&quot;signal::completed&quot;, on_animation_completed, actor,
-NULL);
-]|
-
-or, to automatically destroy an actor at the end of the animation:
-
-|[
-clutter_actor_animate (actor, CLUTTER_EASE_IN_CUBIC, 100,
-&quot;opacity&quot;, 0,
-&quot;signal-swapped-after::completed&quot;,
-clutter_actor_destroy,
-actor,
-NULL);
-]|
-
-The &quot;signal::&quot; modifier is the equivalent of using g_signal_connect();
-the &quot;signal-after::&quot; modifier is the equivalent of using
-g_signal_connect_after() or g_signal_connect_data() with the
-%G_CONNECT_AFTER; the &quot;signal-swapped::&quot; modifier is the equivalent
-of using g_signal_connect_swapped() or g_signal_connect_data() with the
-%G_CONNECT_SWAPPED flah; finally, the &quot;signal-swapped-after::&quot; modifier
-is the equivalent of using g_signal_connect_data() with both the
-%G_CONNECT_AFTER and %G_CONNECT_SWAPPED flags. The clutter_actor_animate()
-function will not keep track of multiple connections to the same signal,
-so it is your responsability to avoid them when calling
-clutter_actor_animate() multiple times on the same actor.
-
-Calling this function on an actor that is already being animated
-will cause the current animation to change with the new final values,
-the new easing mode and the new duration - that is, this code:
-
-|[
-clutter_actor_animate (actor, CLUTTER_LINEAR, 250,
-&quot;width&quot;, 100.0,
-&quot;height&quot;, 100.0,
-NULL);
-clutter_actor_animate (actor, CLUTTER_EASE_IN_CUBIC, 500,
-&quot;x&quot;, 100.0,
-&quot;y&quot;, 100.0,
-&quot;width&quot;, 200.0,
-NULL);
-]|
-
-is the equivalent of:
-
-|[
-clutter_actor_animate (actor, CLUTTER_EASE_IN_CUBIC, 500,
-&quot;x&quot;, 100.0,
-&quot;y&quot;, 100.0,
-&quot;width&quot;, 200.0,
-&quot;height&quot;, 100.0,
-NULL);
-]|
-
-&lt;note&gt;Unless the animation is looping, the #ClutterAnimation created by
-clutter_actor_animate() will become invalid as soon as it is
-complete.&lt;/note&gt;
-
-Since the created #ClutterAnimation instance attached to @actor
-is guaranteed to be valid throughout the #ClutterAnimation::completed
-signal emission chain, you will not be able to create a new animation
-using clutter_actor_animate() on the same @actor from within the
-#ClutterAnimation::completed signal handler unless you use
-g_signal_connect_after() to connect the callback function, for instance:
-
-|[
-static void
-on_animation_completed (ClutterAnimation *animation,
-ClutterActor     *actor)
-{
-clutter_actor_animate (actor, CLUTTER_EASE_OUT_CUBIC, 250,
-&quot;x&quot;, 500.0,
-&quot;y&quot;, 500.0,
-NULL);
-}
-
-...
-animation = clutter_actor_animate (actor, CLUTTER_EASE_IN_CUBIC, 250,
-&quot;x&quot;, 100.0,
-&quot;y&quot;, 100.0,
-NULL);
-g_signal_connect (animation, &quot;completed&quot;,
-G_CALLBACK (on_animation_completed),
-actor);
-...
-]|
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="height">
+<parameter_description> height in pixels of image data
 </parameter_description>
 </parameter>
-<parameter name="mode">
-<parameter_description> an animation mode logical id
+<parameter name="rowstride">
+<parameter_description> distance in bytes between row starts.
 </parameter_description>
 </parameter>
-<parameter name="duration">
-<parameter_description> duration of the animation, in milliseconds
+<parameter name="bpp">
+<parameter_description> bytes per pixel (currently only 3 and 4 supported, depending
+on the value of @has_alpha)
 </parameter_description>
 </parameter>
-<parameter name="first_property_name">
-<parameter_description> the name of a property
+<parameter name="flags">
+<parameter_description> #ClutterTextureFlags
 </parameter_description>
 </parameter>
-<parameter name="VarArgs">
-<parameter_description> a %NULL terminated list of property names and
-property values
+<parameter name="error">
+<parameter_description> return location for a #GError, or %NULL.
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterAnimation object. The object is
-owned by the #ClutterActor and should not be unreferenced with
-g_object_unref()
+<return> %TRUE on success, %FALSE on failure.
 
 </return>
 </function>
@@ -18421,8 +37358,19 @@ g_object_unref()
 Sets a #ClutterTexture from YUV image data. If an error occurred,
 %FALSE is returned and @error is set.
 
+The YUV support depends on the driver; the format supported by the
+few drivers exposing this capability are not really useful.
+
+The proper way to convert image data in any YUV colorspace to any
+RGB colorspace is to use a fragment shader associated with the
+#ClutterTexture material.
+
 Since: 0.4
 
+Deprecated: 1.10: Use clutter_texture_get_cogl_material() and
+the Cogl API to install a fragment shader for decoding YUV
+formats on the GPU
+
 </description>
 <parameters>
 <parameter name="texture">
@@ -18455,4097 +37403,4056 @@ Since: 0.4
 </return>
 </function>
 
-<function name="clutter_stage_set_perspective">
+<function name="clutter_texture_set_keep_aspect_ratio">
 <description>
-Sets the stage perspective.
+Sets whether @texture should have a preferred size maintaining
+the aspect ratio of the underlying image
+
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="perspective">
-<parameter_description> A #ClutterPerspective
+<parameter name="keep_aspect">
+<parameter_description> %TRUE to maintain aspect ratio
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_alpha_register_closure">
+<function name="clutter_texture_set_load_async">
 <description>
-#GClosure variant of clutter_alpha_register_func().
-
-Registers a global alpha function and returns its logical id
-to be used by clutter_alpha_set_mode() or by #ClutterAnimation.
+Sets whether @texture should use a worker thread to load the data
+from disk asynchronously. Setting @load_async to %TRUE will make
+clutter_texture_set_from_file() return immediately.
 
-The logical id is always greater than %CLUTTER_ANIMATION_LAST.
+See the #ClutterTexture:load-async property documentation, and
+clutter_texture_set_load_data_async().
 
 Since: 1.0
 
+Deprecated: 1.12
+
 </description>
 <parameters>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
+</parameter_description>
+</parameter>
+<parameter name="load_async">
+<parameter_description> %TRUE if the texture should asynchronously load data
+from a filename
 </parameter_description>
 </parameter>
 </parameters>
-<return> the logical id of the alpha function
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_apply_relative_transform_to_point">
+<function name="clutter_texture_set_load_data_async">
 <description>
-Transforms @point in coordinates relative to the actor into
-ancestor-relative coordinates using the relevant transform
-stack (i.e. scale, rotation, etc).
+Sets whether @texture should use a worker thread to load the data
+from disk asynchronously. Setting @load_async to %TRUE will make
+clutter_texture_set_from_file() block until the #ClutterTexture has
+determined the width and height of the image data.
 
-If @ancestor is %NULL the ancestor will be the #ClutterStage. In
-this case, the coordinates returned will be the coordinates on
-the stage before the projection is applied. This is different from
-the behaviour of clutter_actor_apply_transform_to_point().
+See the #ClutterTexture:load-async property documentation, and
+clutter_texture_set_load_async().
 
-Since: 0.6
+Since: 1.0
+
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="ancestor">
-<parameter_description> A #ClutterActor ancestor, or %NULL to use the
-default #ClutterStage
-</parameter_description>
-</parameter>
-<parameter name="point">
-<parameter_description> A point as #ClutterVertex
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="vertex">
-<parameter_description> The translated #ClutterVertex
+<parameter name="load_async">
+<parameter_description> %TRUE if the texture should asynchronously load data
+from a filename
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_add_timeout_full">
+<function name="clutter_texture_set_pick_with_alpha">
 <description>
-Sets a function to be called at regular intervals holding the Clutter
-threads lock, with the given priority. The function is called repeatedly
-until it returns %FALSE, at which point the timeout is automatically
-removed and the function will not be called again. The @notify function
-is called when the timeout is removed.
+Sets whether @texture should have it's shape defined by the alpha
+channel when picking.
 
-The first call to the function will be at the end of the first @interval.
+Be aware that this is a bit more costly than the default picking
+due to the texture lookup, extra test against the alpha value and
+the fact that it will also interrupt the batching of geometry done
+internally.
 
-It is important to note that, due to how the Clutter main loop is
-implemented, the timing will not be accurate and it will not try to
-&quot;keep up&quot; with the interval. A more reliable source is available
-using clutter_threads_add_frame_source_full(), which is also internally
-used by #ClutterTimeline.
+Also there is currently no control over the threshold used to
+determine what value of alpha is considered pickable, and so only
+fully opaque parts of the texture will react to picking.
 
-See also clutter_threads_add_idle_full().
+Since: 1.4
 
-Since: 0.4
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="priority">
-<parameter_description> the priority of the timeout source. Typically this will be in the
-range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
-</parameter_description>
-</parameter>
-<parameter name="interval">
-<parameter_description> the time between calls to the function, in milliseconds
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> function to call
-</parameter_description>
-</parameter>
-<parameter name="data">
-<parameter_description> data to pass to the function
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="notify">
-<parameter_description> function to call when the timeout source is removed
+<parameter name="pick_with_alpha">
+<parameter_description> %TRUE if the alpha channel should affect the
+picking shape
 </parameter_description>
 </parameter>
 </parameters>
-<return> the ID (greater than 0) of the event source.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_set_width">
+<function name="clutter_texture_set_repeat">
 <description>
-Forces a width on an actor, causing the actor's preferred width
-and height (if any) to be ignored.
-
-If @width is -1 the actor will use its preferred width request
-instead of overriding it, i.e. you can &quot;unset&quot; the width with -1.
+Sets whether the @texture should repeat horizontally or
+vertically when the actor size is bigger than the image size
 
-This function sets both the minimum and natural size of the actor.
+Since: 1.0
 
-since: 0.2
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="width">
-<parameter_description> Requested new width for the actor, in pixels, or -1
+<parameter name="repeat_x">
+<parameter_description> %TRUE if the texture should repeat horizontally
+</parameter_description>
+</parameter>
+<parameter name="repeat_y">
+<parameter_description> %TRUE if the texture should repeat vertically
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_get_ellipsize">
+<function name="clutter_texture_set_sync_size">
 <description>
-Returns the ellipsizing position of a #ClutterText actor, as
-set by clutter_text_set_ellipsize().
+Sets whether @texture should have the same preferred size as the
+underlying image data.
 
 Since: 1.0
 
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-</parameters>
-<return> #PangoEllipsizeMode
-
-</return>
-</function>
-
-<function name="clutter_alpha_set_timeline">
-<description>
-Binds @alpha to @timeline.
-
-Since: 0.2
+Deprecated: 1.12
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> A #ClutterAlpha
+<parameter name="texture">
+<parameter_description> a #ClutterTexture
 </parameter_description>
 </parameter>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
+<parameter name="sync_size">
+<parameter_description> %TRUE if the texture should have the same size of the
+underlying image data
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_delete_text">
+<function name="clutter_threads_add_frame_source">
 <description>
-Deletes the text inside a #ClutterText actor between @start_pos
-and @end_pos.
+Simple wrapper around clutter_threads_add_frame_source_full().
 
-The starting and ending positions are expressed in characters,
-not in bytes.
+Since: 0.8
 
-Since: 1.0
+Deprecated: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="fps">
+<parameter_description> the number of times per second to call the function
 </parameter_description>
 </parameter>
-<parameter name="start_pos">
-<parameter_description> starting position
+<parameter name="func">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="end_pos">
-<parameter_description> ending position
+<parameter name="data">
+<parameter_description> data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ID (greater than 0) of the event source.
+
+</return>
 </function>
 
-<function name="clutter_timeline_get_duration">
+<function name="clutter_threads_add_frame_source_full">
 <description>
-Retrieves the duration of a #ClutterTimeline in milliseconds.
-See clutter_timeline_set_duration().
-
-Since: 0.6
+Sets a function to be called at regular intervals holding the Clutter
+threads lock, with the given priority. The function is called repeatedly
+until it returns %FALSE, at which point the timeout is automatically
+removed and the function will not be called again. The @notify function
+is called when the timeout is removed.
 
-</description>
-<parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
-</parameter_description>
-</parameter>
-</parameters>
-<return> the duration of the timeline, in milliseconds.
+This function is similar to clutter_threads_add_timeout_full()
+except that it will try to compensate for delays. For example, if
+@func takes half the interval time to execute then the function
+will be called again half the interval time after it finished. In
+contrast clutter_threads_add_timeout_full() would not fire until a
+full interval after the function completes so the delay between
+calls would be @interval * 1.5. This function does not however try
+to invoke the function multiple times to catch up missing frames if
+@func takes more than @interval ms to execute.
 
-</return>
-</function>
+See also clutter_threads_add_idle_full().
 
-<function name="clutter_get_font_map">
-<description>
-Retrieves the #PangoFontMap instance used by Clutter.
-You can use the global font map object with the COGL
-Pango API.
+Since: 0.8
 
-Since: 1.0
+Deprecated: 1.6
 
 </description>
 <parameters>
+<parameter name="priority">
+<parameter_description> the priority of the frame source. Typically this will be in the
+range between %G_PRIORITY_DEFAULT and %G_PRIORITY_HIGH.
+</parameter_description>
+</parameter>
+<parameter name="fps">
+<parameter_description> the number of times per second to call the function
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> function to call
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to the function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> function to call when the timeout source is removed
+</parameter_description>
+</parameter>
 </parameters>
-<return> the #PangoFontMap instance. The returned
-value is owned by Clutter and it should never be unreferenced.
+<return> the ID (greater than 0) of the event source.
 
 </return>
 </function>
 
-<function name="clutter_behaviour_path_get_path">
+<function name="clutter_threads_add_idle">
 <description>
-Get the current path of the behaviour
+Simple wrapper around clutter_threads_add_idle_full() using the
+default priority.
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="pathb">
-<parameter_description> a #ClutterBehaviourPath instance
+<parameter name="func">
+<parameter_description> function to call
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
-<return> the path
+<return> the ID (greater than 0) of the event source.
 
 </return>
 </function>
 
-<function name="json_object_set_member">
+<function name="clutter_threads_add_idle_full">
 <description>
-Sets @node as the value of @member_name inside @object.
+Adds a function to be called whenever there are no higher priority
+events pending. If the function returns %FALSE it is automatically
+removed from the list of event sources and will not be called again.
 
-If @object already contains a member called @member_name then
-the member's current value is overwritten. Otherwise, a new
-member is added to @object.
+This function can be considered a thread-safe variant of g_idle_add_full():
+it will call @function while holding the Clutter lock. It is logically
+equivalent to the following implementation:
 
-Since: 0.8
+|[
+static gboolean
+idle_safe_callback (gpointer data)
+{
+SafeClosure *closure = data;
+gboolean res = FALSE;
+
+/ * mark the critical section * /
+
+clutter_threads_enter();
+
+/ * the callback does not need to acquire the Clutter
+* lock itself, as it is held by the this proxy handler
+* /
+res = closure-&gt;callback (closure-&gt;data);
+
+clutter_threads_leave();
+
+return res;
+}
+static gulong
+add_safe_idle (GSourceFunc callback,
+gpointer    data)
+{
+SafeClosure *closure = g_new0 (SafeClosure, 1);
+
+closure-&gt;callback = callback;
+closure-&gt;data = data;
+
+return g_idle_add_full (G_PRIORITY_DEFAULT_IDLE,
+idle_safe_callback,
+closure,
+g_free)
+}
+]|
+
+This function should be used by threaded applications to make sure
+that @func is emitted under the Clutter threads lock and invoked
+from the same thread that started the Clutter main loop. For instance,
+it can be used to update the UI using the results from a worker
+thread:
+
+|[
+static gboolean
+update_ui (gpointer data)
+{
+SomeClosure *closure = data;
+
+/ * it is safe to call Clutter API from this function because
+* it is invoked from the same thread that started the main
+* loop and under the Clutter thread lock
+* /
+clutter_label_set_text (CLUTTER_LABEL (closure-&gt;label),
+closure-&gt;text);
+
+g_object_unref (closure-&gt;label);
+g_free (closure);
+
+return FALSE;
+}
+
+/ * within another thread * /
+closure = g_new0 (SomeClosure, 1);
+/ * always take a reference on GObject instances * /
+closure-&gt;label = g_object_ref (my_application-&gt;label);
+closure-&gt;text = g_strdup (processed_text_to_update_the_label);
+
+clutter_threads_add_idle_full (G_PRIORITY_HIGH_IDLE,
+update_ui,
+closure,
+NULL);
+]|
+
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="priority">
+<parameter_description> the priority of the timeout source. Typically this will be in the
+range between #G_PRIORITY_DEFAULT_IDLE and #G_PRIORITY_HIGH_IDLE
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="func">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="node">
-<parameter_description> the value of the member
+<parameter name="data">
+<parameter_description> data to pass to the function
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> functio to call when the idle source is removed
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ID (greater than 0) of the event source.
+
+</return>
 </function>
 
-<function name="clutter_actor_box_contains">
+<function name="clutter_threads_add_repaint_func">
 <description>
-Checks whether a point with @x, @y coordinates is contained
-withing @box
+Adds a function to be called whenever Clutter is processing a new
+frame.
+
+If the function returns %FALSE it is automatically removed from the
+list of repaint functions and will not be called again.
+
+This function is guaranteed to be called from within the same thread
+that called clutter_main(), and while the Clutter lock is being held;
+the function will be called within the main loop, so it is imperative
+that it does not block, otherwise the frame time budget may be lost.
+
+A repaint function is useful to ensure that an update of the scenegraph
+is performed before the scenegraph is repainted; for instance, uploading
+a frame from a video into a #ClutterTexture. By default, a repaint
+function added using this function will be invoked prior to the frame
+being processed.
+
+Adding a repaint function does not automatically ensure that a new
+frame will be queued.
+
+When the repaint function is removed (either because it returned %FALSE
+or because clutter_threads_remove_repaint_func() has been called) the
+@notify function will be called, if any is set.
+
+See also: clutter_threads_add_repaint_func_full()
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterActorBox
+<parameter name="func">
+<parameter_description> the function to be called within the paint cycle
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> X coordinate of the point
+<parameter name="data">
+<parameter_description> data to be passed to the function, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> Y coordinate of the point
+<parameter name="notify">
+<parameter_description> function to be called when removing the repaint
+function, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the point is contained by the #ClutterActorBox
+<return> the ID (greater than 0) of the repaint function. You
+can use the returned integer to remove the repaint function by
+calling clutter_threads_remove_repaint_func().
 
 </return>
 </function>
 
-<function name="clutter_timeline_get_delay">
+<function name="clutter_threads_add_repaint_func_full">
 <description>
-Retrieves the delay set using clutter_timeline_set_delay().
+Adds a function to be called whenever Clutter is processing a new
+frame.
 
-Since: 0.4
+If the function returns %FALSE it is automatically removed from the
+list of repaint functions and will not be called again.
 
-</description>
-<parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
-</parameter_description>
-</parameter>
-</parameters>
-<return> the delay in milliseconds.
+This function is guaranteed to be called from within the same thread
+that called clutter_main(), and while the Clutter lock is being held;
+the function will be called within the main loop, so it is imperative
+that it does not block, otherwise the frame time budget may be lost.
 
-</return>
-</function>
+A repaint function is useful to ensure that an update of the scenegraph
+is performed before the scenegraph is repainted; for instance, uploading
+a frame from a video into a #ClutterTexture. The @flags passed to this
+function will determine the section of the frame processing that will
+result in @func being called.
 
-<function name="clutter_container_lower_child">
-<description>
-Lowers @actor to @sibling level, in the depth ordering.
+Adding a repaint function does not automatically ensure that a new
+frame will be queued.
 
-Since: 0.6
+When the repaint function is removed (either because it returned %FALSE
+or because clutter_threads_remove_repaint_func() has been called) the
+@notify function will be called, if any is set.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
+<parameter name="flags">
+<parameter_description> flags for the repaint function
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> the actor to raise
+<parameter name="func">
+<parameter_description> the function to be called within the paint cycle
 </parameter_description>
 </parameter>
-<parameter name="sibling">
-<parameter_description> the sibling to lower to, or %NULL to lower to the bottom
+<parameter name="data">
+<parameter_description> data to be passed to the function, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> function to be called when removing the repaint
+function, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ID (greater than 0) of the repaint function. You
+can use the returned integer to remove the repaint function by
+calling clutter_threads_remove_repaint_func().
+
+</return>
 </function>
 
-<function name="clutter_score_is_playing">
+<function name="clutter_threads_add_timeout">
 <description>
-Query state of a #ClutterScore instance.
+Simple wrapper around clutter_threads_add_timeout_full().
 
-Since: 0.6
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> A #ClutterScore
+<parameter name="interval">
+<parameter_description> the time between calls to the function, in milliseconds
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> function to call
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to the function
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if score is currently playing
+<return> the ID (greater than 0) of the event source.
 
 </return>
 </function>
 
-<function name="clutter_bin_layout_get_alignment">
+<function name="clutter_threads_add_timeout_full">
 <description>
-Retrieves the horizontal and vertical alignment policies for
-a child of @self
+Sets a function to be called at regular intervals holding the Clutter
+threads lock, with the given priority. The function is called repeatedly
+until it returns %FALSE, at which point the timeout is automatically
+removed and the function will not be called again. The @notify function
+is called when the timeout is removed.
 
-If @child is %NULL the default alignment policies will be returned
-instead
+The first call to the function will be at the end of the first @interval.
 
-Since: 1.2
+It is important to note that, due to how the Clutter main loop is
+implemented, the timing will not be accurate and it will not try to
+&quot;keep up&quot; with the interval.
+
+See also clutter_threads_add_idle_full().
+
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBinLayout
+<parameter name="priority">
+<parameter_description> the priority of the timeout source. Typically this will be in the
+range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.
 </parameter_description>
 </parameter>
-<parameter name="child">
-<parameter_description> a child of @container
+<parameter name="interval">
+<parameter_description> the time between calls to the function, in milliseconds
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="x_align">
-<parameter_description> return location for the horizontal
-alignment policy
+<parameter name="data">
+<parameter_description> data to pass to the function
 </parameter_description>
 </parameter>
-<parameter name="y_align">
-<parameter_description> return location for the vertical
-alignment policy
+<parameter name="notify">
+<parameter_description> function to call when the timeout source is removed
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the ID (greater than 0) of the event source.
+
+</return>
 </function>
 
-<function name="clutter_rectangle_set_border_width">
+<function name="clutter_threads_enter">
 <description>
-Sets the width (in pixel) of the border used by @rectangle.
-A @width of 0 will unset the border.
+Locks the Clutter thread lock.
 
-Since: 0.2
+Since: 0.4
+
+Deprecated: 1.12: This function should not be used by application
+code; marking critical sections is not portable on various
+platforms. Instead of acquiring the Clutter lock, schedule UI
+updates from the main loop using clutter_threads_add_idle() or
+clutter_threads_add_timeout().
 
 </description>
 <parameters>
-<parameter name="rectangle">
-<parameter_description> a #ClutterRectangle
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> the width of the border
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_realize">
+<function name="clutter_threads_init">
 <description>
-Creates any underlying graphics resources needed by the actor to be
-displayed.
-
-Realization means the actor is now tied to a specific rendering context
-(that is, a specific toplevel stage).
+Initialises the Clutter threading mechanism, so that Clutter API can be
+called by multiple threads, using clutter_threads_enter() and
+clutter_threads_leave() to mark the critical sections.
 
-This function does nothing if the actor is already realized.
+You must call g_thread_init() before this function.
 
-Because a realized actor must have realized parent actors, calling
-clutter_actor_realize() will also realize all parents of the actor.
+This function must be called before clutter_init().
 
-This function does not realize child actors, except in the special
-case that realizing the stage, when the stage is visible, will
-suddenly map (and thus realize) the children of the stage.
+It is safe to call this function multiple times.
 
-</description>
-<parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
-</parameter_description>
-</parameter>
-</parameters>
-<return></return>
-</function>
+Since: 0.4
 
-<function name="clutter_stage_show_cursor">
-<description>
-Shows the cursor on the stage window
+Deprecated: 1.10: This function does not do anything. Threading support
+is initialized when Clutter is initialized.
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_hide_all">
+<function name="clutter_threads_leave">
 <description>
-Calls clutter_actor_hide() on all child actors (if any).
+Unlocks the Clutter thread lock.
 
-Since: 0.2
+Since: 0.4
+
+Deprecated: 1.12: This function should not be used by application
+code; marking critical sections is not portable on various
+platforms. Instead of acquiring the Clutter lock, schedule UI
+updates from the main loop using clutter_threads_add_idle() or
+clutter_threads_add_timeout().
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_timeline_skip">
+<function name="clutter_threads_remove_repaint_func">
 <description>
-Advance timeline by the requested time in milliseconds
+Removes the repaint function with @handle_id as its id
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> A #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="msecs">
-<parameter_description> Amount of time to skip
+<parameter name="handle_id">
+<parameter_description> an unsigned integer greater than zero
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_binding_pool_activate">
+<function name="clutter_threads_set_lock_functions">
 <description>
-Activates the callback associated to the action that is
-bound to the @key_val and @modifiers pair.
+Allows the application to replace the standard method that
+Clutter uses to protect its data structures. Normally, Clutter
+creates a single #GMutex that is locked by clutter_threads_enter(),
+and released by clutter_threads_leave(); using this function an
+application provides, instead, a function @enter_fn that is
+called by clutter_threads_enter() and a function @leave_fn that is
+called by clutter_threads_leave().
 
-The callback has the following signature:
+The functions must provide at least same locking functionality
+as the default implementation, but can also do extra application
+specific processing.
 
-|[
-void (* callback) (GObject             *gobject,
-const gchar         *action_name,
-guint                key_val,
-ClutterModifierType  modifiers,
-gpointer             user_data);
-]|
+As an example, consider an application that has its own recursive
+lock that when held, holds the Clutter lock as well. When Clutter
+unlocks the Clutter lock when entering a recursive main loop, the
+application must temporarily release its lock as well.
 
-Where the #GObject instance is @gobject and the user data
-is the one passed when installing the action with
-clutter_binding_pool_install_action().
+Most threaded Clutter apps won't need to use this method.
 
-If the action bound to the @key_val, @modifiers pair has been
-blocked using clutter_binding_pool_block_action(), the callback
-will not be invoked, and this function will return %FALSE.
+This method must be called before clutter_init(), and cannot
+be called multiple times.
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> the key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> bitmask for the modifiers
+<parameter name="enter_fn">
+<parameter_description> function called when aquiring the Clutter main lock
 </parameter_description>
 </parameter>
-<parameter name="gobject">
-<parameter_description> a #GObject
+<parameter name="leave_fn">
+<parameter_description> function called when releasing the Clutter main lock
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if an action was found and was activated
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_behaviour_get_n_actors">
+<function name="clutter_timeline_add_marker">
 <description>
-Gets the number of actors this behaviour is applied too.
-
-Since: 0.2
-
-</description>
-<parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
-</parameter_description>
-</parameter>
-</parameters>
-<return> The number of applied actors 
+Adds a named marker that will be hit when the timeline has reached
+the specified @progress.
 
-</return>
-</function>
+Markers are unique string identifiers for a given position on the
+timeline. Once @timeline reaches the given @progress of its duration,
+if will emit a ::marker-reached signal for each marker attached to
+that particular point.
 
-<function name="clutter_animation_set_mode">
-<description>
-Sets the animation @mode of @animation. The animation @mode is
-a logical id, either coming from the #ClutterAnimationMode enumeration
-or the return value of clutter_alpha_register_func().
+A marker can be removed with clutter_timeline_remove_marker(). The
+timeline can be advanced to a marker using
+clutter_timeline_advance_to_marker().
 
-This function will also set #ClutterAnimation:alpha if needed.
+See also: clutter_timeline_add_marker_at_time()
 
-Since: 1.0
+Since: 1.14
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> an animation mode logical id
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-</parameters>
-<return></return>
-</function>
-
-<function name="clutter_animation_get_interval">
-<description>
-Retrieves the #ClutterInterval associated to @property_name
-inside @animation.
-
-Since: 1.0
-
-</description>
-<parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="marker_name">
+<parameter_description> the unique name for this marker
 </parameter_description>
 </parameter>
-<parameter name="property_name">
-<parameter_description> name of the property
+<parameter name="progress">
+<parameter_description> the normalized value of the position of the martke
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterInterval or %NULL if no
-property with the same name was found. The returned interval is
-owned by the #ClutterAnimation and should not be unreferenced
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_get_duration">
+<function name="clutter_timeline_add_marker_at_time">
 <description>
-Retrieves the current duration of an animator
-
-Since: 1.2
-
-</description>
-<parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
-</parameter_description>
-</parameter>
-</parameters>
-<return> the duration of the animation, in milliseconds
+Adds a named marker that will be hit when the timeline has been
+running for @msecs milliseconds.
 
-</return>
-</function>
+Markers are unique string identifiers for a given position on the
+timeline. Once @timeline reaches the given @msecs, it will emit
+a ::marker-reached signal for each marker attached to that position.
 
-<function name="json_object_set_double_member">
-<description>
-Convenience function for setting a floating point @value
-of @member_name inside @object.
+A marker can be removed with clutter_timeline_remove_marker(). The
+timeline can be advanced to a marker using
+clutter_timeline_advance_to_marker().
 
-See also: json_object_set_member()
+See also: clutter_timeline_add_marker()
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="marker_name">
+<parameter_description> the unique name for this marker
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the member
+<parameter name="msecs">
+<parameter_description> position of the marker in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_connect_signals_full">
+<function name="clutter_timeline_advance">
 <description>
-Connects all the signals defined into a UI definition file to their
-handlers.
-
-This function allows to control how the signal handlers are
-going to be connected to their respective signals. It is meant
-primarily for language bindings to allow resolving the function
-names using the native API.
-
-Applications should use clutter_script_connect_signals().
+Advance timeline to the requested point. The point is given as a
+time in milliseconds since the timeline started.
 
-Since: 0.6
+&lt;note&gt;&lt;para&gt;The @timeline will not emit the #ClutterTimeline::new-frame
+signal for the given time. The first ::new-frame signal after the call to
+clutter_timeline_advance() will be emit the skipped markers.
+&lt;/para&gt;&lt;/note&gt;
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> signal connection function
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="user_data">
-<parameter_description> data to be passed to the signal handlers, or %NULL
+<parameter name="msecs">
+<parameter_description> Time to advance to
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_model_filter_iter">
+<function name="clutter_timeline_advance_to_marker">
 <description>
-Checks whether the row pointer by @iter should be filtered or not using
-the filtering function set on @model.
+Advances @timeline to the time of the given @marker_name.
 
-This function should be used only by subclasses of #ClutterModel.
+&lt;note&gt;&lt;para&gt;Like clutter_timeline_advance(), this function will not
+emit the #ClutterTimeline::new-frame for the time where @marker_name
+is set, nor it will emit #ClutterTimeline::marker-reached for
+@marker_name.&lt;/para&gt;&lt;/note&gt;
 
-Since: 0.6
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="iter">
-<parameter_description> the row to filter
+<parameter name="marker_name">
+<parameter_description> the name of the marker
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the row should be displayed,
-%FALSE otherwise
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_get_key_unicode">
+<function name="clutter_timeline_clone">
 <description>
-Retrieves the unicode value for the key that caused @keyev.
+Create a new #ClutterTimeline instance which has property values
+matching that of supplied timeline. The cloned timeline will not
+be started and will not be positioned to the current position of
+the original @timeline: you will have to start it with clutter_timeline_start().
+
+&lt;note&gt;&lt;para&gt;The only cloned properties are:&lt;/para&gt;
+&lt;itemizedlist&gt;
+&lt;listitem&gt;&lt;simpara&gt;#ClutterTimeline:duration&lt;/simpara&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;simpara&gt;#ClutterTimeline:loop&lt;/simpara&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;simpara&gt;#ClutterTimeline:delay&lt;/simpara&gt;&lt;/listitem&gt;
+&lt;listitem&gt;&lt;simpara&gt;#ClutterTimeline:direction&lt;/simpara&gt;&lt;/listitem&gt;
+&lt;/itemizedlist&gt;&lt;/note&gt;
+
+Since: 0.4
 
+Deprecated: 1.10: Use clutter_timeline_new() or g_object_new()
+instead
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> A #ClutterKeyEvent
+<parameter name="timeline">
+<parameter_description> #ClutterTimeline to duplicate.
 </parameter_description>
 </parameter>
 </parameters>
-<return> The unicode value representing the key
+<return> a new #ClutterTimeline, cloned
+from @timeline
+
 </return>
 </function>
 
-<function name="clutter_container_destroy_child_meta">
+<function name="clutter_timeline_get_auto_reverse">
 <description>
-Destroys the #ClutterChildMeta wrapping @actor inside the
-@container, if any.
+Retrieves the value set by clutter_timeline_set_auto_reverse().
 
-This function is only useful when removing a #ClutterActor to
-a #ClutterContainer implementation outside of the
-#ClutterContainer::add() virtual function implementation.
-
-Applications should not call this function.
-
-Since: 1.2
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the timeline should automatically reverse, and
+%FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_actor_get_transformed_position">
+<function name="clutter_timeline_get_cubic_bezier_progress">
 <description>
-Gets the absolute position of an actor, in pixels relative to the stage.
+Retrieves the control points for the cubic bezier progress mode.
 
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> return location for the X coordinate, or %NULL
+<parameter name="c_1">
+<parameter_description> return location for the first control
+point of the cubic bezier, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> return location for the Y coordinate, or %NULL
+<parameter name="c_2">
+<parameter_description> return location for the second control
+point of the cubic bezier, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the @timeline is using a cubic bezier progress
+more, and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_timeline_advance">
+<function name="clutter_timeline_get_current_repeat">
 <description>
-Advance timeline to the requested point. The point is given as a
-time in milliseconds since the timeline started.
+Retrieves the current repeat for a timeline.
 
-&lt;note&gt;&lt;para&gt;The @timeline will not emit the #ClutterTimeline::new-frame
-signal for the given time. The first ::new-frame signal after the call to
-clutter_timeline_advance() will be emit the skipped markers.
-&lt;/para&gt;&lt;/note&gt;
+Repeats start at 0.
+
+Since: 1.10
 
 </description>
 <parameters>
 <parameter name="timeline">
-<parameter_description> A #ClutterTimeline
-</parameter_description>
-</parameter>
-<parameter name="msecs">
-<parameter_description> Time to advance to
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the current repeat
+
+</return>
 </function>
 
-<function name="clutter_text_get_use_markup">
+<function name="clutter_timeline_get_delay">
 <description>
-Retrieves whether the contents of the #ClutterText actor should be
-parsed for the Pango text markup.
+Retrieves the delay set using clutter_timeline_set_delay().
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the contents will be parsed for markup
+<return> the delay in milliseconds.
 
 </return>
 </function>
 
-<function name="clutter_model_foreach">
+<function name="clutter_timeline_get_delta">
 <description>
-Calls @func for each row in the model. 
+Retrieves the amount of time elapsed since the last
+ClutterTimeline::new-frame signal.
+
+This function is only useful inside handlers for the ::new-frame
+signal, and its behaviour is undefined if the timeline is not
+playing.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> a #ClutterModelForeachFunc
-</parameter_description>
-</parameter>
-<parameter name="user_data">
-<parameter_description> user data to pass to @func
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the amount of time in milliseconds elapsed since the
+last frame
+
+</return>
 </function>
 
-<function name="clutter_text_get_selection">
+<function name="clutter_timeline_get_direction">
 <description>
-Retrieves the currently selected text.
+Retrieves the direction of the timeline set with
+clutter_timeline_set_direction().
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the currently
-selected text, or %NULL. Use g_free() to free the returned
-string.
+<return> the direction of the timeline
 
 </return>
 </function>
 
-<function name="json_generator_to_data">
+<function name="clutter_timeline_get_duration">
 <description>
-Generates a JSON data stream from @generator and returns it as a
-buffer.
+Retrieves the duration of a #ClutterTimeline in milliseconds.
+See clutter_timeline_set_duration().
 
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="generator">
-<parameter_description> a #JsonGenerator
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the length of the returned buffer, or %NULL
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated buffer holding a JSON data stream. Use
-g_free() to free the allocated resources.
+<return> the duration of the timeline, in milliseconds.
+
 </return>
 </function>
 
-<function name="clutter_glx_texture_pixmap_new_with_pixmap">
+<function name="clutter_timeline_get_duration_hint">
 <description>
-Creates a new #ClutterGLXTexturePixmap for @pixmap
+Retrieves the full duration of the @timeline, taking into account the
+current value of the #ClutterTimeline:repeat-count property.
 
-Since: 0.8
+If the #ClutterTimeline:repeat-count property is set to -1, this function
+will return %G_MAXINT64.
+
+The returned value is to be considered a hint, and it's only valid
+as long as the @timeline hasn't been changed.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="pixmap">
-<parameter_description> the X Pixmap to which this texture should be bound
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> A new #ClutterGLXTexturePixmap bound to the given X Pixmap
+<return> the full duration of the #ClutterTimeline
 
 </return>
 </function>
 
-<function name="clutter_get_option_group">
+<function name="clutter_timeline_get_elapsed_time">
 <description>
-Returns a #GOptionGroup for the command line arguments recognized
-by Clutter. You should add this group to your #GOptionContext with
-g_option_context_add_group(), if you are using g_option_context_parse()
-to parse your commandline arguments.
-
-Calling g_option_context_parse() with Clutter's #GOptionGroup will result
-in Clutter's initialization. That is, the following code:
-
-|[
-g_option_context_set_main_group (context, clutter_get_option_group ());
-res = g_option_context_parse (context, &amp;argc, &amp;argc, NULL);
-]|
+Request the current time position of the timeline.
 
-is functionally equivalent to:
 
-|[
-clutter_init (&amp;argc, &amp;argv);
-]|
+</description>
+<parameters>
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
+</parameter_description>
+</parameter>
+</parameters>
+<return> current elapsed time in milliseconds.
+</return>
+</function>
 
-After g_option_context_parse() on a #GOptionContext containing the
-Clutter #GOptionGroup has returned %TRUE, Clutter is guaranteed to be
-initialized.
+<function name="clutter_timeline_get_loop">
+<description>
+Gets whether @timeline is looping
 
-Since: 0.2
+Deprecated: 1.10: Use clutter_timeline_get_repeat_count() instead.
 
 </description>
 <parameters>
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
 </parameters>
-<return> a #GOptionGroup for the commandline arguments
-recognized by Clutter
+<return> %TRUE if the timeline is looping
 
 </return>
 </function>
 
-<function name="clutter_stage_set_color">
+<function name="clutter_timeline_get_progress">
 <description>
-Sets the stage color.
+The position of the timeline in a normalized [-1, 2] interval.
+
+The return value of this function is determined by the progress
+mode set using clutter_timeline_set_progress_mode(), or by the
+progress function set using clutter_timeline_set_progress_func().
+
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
-</parameter_description>
-</parameter>
-<parameter name="color">
-<parameter_description> A #ClutterColor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the normalized current position in the timeline.
+
+</return>
 </function>
 
-<function name="json_array_add_double_element">
+<function name="clutter_timeline_get_progress_mode">
 <description>
-Conveniently adds a floating point @value into @array
+Retrieves the progress mode set using clutter_timeline_set_progress_mode()
+or clutter_timeline_set_progress_func().
 
-See also: json_array_add_element(), json_node_set_double()
-
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> a floating point value
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #ClutterAnimationMode
+
+</return>
 </function>
 
-<function name="clutter_input_device_get_pointer_stage">
+<function name="clutter_timeline_get_repeat_count">
 <description>
-Retrieves the #ClutterStage underneath the pointer of @device
+Retrieves the number set using clutter_timeline_set_repeat_count().
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="device">
-<parameter_description> a #ClutterInputDevice of type %CLUTTER_POINTER_DEVICE
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the #ClutterStage or %NULL
+<return> the number of repeats
 
 </return>
 </function>
 
-<function name="json_object_set_boolean_member">
+<function name="clutter_timeline_get_step_progress">
 <description>
-Convenience function for setting a boolean @value of
-@member_name inside @object.
+Retrieves the parameters of the step progress mode used by @timeline.
 
-See also: json_object_set_member()
-
-Since: 0.8
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="n_steps">
+<parameter_description> return location for the number of steps, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> the value of the member
+<parameter name="step_mode">
+<parameter_description> return location for the value change policy,
+or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the @timeline is using a step progress
+mode, and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_init">
+<function name="clutter_timeline_has_marker">
 <description>
-It will initialise everything needed to operate with Clutter and
-parses some standard command line options. @argc and @argv are
-adjusted accordingly so your own code will never see those standard
-arguments.
+Checks whether @timeline has a marker set with the given name.
 
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="argc">
-<parameter_description> The number of arguments in @argv
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="argv">
-<parameter_description> A pointer to an array
-of arguments.
+<parameter name="marker_name">
+<parameter_description> the name of the marker
 </parameter_description>
 </parameter>
 </parameters>
-<return> 1 on success, &lt; 0 on failure.
+<return> %TRUE if the marker was found
+
 </return>
 </function>
 
-<function name="clutter_media_get_playing">
+<function name="clutter_timeline_is_playing">
 <description>
-Retrieves the playing status of @media.
+Queries state of a #ClutterTimeline.
 
-Since: 0.2
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> A #ClutterMedia object
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if playing, %FALSE if stopped.
-
+<return> %TRUE if timeline is currently playing
 </return>
 </function>
 
-<function name="clutter_box_packv">
+<function name="clutter_timeline_list_markers">
 <description>
-Vector-based variant of clutter_box_pack(), intended for language
-bindings to use
+Retrieves the list of markers at time @msecs. If @msecs is a
+negative integer, all the markers attached to @timeline will be
+returned.
 
-Since: 1.2
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterBox
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="n_properties">
-<parameter_description> the number of properties to set
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="properties">
-<parameter_description> a vector
-containing the property names to set
+<parameter name="msecs">
+<parameter_description> the time to check, or -1
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a vector containing the property
-values to set
+<parameter name="n_markers">
+<parameter_description> the number of markers returned
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return>
+a newly allocated, %NULL terminated string array containing the names
+of the markers. Use g_strfreev() when done.
+
+</return>
 </function>
 
-<function name="clutter_binding_pool_new">
+<function name="clutter_timeline_new">
 <description>
-Creates a new #ClutterBindingPool that can be used to store
-key bindings for an actor. The @name must be a unique identifier
-for the binding pool, so that clutter_binding_pool_find() will
-be able to return the correct binding pool.
+Creates a new #ClutterTimeline with a duration of @msecs.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the binding pool
+<parameter name="msecs">
+<parameter_description> Duration of the timeline in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created binding pool with the given
-name. Use g_object_unref() when done.
+<return> the newly created #ClutterTimeline instance. Use
+g_object_unref() when done using it
 
 </return>
 </function>
 
-<function name="clutter_texture_set_repeat">
+<function name="clutter_timeline_pause">
 <description>
-Sets whether the @texture should repeat horizontally or
-vertically when the actor size is bigger than the image size
-
-Since: 1.0
+Pauses the #ClutterTimeline on current frame
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="repeat_x">
-<parameter_description> %TRUE if the texture should repeat horizontally
-</parameter_description>
-</parameter>
-<parameter name="repeat_y">
-<parameter_description> %TRUE if the texture should repeat vertically
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_ensure_viewport">
+<function name="clutter_timeline_remove_marker">
 <description>
-Ensures that the GL viewport is updated with the current
-stage window size.
-
-This function will queue a redraw of @stage.
-
-This function should not be called by applications; it is used
-when embedding a #ClutterStage into a toolkit with another
-windowing system, like GTK+.
+Removes @marker_name, if found, from @timeline.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="marker_name">
+<parameter_description> the name of the marker to remove
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_backend_set_font_name">
+<function name="clutter_timeline_rewind">
 <description>
-Sets the default font to be used by Clutter. The @font_name string
-must either be %NULL, which means that the font name from the
-default #ClutterBackend will be used; or be something that can
-be parsed by the pango_font_description_from_string() function.
-
-Since: 1.0
+Rewinds #ClutterTimeline to the first frame if its direction is
+%CLUTTER_TIMELINE_FORWARD and the last frame if it is
+%CLUTTER_TIMELINE_BACKWARD.
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
-</parameter_description>
-</parameter>
-<parameter name="font_name">
-<parameter_description> the name of the font
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_actors_foreach">
+<function name="clutter_timeline_set_auto_reverse">
 <description>
-Calls @func for every actor driven by @behave.
+Sets whether @timeline should reverse the direction after the
+emission of the #ClutterTimeline::completed signal.
 
-Since: 0.2
+Setting the #ClutterTimeline:auto-reverse property to %TRUE is the
+equivalent of connecting a callback to the #ClutterTimeline::completed
+signal and changing the direction of the timeline from that callback;
+for instance, this code:
+
+|[
+static void
+reverse_timeline (ClutterTimeline *timeline)
+{
+ClutterTimelineDirection dir = clutter_timeline_get_direction (timeline);
+
+if (dir == CLUTTER_TIMELINE_FORWARD)
+dir = CLUTTER_TIMELINE_BACKWARD;
+else
+dir = CLUTTER_TIMELINE_FORWARD;
+
+clutter_timeline_set_direction (timeline, dir);
+}
+...
+timeline = clutter_timeline_new (1000);
+clutter_timeline_set_repeat_count (timeline, -1);
+g_signal_connect (timeline, &quot;completed&quot;,
+G_CALLBACK (reverse_timeline),
+NULL);
+]|
+
+can be effectively replaced by:
+
+|[
+timeline = clutter_timeline_new (1000);
+clutter_timeline_set_repeat_count (timeline, -1);
+clutter_timeline_set_auto_reverse (timeline);
+]|
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
-</parameter_description>
-</parameter>
-<parameter name="func">
-<parameter_description> a function called for each actor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="data">
-<parameter_description> optional data to be passed to the function, or %NULL
+<parameter name="reverse">
+<parameter_description> %TRUE if the @timeline should reverse the direction
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_rotate_set_center">
+<function name="clutter_timeline_set_cubic_bezier_progress">
 <description>
-Sets the center of rotation. The coordinates are relative to the plane
-normal to the rotation axis set with clutter_behaviour_rotate_set_axis().
+Sets the #ClutterTimeline:progress-mode of @timeline
+to %CLUTTER_CUBIC_BEZIER, and sets the two control
+points for the cubic bezier.
 
-Since: 0.4
+The cubic bezier curve is between (0, 0) and (1, 1). The X coordinate
+of the two control points must be in the [ 0, 1 ] range, while the
+Y coordinate of the two control points can exceed this range.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="rotate">
-<parameter_description> a #ClutterBehaviourRotate
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> X axis center of rotation
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> Y axis center of rotation
+<parameter name="c_1">
+<parameter_description> the first control point for the cubic bezier
 </parameter_description>
 </parameter>
-<parameter name="z">
-<parameter_description> Z axis center of rotation
+<parameter name="c_2">
+<parameter_description> the second control point for the cubic bezier
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_grab_key_focus">
+<function name="clutter_timeline_set_delay">
 <description>
-Sets the key focus of the #ClutterStage including @self
-to this #ClutterActor.
+Sets the delay, in milliseconds, before @timeline should start.
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="msecs">
+<parameter_description> delay in milliseconds
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_x11_get_input_devices">
-<description>
-Retrieves a pointer to the list of input devices
-
-Deprecated: 1.2: Use clutter_device_manager_peek_devices() instead
-
-Since: 0.8
-
-
-</description>
-<parameters>
-</parameters>
-<return> a pointer to the internal list of input devices; the
-returned list is owned by Clutter and should not be modified or
-freed
-</return>
-</function>
-
-<function name="json_node_is_null">
+<function name="clutter_timeline_set_direction">
 <description>
-Checks whether @node is a %JSON_NODE_NULL
-
-&lt;note&gt;A null node is not the same as a %NULL #JsonNode&lt;/note&gt;
+Sets the direction of @timeline, either %CLUTTER_TIMELINE_FORWARD or
+%CLUTTER_TIMELINE_BACKWARD.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="direction">
+<parameter_description> the direction of the timeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the node is null
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_color_to_string">
+<function name="clutter_timeline_set_duration">
 <description>
-Returns a textual specification of @color in the hexadecimal form
-&lt;literal&gt;rrggbbaa&lt;/literal&gt;, where &lt;literal&gt;r&lt;/literal&gt;,
-&lt;literal&gt;g&lt;/literal&gt;, &lt;literal&gt;b&lt;/literal&gt; and &lt;literal&gt;a&lt;/literal&gt; are
-hex digits representing the red, green, blue and alpha components
-respectively.
+Sets the duration of the timeline, in milliseconds. The speed
+of the timeline depends on the ClutterTimeline:fps setting.
 
-Since: 0.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-</parameters>
-<return> a newly-allocated text string
-
-</return>
+<parameter name="msecs">
+<parameter_description> duration of the timeline in milliseconds
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
 </function>
 
-<function name="clutter_actor_show_all">
+<function name="clutter_timeline_set_loop">
 <description>
-Calls clutter_actor_show() on all children of an actor (if any).
+Sets whether @timeline should loop.
 
-Since: 0.2
+This function is equivalent to calling clutter_timeline_set_repeat_count()
+with -1 if @loop is %TRUE, and with 0 if @loop is %FALSE.
+
+Deprecated: 1.10: Use clutter_timeline_set_repeat_count() instead.
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="loop">
+<parameter_description> %TRUE for enable looping
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_shader_get_cogl_vertex_shader">
+<function name="clutter_timeline_set_progress_func">
 <description>
-Retrieves the underlying #CoglHandle for the vertex shader.
+Sets a custom progress function for @timeline. The progress function will
+be called by clutter_timeline_get_progress() and will be used to compute
+the progress value based on the elapsed time and the total duration of the
+timeline.
 
-Since: 1.0
+If @func is not %NULL, the #ClutterTimeline:progress-mode property will
+be set to %CLUTTER_CUSTOM_MODE.
+
+If @func is %NULL, any previously set progress function will be unset, and
+the #ClutterTimeline:progress-mode property will be set to %CLUTTER_LINEAR.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="func">
+<parameter_description> a progress function, or %NULL
+</parameter_description>
+</parameter>
+<parameter name="data">
+<parameter_description> data to pass to @func
+</parameter_description>
+</parameter>
+<parameter name="notify">
+<parameter_description> a function to be called when the progress function is removed
+or the timeline is disposed
 </parameter_description>
 </parameter>
 </parameters>
-<return> A #CoglHandle for the vertex shader, or %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_stage_new">
+<function name="clutter_timeline_set_progress_mode">
 <description>
-Creates a new, non-default stage. A non-default stage is a new
-top-level actor which can be used as another container. It works
-exactly like the default stage, but while clutter_stage_get_default()
-will always return the same instance, you will have to keep a pointer
-to any #ClutterStage returned by clutter_stage_create().
-
-The ability to support multiple stages depends on the current
-backend. Use clutter_feature_available() and
-%CLUTTER_FEATURE_STAGE_MULTIPLE to check at runtime whether a
-backend supports multiple stages.
+Sets the progress function using a value from the #ClutterAnimationMode
+enumeration. The @mode cannot be %CLUTTER_CUSTOM_MODE or bigger than
+%CLUTTER_ANIMATION_LAST.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
+</parameter_description>
+</parameter>
+<parameter name="mode">
+<parameter_description> the progress mode, as a #ClutterAnimationMode
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new stage, or %NULL if the default backend does
-not support multiple stages. Use clutter_actor_destroy() to
-programmatically close the returned stage.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_units_from_em_for_font">
+<function name="clutter_timeline_set_repeat_count">
 <description>
-Stores a value in em inside @units using @font_name
+Sets the number of times the @timeline should repeat.
 
-Since: 1.0
+If @count is 0, the timeline never repeats.
+
+If @count is -1, the timeline will always repeat until
+it's stopped.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
-</parameter_description>
-</parameter>
-<parameter name="font_name">
-<parameter_description> the font name and size
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="em">
-<parameter_description> em
+<parameter name="count">
+<parameter_description> the number of times the timeline should repeat
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_text_set_selection">
+<function name="clutter_timeline_set_step_progress">
 <description>
-Selects the region of text between @start_pos and @end_pos.
-
-This function changes the position of the cursor to match
-@start_pos and the selection bound to match @end_pos.
+Sets the #ClutterTimeline:progress-mode of the @timeline to %CLUTTER_STEPS
+and provides the parameters of the step function.
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="timeline">
+<parameter_description> a #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="start_pos">
-<parameter_description> start of the selection, in characters
+<parameter name="n_steps">
+<parameter_description> the number of steps
 </parameter_description>
 </parameter>
-<parameter name="end_pos">
-<parameter_description> end of the selection, in characters
+<parameter name="step_mode">
+<parameter_description> whether the change should happen at the start
+or at the end of the step
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_device_manager_get_device">
+<function name="clutter_timeline_skip">
 <description>
-Retrieves the #ClutterInputDevice with the given @device_id
-
-Since: 1.2
+Advance timeline by the requested time in milliseconds
 
 </description>
 <parameters>
-<parameter name="device_manager">
-<parameter_description> a #ClutterDeviceManager
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
-<parameter name="device_id">
-<parameter_description> the integer id of a device
+<parameter name="msecs">
+<parameter_description> Amount of time to skip
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterInputDevice or %NULL. The
-returned device is owned by the #ClutterDeviceManager and should
-never be modified or freed
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_reactive">
+<function name="clutter_timeline_start">
 <description>
-Checks whether @actor is marked as reactive.
-
-Since: 0.6
+Starts the #ClutterTimeline playing.
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the actor is reactive
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_animator_compute_value">
+<function name="clutter_timeline_stop">
 <description>
-Compute the value for a managed property at a given progress.
-
-If the property is an ease-in property, the current value of the property
-on the object will be used as the starting point for computation.
-
-Since: 1.2
+Stops the #ClutterTimeline and moves to frame 0
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
-</parameter_description>
-</parameter>
-<parameter name="object">
-<parameter_description> a #GObject
-</parameter_description>
-</parameter>
-<parameter name="property_name">
-<parameter_description> the name of the property on object to check
-</parameter_description>
-</parameter>
-<parameter name="progress">
-<parameter_description> a value between 0.0 and 1.0
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> an initialized value to store the computed result
+<parameter name="timeline">
+<parameter_description> A #ClutterTimeline
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the computation yields has a value, otherwise (when
-an error occurs or the progress is before any of the keys) %FALSE is
-returned and the #GValue is left untouched
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_allocate_available_size">
+<function name="clutter_timeout_pool_add">
 <description>
-Allocates @self taking into account the #ClutterActor&lt;!-- --&gt;'s
-preferred size, but limiting it to the maximum available width
-and height provided.
-
-This function will do the right thing when dealing with the
-actor's request mode.
-
-The implementation of this function is equivalent to:
-
-|[
-if (request_mode == CLUTTER_REQUEST_HEIGHT_FOR_WIDTH)
-{
-clutter_actor_get_preferred_width (self, available_height,
-&amp;min_width,
-&amp;natural_width);
-width = CLAMP (natural_width, min_width, available_width);
-
-clutter_actor_get_preferred_height (self, width,
-&amp;min_height,
-&amp;natural_height);
-height = CLAMP (natural_height, min_height, available_height);
-}
-else
-{
-clutter_actor_get_preferred_height (self, available_width,
-&amp;min_height,
-&amp;natural_height);
-height = CLAMP (natural_height, min_height, available_height);
-
-clutter_actor_get_preferred_width (self, height,
-&amp;min_width,
-&amp;natural_width);
-width = CLAMP (natural_width, min_width, available_width);
-}
+Sets a function to be called at regular intervals, and puts it inside
+the @pool. The function is repeatedly called until it returns %FALSE,
+at which point the timeout is automatically destroyed and the function
+won't be called again. If @notify is not %NULL, the @notify function
+will be called. The first call to @func will be at the end of @interval.
 
-box.x1 = x; box.y1 = y;
-box.x2 = box.x1 + available_width;
-box.y2 = box.y1 + available_height;
-clutter_actor_allocate (self, &amp;box, flags);
-]|
+Since Clutter 0.8 this will try to compensate for delays. For
+example, if @func takes half the interval time to execute then the
+function will be called again half the interval time after it
+finished. Before version 0.8 it would not fire until a full
+interval after the function completes so the delay between calls
+would be @interval * 1.5. This function does not however try to
+invoke the function multiple times to catch up missing frames if
+@func takes more than @interval ms to execute.
 
-This function can be used by fluid layout managers to allocate
-an actor's preferred size without making it bigger than the area
-available for the container.
+Since: 0.4
 
-Since: 1.0
+Deprecated: 1.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="pool">
+<parameter_description> a #ClutterTimeoutPool
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> the actor's X coordinate
+<parameter name="fps">
+<parameter_description> the time between calls to the function, in frames per second
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> the actor's Y coordinate
+<parameter name="func">
+<parameter_description> function to call
 </parameter_description>
 </parameter>
-<parameter name="available_width">
-<parameter_description> the maximum available width, or -1 to use the
-actor's natural width
+<parameter name="data">
+<parameter_description> data to pass to the function, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="available_height">
-<parameter_description> the maximum available height, or -1 to use the
-actor's natural height
+<parameter name="notify">
+<parameter_description> function to call when the timeout is removed, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="flags">
-<parameter_description> flags controlling the allocation
+</parameters>
+<return> the ID (greater than 0) of the timeout inside the pool.
+Use clutter_timeout_pool_remove() to stop the timeout.
+
+</return>
+</function>
+
+<function name="clutter_timeout_pool_new">
+<description>
+Creates a new timeout pool source. A timeout pool should be used when
+multiple timeout functions, running at the same priority, are needed and
+the g_timeout_add() API might lead to starvation of the time slice of
+the main loop. A timeout pool allocates a single time slice of the main
+loop and runs every timeout function inside it. The timeout pool is
+always sorted, so that the extraction of the next timeout function is
+a constant time operation.
+
+Since: 0.4
+
+Deprecated: 1.6
+
+</description>
+<parameters>
+<parameter name="priority">
+<parameter_description> the priority of the timeout pool. Typically this will
+be #G_PRIORITY_DEFAULT
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterTimeoutPool. The created pool
+is owned by the GLib default context and will be automatically
+destroyed when the context is destroyed. It is possible to force
+the destruction of the timeout pool using g_source_destroy()
+
+</return>
 </function>
 
-<function name="clutter_model_prependv">
+<function name="clutter_timeout_pool_remove">
 <description>
-Creates and prepends a new row to the #ClutterModel, setting the row
-values for the given @columns upon creation.
+Removes a timeout function with @id_ from the timeout pool. The id
+is the same returned when adding a function to the timeout pool with
+clutter_timeout_pool_add().
 
-Since: 0.6
+Since: 0.4
+
+Deprecated: 1.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="n_columns">
-<parameter_description> the number of columns and values to set
-</parameter_description>
-</parameter>
-<parameter name="columns">
-<parameter_description> a vector containing the columns to set
+<parameter name="pool">
+<parameter_description> a #ClutterTimeoutPool
 </parameter_description>
 </parameter>
-<parameter name="values">
-<parameter_description> a vector containing the values for the cells
+<parameter name="id_">
+<parameter_description> the id of the timeout to remove
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_event_get_coords">
+<function name="clutter_transition_get_animatable">
 <description>
-Retrieves the coordinates of @event and puts them into @x and @y.
+Retrieves the #ClutterAnimatable set using clutter_transition_set_animatable().
 
-Since: 0.4
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> return location for the X coordinate
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> return location for the Y coordinate
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a #ClutterAnimatable, or %NULL; the returned
+animatable is owned by the #ClutterTransition, and it should not be freed
+directly.
+
+</return>
 </function>
 
-<function name="clutter_container_get_child_meta">
+<function name="clutter_transition_get_interval">
 <description>
-Retrieves the #ClutterChildMeta which contains the data about the
-@container specific state for @actor.
+Retrieves the interval set using clutter_transition_set_interval()
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor that is a child of @container.
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterChildMeta for the @actor child
-of @container or %NULL if the specifiec actor does not exist or the
-container is not configured to provide #ClutterChildMeta&lt;!-- --&gt;s
+<return> a #ClutterInterval, or %NULL; the returned
+interval is owned by the #ClutterTransition and it should not be freed
+directly
 
 </return>
 </function>
 
-<function name="clutter_interval_new_with_values">
+<function name="clutter_transition_get_remove_on_complete">
 <description>
-Creates a new #ClutterInterval of type @gtype, between @initial
-and @final.
-
-This function is useful for language bindings.
+Retrieves the value of the #ClutterTransition:remove-on-complete property.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="gtype">
-<parameter_description> the type of the values in the interval
-</parameter_description>
-</parameter>
-<parameter name="initial">
-<parameter_description> a #GValue holding the initial value of the interval
-</parameter_description>
-</parameter>
-<parameter name="final">
-<parameter_description> a #GValue holding the final value of the interval
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterInterval
+<return> %TRUE if the @transition should be detached when complete,
+and %FALSE otherwise
 
 </return>
 </function>
 
-<function name="clutter_text_new_full">
+<function name="clutter_transition_group_add_transition">
 <description>
-Creates a new #ClutterText actor, using @font_name as the font
-description; @text will be used to set the contents of the actor;
-and @color will be used as the color to render @text.
+Adds @transition to @group.
 
-This function is equivalent to calling clutter_text_new(),
-clutter_text_set_font_name(), clutter_text_set_text() and
-clutter_text_set_color().
+This function acquires a reference on @transition that will be released
+when calling clutter_transition_group_remove_transition().
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="font_name">
-<parameter_description> a string with a font description
-</parameter_description>
-</parameter>
-<parameter name="text">
-<parameter_description> the contents of the actor
+<parameter name="group">
+<parameter_description> a #ClutterTransitionGroup
 </parameter_description>
 </parameter>
-<parameter name="color">
-<parameter_description> the color to be used to render @text
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterText actor
+<return></return>
+</function>
+
+<function name="clutter_transition_group_new">
+<description>
+Creates a new #ClutterTransitionGroup instance.
+
+Since: 1.12
+
+</description>
+<parameters>
+</parameters>
+<return> the newly created #ClutterTransitionGroup. Use
+g_object_unref() when done to deallocate the resources it
+uses
 
 </return>
 </function>
 
-<function name="clutter_units_to_string">
+<function name="clutter_transition_group_remove_all">
 <description>
-Converts @units into a string
-
-See clutter_units_from_string() for the units syntax and for
-examples of output
+Removes all transitions from @group.
 
-&lt;note&gt;Fractional values are truncated to the second decimal
-position for em, mm and cm, and to the first decimal position for
-typographic points. Pixels are integers.&lt;/note&gt;
+This function releases the reference acquired when calling
+clutter_transition_group_add_transition().
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="group">
+<parameter_description> a #ClutterTransitionGroup
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing the encoded
-#ClutterUnits value. Use g_free() to free the string
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_set_x">
+<function name="clutter_transition_group_remove_transition">
 <description>
-Sets the actor's X coordinate, relative to its parent, in pixels.
+Removes @transition from @group.
 
-Overrides any layout manager and forces a fixed position for
-the actor.
+This function releases the reference acquired on @transition when
+calling clutter_transition_group_add_transition().
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="group">
+<parameter_description> a #ClutterTransitionGroup
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> the actor's position on the X axis
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_set_y">
+<function name="clutter_transition_set_animatable">
 <description>
-Sets the actor's Y coordinate, relative to its parent, in pixels.#
+Sets the #ClutterTransition:animatable property.
 
-Overrides any layout manager and forces a fixed position for
-the actor.
+The @transition will acquire a reference to the @animatable instance,
+and will call the #ClutterTransitionClass.attached() virtual function.
 
-Since: 0.6
+If an existing #ClutterAnimatable is attached to @transition, the
+reference will be released, and the #ClutterTransitionClass.detached()
+virtual function will be called.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> the actor's position on the Y axis
+<parameter name="animatable">
+<parameter_description> a #ClutterAnimatable, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_input_device_update_from_event">
+<function name="clutter_transition_set_from">
 <description>
-Forcibly updates the state of the @device using a #ClutterEvent
+Sets the initial value of the transition.
 
-This function should never be used by applications: it is meant
-for integration with embedding toolkits, like clutter-gtk
+This is a convenience function that will either create the
+#ClutterInterval used by @transition, or will update it if
+the #ClutterTransition:interval is already set.
 
-Embedding toolkits that disable the event collection inside Clutter
-need to use this function to update the state of input devices depending
-on a #ClutterEvent that they are going to submit to the event handling code
-in Clutter though clutter_do_event(). Since the input devices hold the state
-that is going to be used to fill in fields like the #ClutterButtonEvent
-click count, or to emit synthesized events like %CLUTTER_ENTER and
-%CLUTTER_LEAVE, it is necessary for embedding toolkits to also be
-responsible of updating the input device state.
+If @transition already has a #ClutterTransition:interval set,
+then @value must hold the same type, or a transformable type,
+as the interval's #ClutterInterval:value-type property.
 
-For instance, this might be the code to translate an embedding toolkit
-native motion notification into a Clutter #ClutterMotionEvent and ask
-Clutter to process it:
+This is a convenience function for the C API; language bindings
+should use clutter_transition_set_from_value() instead.
 
-|[
-ClutterEvent c_event;
+Since: 1.12
 
-translate_native_event_to_clutter (native_event, &amp;c_event);
+</description>
+<parameters>
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
+</parameter_description>
+</parameter>
+<parameter name="value_type">
+<parameter_description> the type of the value to set
+</parameter_description>
+</parameter>
+<parameter name="Varargs">
+<parameter_description> the initial value
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-clutter_do_event (&amp;c_event);
-]|
+<function name="clutter_transition_set_from_value">
+<description>
+Sets the initial value of the transition.
 
-Before letting clutter_do_event() process the event, it is necessary to call
-clutter_input_device_update_from_event():
+This is a convenience function that will either create the
+#ClutterInterval used by @transition, or will update it if
+the #ClutterTransition:interval is already set.
 
-|[
-ClutterEvent c_event;
-ClutterDeviceManager *manager;
-ClutterInputDevice *device;
+This function will copy the contents of @value, so it is
+safe to call g_value_unset() after it returns.
 
-translate_native_event_to_clutter (native_event, &amp;c_event);
+If @transition already has a #ClutterTransition:interval set,
+then @value must hold the same type, or a transformable type,
+as the interval's #ClutterInterval:value-type property.
 
-/ * get the device manager * /
-manager = clutter_device_manager_get_default ();
+This function is meant to be used by language bindings.
 
-/ * use the default Core Pointer that Clutter
-* backends register by default
-* /
-device = clutter_device_manager_get_core_device (manager, %CLUTTER_POINTER_DEVICE);
+Since: 1.12
 
-/ * update the state of the input device * /
-clutter_input_device_update_from_event (device, &amp;c_event, FALSE);
+</description>
+<parameters>
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue with the initial value of the transition
+</parameter_description>
+</parameter>
+</parameters>
+<return></return>
+</function>
 
-clutter_do_event (&amp;c_event);
-]|
+<function name="clutter_transition_set_interval">
+<description>
+Sets the #ClutterTransition:interval property using @interval.
 
-The @update_stage boolean argument should be used when the input device
-enters and leaves a #ClutterStage; it will use the #ClutterStage field
-of the passed @event to update the stage associated to the input device.
+The @transition will acquire a reference on the @interval, sinking
+the floating flag on it if necessary.
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="device">
-<parameter_description> a #ClutterInputDevice
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="interval">
+<parameter_description> a #ClutterInterval, or %NULL
 </parameter_description>
 </parameter>
-<parameter name="update_stage">
-<parameter_description> whether to update the #ClutterStage of the @device
-using the stage of the event
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_transition_set_remove_on_complete">
+<description>
+Sets whether @transition should be detached from the #ClutterAnimatable
+set using clutter_transition_set_animatable() when the
+#ClutterTimeline::completed signal is emitted.
+
+Since: 1.10
+
+</description>
+<parameters>
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
+</parameter_description>
+</parameter>
+<parameter name="remove_complete">
+<parameter_description> whether to detach @transition when complete
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_depth_new">
+<function name="clutter_transition_set_to">
 <description>
-Creates a new #ClutterBehaviourDepth which can be used to control
-the ClutterActor:depth property of a set of #ClutterActor&lt;!-- --&gt;s.
+Sets the final value of the transition.
 
-Since: 0.4
+This is a convenience function that will either create the
+#ClutterInterval used by @transition, or will update it if
+the #ClutterTransition:interval is already set.
+
+If @transition already has a #ClutterTransition:interval set,
+then @value must hold the same type, or a transformable type,
+as the interval's #ClutterInterval:value-type property.
+
+This is a convenience function for the C API; language bindings
+should use clutter_transition_set_to_value() instead.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha or %NULL
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
 </parameter_description>
 </parameter>
-<parameter name="depth_start">
-<parameter_description> initial value of the depth
+<parameter name="value_type">
+<parameter_description> the type of the value to set
 </parameter_description>
 </parameter>
-<parameter name="depth_end">
-<parameter_description> final value of the depth
+<parameter name="Varargs">
+<parameter_description> the final value
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created behaviour
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_binding_pool_find">
+<function name="clutter_transition_set_to_value">
 <description>
-Finds the #ClutterBindingPool with @name.
+Sets the final value of the transition.
 
-Since: 1.0
+This is a convenience function that will either create the
+#ClutterInterval used by @transition, or will update it if
+the #ClutterTransition:interval is already set.
+
+This function will copy the contents of @value, so it is
+safe to call g_value_unset() after it returns.
+
+If @transition already has a #ClutterTransition:interval set,
+then @value must hold the same type, or a transformable type,
+as the interval's #ClutterInterval:value-type property.
+
+This function is meant to be used by language bindings.
+
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="name">
-<parameter_description> the name of the binding pool to find
+<parameter name="transition">
+<parameter_description> a #ClutterTransition
+</parameter_description>
+</parameter>
+<parameter name="value">
+<parameter_description> a #GValue with the final value of the transition
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to the #ClutterBindingPool, or %NULL
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_model_get_n_columns">
+<function name="clutter_ungrab_keyboard">
 <description>
-Retrieves the number of columns inside @model.
+Removes an existing grab of the keyboard.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> a #ClutterModel
-</parameter_description>
-</parameter>
 </parameters>
-<return> the number of columns
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_scriptable_set_custom_property">
+<function name="clutter_ungrab_pointer">
 <description>
-Overrides the common properties setting. The underlying virtual
-function should be used when implementing custom properties.
+Removes an existing grab of the pointer.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="scriptable">
-<parameter_description> a #ClutterScriptable
-</parameter_description>
-</parameter>
-<parameter name="script">
-<parameter_description> the #ClutterScript creating the scriptable instance
-</parameter_description>
-</parameter>
-<parameter name="name">
-<parameter_description> the name of the property
-</parameter_description>
-</parameter>
-<parameter name="value">
-<parameter_description> the value of the property
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animator_start">
+<function name="clutter_ungrab_pointer_for_device">
 <description>
-Start the ClutterAnimator, this is a thin wrapper that rewinds
-and starts the animators current timeline.
+Removes an existing grab of the pointer events for device @id_.
 
-Since: 1.2
+Since: 0.8
+
+Deprecated: 1.10: Use clutter_input_device_ungrab() instead.
 
 </description>
 <parameters>
-<parameter name="animator">
-<parameter_description> a #ClutterAnimator
+<parameter name="id_">
+<parameter_description> a device id
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #ClutterTimeline that drives the animator.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_box_layout_get_alignment">
+<function name="clutter_unicode_to_keysym">
 <description>
-Retrieves the horizontal and vertical alignment policies for @actor
-as set using clutter_box_layout_pack() or clutter_box_layout_set_alignment()
+Convert from a ISO10646 character to a key symbol.
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @layout
-</parameter_description>
-</parameter>
-<parameter name="x_align">
-<parameter_description> return location for the horizontal alignment policy
-</parameter_description>
-</parameter>
-<parameter name="y_align">
-<parameter_description> return location for the vertical alignment policy
+<parameter name="wc">
+<parameter_description> a ISO10646 encoded character
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the corresponding Clutter key symbol, if one exists.
+or, if there is no corresponding symbol, wc | 0x01000000
+
+</return>
 </function>
 
-<function name="clutter_model_iter_is_last">
+<function name="clutter_units_copy">
 <description>
-Gets whether the iterator is at the end of the model to which it
-belongs.
+Copies @units
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="iter">
-<parameter_description> a #ClutterModelIter
+<parameter name="units">
+<parameter_description> the #ClutterUnits to copy
 </parameter_description>
 </parameter>
 </parameters>
-<return> #TRUE if @iter is the last iter in the filtered model.
+<return> the newly created copy of a
+#ClutterUnits structure. Use clutter_units_free() to free
+the allocated resources
 
 </return>
 </function>
 
-<function name="clutter_score_start">
+<function name="clutter_units_free">
 <description>
-Starts the score.
+Frees the resources allocated by @units
 
-Since: 0.6
+You should only call this function on a #ClutterUnits
+created using clutter_units_copy()
+
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> A #ClutterScore
+<parameter name="units">
+<parameter_description> the #ClutterUnits to free
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_media_set_playing">
+<function name="clutter_units_from_cm">
 <description>
-Starts or stops playing of @media.
+Stores a value in centimeters inside @units
 
-Since: 0.2
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="playing">
-<parameter_description> %TRUE to start playing
+<parameter name="cm">
+<parameter_description> centimeters
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_alpha_set_closure">
+<function name="clutter_units_from_em">
 <description>
-Sets the #GClosure used to compute the alpha value at each
-frame of the #ClutterTimeline bound to @alpha.
+Stores a value in em inside @units, using the default font
+name as returned by clutter_backend_get_font_name()
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> A #ClutterAlpha
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="closure">
-<parameter_description> A #GClosure
+<parameter name="em">
+<parameter_description> em
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_stage_read_pixels">
+<function name="clutter_units_from_em_for_font">
 <description>
-Makes a screenshot of the stage in RGBA 8bit data, returns a
-linear buffer with @width * 4 as rowstride.
-
-The alpha data contained in the returned buffer is driver-dependent,
-and not guaranteed to hold any sensible value.
+Stores a value in em inside @units using @font_name
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> A #ClutterStage
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="x">
-<parameter_description> x coordinate of the first pixel that is read from stage
+<parameter name="font_name">
+<parameter_description> the font name and size
 </parameter_description>
 </parameter>
-<parameter name="y">
-<parameter_description> y coordinate of the first pixel that is read from stage
+<parameter name="em">
+<parameter_description> em
 </parameter_description>
 </parameter>
-<parameter name="width">
-<parameter_description> Width dimention of pixels to be read, or -1 for the
-entire stage width
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_units_from_mm">
+<description>
+Stores a value in millimiters inside @units
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> Height dimention of pixels to be read, or -1 for the
-entire stage height
+<parameter name="mm">
+<parameter_description> millimeters
 </parameter_description>
 </parameter>
 </parameters>
-<return> a pointer to newly allocated memory with the buffer
-or %NULL if the read failed. Use g_free() on the returned data
-to release the resources it has allocated.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_value_set_shader_float">
+<function name="clutter_units_from_pixels">
 <description>
-Sets @floats as the contents of @value. The passed #GValue
-must have been initialized using %CLUTTER_TYPE_SHADER_FLOAT.
+Stores a value in pixels inside @units
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="size">
-<parameter_description> number of floating point values in @floats
+<parameter name="px">
+<parameter_description> pixels
 </parameter_description>
 </parameter>
-<parameter name="floats">
-<parameter_description> an array of floating point values
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_units_from_pt">
+<description>
+Stores a value in typographic points inside @units
+
+Since: 1.0
+
+</description>
+<parameters>
+<parameter name="units">
+<parameter_description> a #ClutterUnits
+</parameter_description>
+</parameter>
+<parameter name="pt">
+<parameter_description> typographic points
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_color_add">
-<description>
-Adds @a to @b and saves the resulting color inside @result.
+<function name="clutter_units_from_string">
+<description>
+Parses a value and updates @units with it
+
+A #ClutterUnits expressed in string should match:
+
+|[
+units: wsp* unit-value wsp* unit-name? wsp*
+unit-value: number
+unit-name: 'px' | 'pt' | 'mm' | 'em' | 'cm'
+number: digit+
+| digit* sep digit+
+sep: '.' | ','
+digit: '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
+wsp: (#0x20 | #0x9 | #0xA | #0xB | #0xC | #0xD)+
+]|
+
+For instance, these are valid strings:
+
+|[
+10 px
+5.1 em
+24 pt
+12.6 mm
+.3 cm
+]|
+
+While these are not:
+
+|[
+42 cats
+omg!1!ponies
+]|
+
+&lt;note&gt;&lt;para&gt;If no unit is specified, pixels are assumed.&lt;/para&gt;&lt;/note&gt;
 
-The alpha channel of @result is set as as the maximum value
-between the alpha channels of @a and @b.
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #ClutterColor
-</parameter_description>
-</parameter>
-<parameter name="b">
-<parameter_description> a #ClutterColor
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> return location for the result
+<parameter name="str">
+<parameter_description> the string to convert
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the string was successfully parsed,
+and %FALSE otherwise
+
+</return>
 </function>
 
-<function name="clutter_actor_set_reactive">
+<function name="clutter_units_get_unit_type">
 <description>
-Sets @actor as reactive. Reactive actors will receive events.
+Retrieves the unit type of the value stored inside @units
 
-Since: 0.6
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="reactive">
-<parameter_description> whether the actor should be reactive to events
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a unit type
+
+</return>
 </function>
 
-<function name="clutter_actor_box_clamp_to_pixel">
+<function name="clutter_units_get_unit_value">
 <description>
-Clamps the components of @box to the nearest integer
+Retrieves the value stored inside @units
 
-Since: 1.2
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> the #ClutterActorBox to clamp
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value stored inside a #ClutterUnits
+
+</return>
 </function>
 
-<function name="clutter_x11_set_display">
+<function name="clutter_units_to_pixels">
 <description>
-Sets the display connection Clutter should use; must be called
-before clutter_init(), clutter_init_with_args() or other functions
-pertaining Clutter's initialization process.
-
-If you are parsing the command line arguments by retrieving Clutter's
-#GOptionGroup with clutter_get_option_group() and calling
-g_option_context_parse() yourself, you should also call
-clutter_x11_set_display() before g_option_context_parse().
+Converts a value in #ClutterUnits to pixels
 
-Since: 0.8
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="xdpy">
-<parameter_description> pointer to a X display connection.
+<parameter name="units">
+<parameter_description> units to convert
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value in pixels
+
+</return>
 </function>
 
-<function name="clutter_alpha_new_full">
+<function name="clutter_units_to_string">
 <description>
-Creates a new #ClutterAlpha instance and sets the timeline
-and animation mode.
+Converts @units into a string
 
-See also clutter_alpha_set_timeline() and clutter_alpha_set_mode().
+See clutter_units_from_string() for the units syntax and for
+examples of output
+
+&lt;note&gt;Fractional values are truncated to the second decimal
+position for em, mm and cm, and to the first decimal position for
+typographic points. Pixels are integers.&lt;/note&gt;
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> #ClutterTimeline timeline
-</parameter_description>
-</parameter>
-<parameter name="mode">
-<parameter_description> animation mode
+<parameter name="units">
+<parameter_description> a #ClutterUnits
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterAlpha
+<return> a newly allocated string containing the encoded
+#ClutterUnits value. Use g_free() to free the string
 
 </return>
 </function>
 
-<function name="clutter_text_get_chars">
+<function name="clutter_util_next_p2">
 <description>
-Retrieves the contents of the #ClutterText actor between
-@start_pos and @end_pos.
-
-The positions are specified in characters, not in bytes.
+Calculates the nearest power of two, greater than or equal to @a.
 
-Since: 1.0
+Deprecated: 1.2
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="start_pos">
-<parameter_description> start of text, in characters
-</parameter_description>
-</parameter>
-<parameter name="end_pos">
-<parameter_description> end of text, in characters
+<parameter name="a">
+<parameter_description> Value to get the next power
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string with the contents of
-the text actor between the specified positions. Use g_free()
-to free the resources when done
+<return> The nearest power of two, greater or equal to @a.
 
 </return>
 </function>
 
-<function name="clutter_set_default_frame_rate">
+<function name="clutter_value_dup_paint_node">
 <description>
-Sets the default frame rate. This frame rate will be used to limit
-the number of frames drawn if Clutter is not able to synchronize
-with the vertical refresh rate of the display. When synchronization
-is possible, this value is ignored.
+Retrieves a pointer to the #ClutterPaintNode contained inside
+the passed #GValue, and if not %NULL it will increase the
+reference count.
 
-Since: 0.6
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="frames_per_sec">
-<parameter_description> the new default frame rate
+<parameter name="value">
+<parameter_description> a #GValue initialized with %CLUTTER_TYPE_PAINT_NODE
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> a pointer
+to the #ClutterPaintNode, with its reference count increased,
+or %NULL
+
+</return>
 </function>
 
-<function name="json_node_set_boolean">
+<function name="clutter_value_get_color">
 <description>
-Sets @value as the boolean content of the @node, replacing any existing
-content.
+Gets the #ClutterColor contained in @value.
+
+Since: 0.8.4
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
-</parameter_description>
-</parameter>
 <parameter name="value">
-<parameter_description> a boolean value
+<parameter_description> a #GValue initialized to #CLUTTER_TYPE_COLOR
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the color inside the passed #GValue
+
+</return>
 </function>
 
-<function name="clutter_texture_get_repeat">
+<function name="clutter_value_get_fixed">
 <description>
-Retrieves the horizontal and vertical repeat values set
-using clutter_texture_set_repeat()
+Gets the fixed point value stored inside @value.
 
-Since: 1.0
+Since: 0.8
+
+Deprecated: 1.10: Use g_value_get_int() instead.
 
 </description>
 <parameters>
-<parameter name="texture">
-<parameter_description> a #ClutterTexture
-</parameter_description>
-</parameter>
-<parameter name="repeat_x">
-<parameter_description> return location for the horizontal repeat
-</parameter_description>
-</parameter>
-<parameter name="repeat_y">
-<parameter_description> return location for the vertical repeat
+<parameter name="value">
+<parameter_description> a #GValue initialized to %COGL_TYPE_FIXED
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the value inside the passed #GValue
+
+</return>
 </function>
 
-<function name="clutter_main">
+<function name="clutter_value_get_paint_node">
 <description>
-Starts the Clutter mainloop.
+Retrieves a pointer to the #ClutterPaintNode contained inside
+the passed #GValue.
+
+Since: 1.10
 
 </description>
 <parameters>
+<parameter name="value">
+<parameter_description> a #GValue initialized with %CLUTTER_TYPE_PAINT_NODE
+</parameter_description>
+</parameter>
 </parameters>
-<return></return>
+<return> a pointer to
+a #ClutterPaintNode, or %NULL
+
+</return>
 </function>
 
-<function name="clutter_units_from_string">
+<function name="clutter_value_get_shader_float">
 <description>
-Parses a value and updates @units with it
-
-A #ClutterUnits expressed in string should match:
-
-|[
-units: wsp* unit-value wsp* unit-name? wsp*
-unit-value: number
-unit-name: 'px' | 'pt' | 'mm' | 'em' | 'cm'
-number: digit+
-| digit* sep digit+
-sep: '.' | ','
-digit: '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
-wsp: (#0x20 | #0x9 | #0xA | #0xB | #0xC | #0xD)+
-]|
-
-For instance, these are valid strings:
-
-|[
-10 px
-5.1 em
-24 pt
-12.6 mm
-.3 cm
-]|
-
-While these are not:
-
-|[
-42 cats
-omg!1!ponies
-]|
-
-&lt;note&gt;If no unit is specified, pixels are assumed.&lt;/note&gt;
+Retrieves the list of floating point values stored inside
+the passed #GValue. @value must have been initialized with
+%CLUTTER_TYPE_SHADER_FLOAT.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="value">
+<parameter_description> a #GValue
 </parameter_description>
 </parameter>
-<parameter name="str">
-<parameter_description> the string to convert
+<parameter name="length">
+<parameter_description> return location for the number of returned floating
+point values, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the string was successfully parsed,
-and %FALSE otherwise
+<return> the pointer to a list of
+floating point values.  The returned value is owned by the
+#GValue and should never be modified or freed.
 
 </return>
 </function>
 
-<function name="clutter_device_manager_list_devices">
+<function name="clutter_value_get_shader_int">
 <description>
-Lists all currently registered input devices
+Retrieves the list of integer values stored inside the passed
+#GValue. @value must have been initialized with
+%CLUTTER_TYPE_SHADER_INT.
 
-Since: 1.2
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="device_manager">
-<parameter_description> a #ClutterDeviceManager
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> return location for the number of returned integer
+values, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return>
-a newly allocated list of #ClutterInputDevice objects. Use
-g_slist_free() to deallocate it when done
+<return> the pointer to a list of
+integer values.  The returned value is owned by the #GValue and
+should never be modified or freed.
 
 </return>
 </function>
 
-<function name="clutter_behaviour_get_alpha">
+<function name="clutter_value_get_shader_matrix">
 <description>
-Retrieves the #ClutterAlpha object bound to @behave.
+Retrieves a matrix of floating point values stored inside
+the passed #GValue. @value must have been initialized with
+%CLUTTER_TYPE_SHADER_MATRIX.
 
-Since: 0.2
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+<parameter name="length">
+<parameter_description> return location for the number of returned floating
+point values, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterAlpha object, or %NULL if no alpha
-object has been bound to this behaviour.
+<return> the pointer to a matrix
+of floating point values. The returned value is owned by the #GValue and
+should never be modified or freed.
 
 </return>
 </function>
 
-<function name="cogl_util_next_p2">
+<function name="clutter_value_get_units">
 <description>
-Calculates the next power greater than @a.
+Gets the #ClutterUnits contained in @value.
 
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> Value to get the next power
+<parameter name="value">
+<parameter_description> a #GValue initialized to %CLUTTER_TYPE_UNITS
 </parameter_description>
 </parameter>
 </parameters>
-<return> The next power after @a.
+<return> the units inside the passed #GValue
+
 </return>
 </function>
 
-<function name="clutter_text_get_cursor_size">
+<function name="clutter_value_set_color">
 <description>
-Retrieves the size of the cursor of a #ClutterText actor.
+Sets @value to @color.
 
-Since: 1.0
+Since: 0.8.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="value">
+<parameter_description> a #GValue initialized to #CLUTTER_TYPE_COLOR
+</parameter_description>
+</parameter>
+<parameter name="color">
+<parameter_description> the color to set
 </parameter_description>
 </parameter>
 </parameters>
-<return> the size of the cursor, in pixels
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_color_lighten">
+<function name="clutter_value_set_fixed">
 <description>
-Lightens @color by a fixed amount, and saves the changed color
-in @result.
+Sets @value to @fixed_.
+
+Since: 0.8
+
+Deprecated: 1.10: Use g_value_set_int() instead.
 
 </description>
 <parameters>
-<parameter name="color">
-<parameter_description> a #ClutterColor
+<parameter name="value">
+<parameter_description> a #GValue initialized to %COGL_TYPE_FIXED
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> return location for the lighter color
+<parameter name="fixed_">
+<parameter_description> the fixed point value to set
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_animation_completed">
+<function name="clutter_value_set_paint_node">
 <description>
-Emits the ::completed signal on @animation
+Sets the contents of a #GValue initialized with %CLUTTER_TYPE_PAINT_NODE.
 
-When using this function with a #ClutterAnimation created
-by the clutter_actor_animate() family of functions, @animation
-will be unreferenced and it will not be valid anymore,
-unless g_object_ref() was called before calling this function
-or unless a reference was taken inside a handler for the
-#ClutterAnimation::completed signal
+This function increased the reference count of @node; if you do not wish
+to increase the reference count, use clutter_value_take_paint_node()
+instead. The reference count will be released by g_value_unset().
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="value">
+<parameter_description> a #GValue initialized with %CLUTTER_TYPE_PAINT_NODE
+</parameter_description>
+</parameter>
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_get_double">
+<function name="clutter_value_set_shader_float">
 <description>
-Gets the double value stored inside a #JsonNode
+Sets @floats as the contents of @value. The passed #GValue
+must have been initialized using %CLUTTER_TYPE_SHADER_FLOAT.
 
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> number of floating point values in @floats
+</parameter_description>
+</parameter>
+<parameter name="floats">
+<parameter_description> an array of floating point values
 </parameter_description>
 </parameter>
 </parameters>
-<return> a double value.
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_get_scroll_direction">
+<function name="clutter_value_set_shader_int">
 <description>
-Retrieves the direction of the scrolling of @event
+Sets @ints as the contents of @value. The passed #GValue
+must have been initialized using %CLUTTER_TYPE_SHADER_INT.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent of type %CLUTTER_SCROLL
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> number of integer values in @ints
+</parameter_description>
+</parameter>
+<parameter name="ints">
+<parameter_description> an array of integer values
 </parameter_description>
 </parameter>
 </parameters>
-<return> the scrolling direction
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_event_get_time">
+<function name="clutter_value_set_shader_matrix">
 <description>
-Retrieves the time of the event.
+Sets @matrix as the contents of @value. The passed #GValue
+must have been initialized using %CLUTTER_TYPE_SHADER_MATRIX.
 
-Since: 0.4
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
+<parameter name="value">
+<parameter_description> a #GValue
+</parameter_description>
+</parameter>
+<parameter name="size">
+<parameter_description> number of floating point values in @floats
+</parameter_description>
+</parameter>
+<parameter name="matrix">
+<parameter_description> a matrix of floating point values
 </parameter_description>
 </parameter>
 </parameters>
-<return> the time of the event, or %CLUTTER_CURRENT_TIME
-
-</return>
+<return></return>
 </function>
 
-<function name="json_array_add_boolean_element">
+<function name="clutter_value_set_units">
 <description>
-Conveniently adds a boolean @value into @array
-
-See also: json_array_add_element(), json_node_set_boolean()
+Sets @value to @units
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
+<parameter name="value">
+<parameter_description> a #GValue initialized to %CLUTTER_TYPE_UNITS
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> a boolean value
+<parameter name="units">
+<parameter_description> the units to set
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_binding_pool_unblock_action">
+<function name="clutter_value_take_paint_node">
 <description>
-Unblockes all the actions with name @action_name inside @pool.
+Sets the contents of a #GValue initialized with %CLUTTER_TYPE_PAINT_NODE.
 
-Unblocking an action does not cause the callback bound to it to
-be invoked in case clutter_binding_pool_activate() was called on
-an action previously blocked with clutter_binding_pool_block_action().
+Unlike clutter_value_set_paint_node(), this function will not take a
+reference on the passed @node: instead, it will take ownership of the
+current reference count.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
+<parameter name="value">
+<parameter_description> a #GValue, initialized with %CLUTTER_TYPE_PAINT_NODE
 </parameter_description>
 </parameter>
-<parameter name="action_name">
-<parameter_description> an action name
+<parameter name="node">
+<parameter_description> a #ClutterPaintNode, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_group_new">
+<function name="clutter_vertex_alloc">
 <description>
-Create a new  #ClutterGroup.
+Allocates a new, empty #ClutterVertex.
 
+Since: 1.12
 
 </description>
 <parameters>
 </parameters>
-<return> the newly created #ClutterGroup actor
+<return> the newly allocated #ClutterVertex.
+Use clutter_vertex_free() to free its resources
+
 </return>
 </function>
 
-<function name="clutter_text_get_cursor_visible">
+<function name="clutter_vertex_copy">
 <description>
-Retrieves whether the cursor of a #ClutterText actor is visible.
+Copies @vertex
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="vertex">
+<parameter_description> a #ClutterVertex
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the cursor is visible
+<return> a newly allocated copy of #ClutterVertex.
+Use clutter_vertex_free() to free the allocated resources
 
 </return>
 </function>
 
-<function name="json_node_dup_string">
+<function name="clutter_vertex_equal">
 <description>
-Gets a copy of the string value stored inside a #JsonNode
+Compares @vertex_a and @vertex_b for equality
 
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode of type %JSON_NODE_VALUE
+<parameter name="vertex_a">
+<parameter_description> a #ClutterVertex
+</parameter_description>
+</parameter>
+<parameter name="vertex_b">
+<parameter_description> a #ClutterVertex
 </parameter_description>
 </parameter>
 </parameters>
-<return> a newly allocated string containing a copy of
-the #JsonNode contents
+<return> %TRUE if the passed #ClutterVertex are equal
+
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_get_width">
+<function name="clutter_vertex_free">
 <description>
-Gets the width of the elliptical path.
+Frees a #ClutterVertex allocated using clutter_vertex_alloc() or
+clutter_vertex_copy().
 
-Since: 0.4
+Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
+<parameter name="vertex">
+<parameter_description> a #ClutterVertex
 </parameter_description>
 </parameter>
 </parameters>
-<return> the width of the path
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_units_get_unit_value">
+<function name="clutter_vertex_init">
 <description>
-Retrieves the value stored inside @units
+Initializes @vertex with the given coordinates.
 
-Since: 1.0
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="units">
-<parameter_description> a #ClutterUnits
+<parameter name="vertex">
+<parameter_description> a #ClutterVertex
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> X coordinate
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> Y coordinate
+</parameter_description>
+</parameter>
+<parameter name="z">
+<parameter_description> Z coordinate
 </parameter_description>
 </parameter>
 </parameters>
-<return> the value stored inside a #ClutterUnits
+<return> the initialized #ClutterVertex
 
 </return>
 </function>
 
-<function name="clutter_get_show_fps">
+<function name="clutter_vertex_new">
 <description>
-Returns whether Clutter should print out the frames per second on the
-console. You can enable this setting either using the
-&lt;literal&gt;CLUTTER_SHOW_FPS&lt;/literal&gt; environment variable or passing
-the &lt;literal&gt;--clutter-show-fps&lt;/literal&gt; command line argument. *
+Creates a new #ClutterVertex for the point in 3D space
+identified by the 3 coordinates @x, @y, @z.
 
-Since: 0.4
+This function is the logical equivalent of:
+
+|[
+clutter_vertex_init (clutter_vertex_alloc (), x, y, z);
+]|
+
+Since: 1.0
 
 </description>
 <parameters>
+<parameter name="x">
+<parameter_description> X coordinate
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> Y coordinate
+</parameter_description>
+</parameter>
+<parameter name="z">
+<parameter_description> Z coordinate
+</parameter_description>
+</parameter>
 </parameters>
-<return> %TRUE if Clutter should show the FPS.
+<return> the newly allocated #ClutterVertex.
+Use clutter_vertex_free() to free the resources
 
 </return>
 </function>
 
-<function name="clutter_box_set_layout_manager">
+<function name="clutter_wayland_disable_event_retrieval">
 <description>
-Sets the #ClutterLayoutManager for @box
+Disables the dispatch of the events in the main loop.
 
-A #ClutterLayoutManager is a delegate object that controls the
-layout of the children of @box
+This is useful for integrating Clutter with another library that will do the
+event dispatch; in general only a single source should be acting on changes
+on the Wayland file descriptor.
 
-Since: 1.2
+&lt;warning&gt;This function can only be called before calling
+clutter_init().&lt;/warning&gt;
 
-</description>
-<parameters>
-<parameter name="box">
-<parameter_description> a #ClutterBox
-</parameter_description>
-</parameter>
-<parameter name="manager">
-<parameter_description> a #ClutterLayoutManager
-</parameter_description>
-</parameter>
+This function should not be normally used by applications.
+
+Since: 1.16
+
+</description>
+<parameters>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_object_get_string_member">
+<function name="clutter_wayland_input_device_get_wl_seat">
 <description>
-Convenience function that retrieves the string value
-stored in @member_name of @object
+Access the underlying data structure representing the Wayland device that is
+backing this #ClutterInputDevice.
 
-See also: json_object_get_member()
+Note: this function can only be called when running on the Wayland platform.
+Calling this function at any other time will return %NULL.
 
-Since: 0.8
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="object">
-<parameter_description> a #JsonObject
-</parameter_description>
-</parameter>
-<parameter name="member_name">
-<parameter_description> the name of the member
+<parameter name="device">
+<parameter_description> a #ClutterInputDevice
 </parameter_description>
 </parameter>
 </parameters>
-<return> the string value of the object's member
+<return> the Wayland input device associated with the
+@device
 
 </return>
 </function>
 
-<function name="clutter_binding_pool_override_closure">
+<function name="clutter_wayland_set_compositor_display">
 <description>
-A #GClosure variant of clutter_binding_pool_override_action().
-
-Allows overriding the action for @key_val and @modifiers inside a
-#ClutterBindingPool. See clutter_binding_pool_install_closure().
-
-When an action has been activated using clutter_binding_pool_activate()
-the passed @callback will be invoked (with @data).
-
-Actions can be blocked with clutter_binding_pool_block_action()
-and then unblocked using clutter_binding_pool_unblock_action().
+This informs Clutter of your compositor side Wayland display
+object. This must be called before calling clutter_init().
 
-Since: 1.0
+Since: 1.8
+Stability: unstable
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> bitmask of modifiers
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> a #GClosure
+<parameter name="display">
+<parameter_description> A compositor side struct wl_display pointer
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_threads_enter">
+<function name="clutter_wayland_set_display">
 <description>
-Locks the Clutter thread lock.
+Sets the display connection Clutter should use; must be called
+before clutter_init(), clutter_init_with_args() or other functions
+pertaining Clutter's initialization process.
 
-Since: 0.4
+If you are parsing the command line arguments by retrieving Clutter's
+#GOptionGroup with clutter_get_option_group() and calling
+g_option_context_parse() yourself, you should also call
+clutter_wayland_set_display() before g_option_context_parse().
+
+Since: 1.16
 
 </description>
 <parameters>
+<parameter name="display">
+<parameter_description> pointer to a wayland display
+</parameter_description>
+</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_pack">
+<function name="clutter_wayland_stage_get_wl_shell_surface">
 <description>
-Adds @actor to @box and sets layout properties at the same time,
-if the #ClutterLayoutManager used by @box has them
-
-This function is a wrapper around clutter_container_add_actor()
-and clutter_layout_manager_child_set()
+Access the underlying data structure representing the shell surface that is
+backing the #ClutterStage
 
-Language bindings should use the vector-based clutter_box_addv()
-variant instead
+Note: this function can only be called when running on the Wayland
+platform. Calling this function at any other time will return %NULL.
 
-Since: 1.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterBox
-</parameter_description>
-</parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="first_property">
-<parameter_description> the name of the first property to set, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="Varargs">
-<parameter_description> a list of property name and value pairs, terminated by %NULL
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the Wayland shell surface associated with
+@stage
+
+</return>
 </function>
 
-<function name="clutter_binding_pool_remove_action">
+<function name="clutter_wayland_stage_get_wl_surface">
 <description>
-Removes the action matching the given @key_val, @modifiers pair,
-if any exists.
+Access the underlying data structure representing the surface that is
+backing the #ClutterStage
 
-Since: 1.0
+Note: this function can only be called when running on the Wayland
+platform. Calling this function at any other time will return %NULL.
+
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> a key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> a bitmask for the modifiers
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the Wayland surface associated with @stage
+
+</return>
 </function>
 
-<function name="clutter_container_remove_valist">
+<function name="clutter_wayland_stage_set_wl_surface">
 <description>
-Alternative va_list version of clutter_container_remove().
+Allows you to explicitly provide an existing Wayland surface to associate
+with @stage, preventing Cogl from allocating a surface and shell surface for
+the stage automatically.
 
-Since: 0.4
+This function must be called before @stage is shown.
+
+Note: this function can only be called when running on the Wayland
+platform. Calling this function at any other time has no effect.
+
+Since: 1.16
 
 </description>
 <parameters>
-<parameter name="container">
-<parameter_description> a #ClutterContainer
-</parameter_description>
-</parameter>
-<parameter name="first_actor">
-<parameter_description> the first #ClutterActor to add
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="var_args">
-<parameter_description> list of actors to remove, followed by %NULL
+<parameter name="surface">
+<parameter_description> A Wayland surface to associate with the @stage.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_actor_set_size">
+<function name="clutter_wayland_surface_attach_buffer">
 <description>
-Sets the actor's size request in pixels. This overrides any
-&quot;normal&quot; size request the actor would have. For example
-a text actor might normally request the size of the text;
-this function would force a specific size instead.
-
-If @width and/or @height are -1 the actor will use its
-&quot;normal&quot; size request instead of overriding it, i.e.
-you can &quot;unset&quot; the size with -1.
+This associates a client's buffer with the #ClutterWaylandSurface
+actor @self. This will automatically result in @self being re-drawn
+with the new buffer contents.
 
-This function sets or unsets both the minimum and natural size.
+Since: 1.8
+Stability: unstable
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> A #ClutterWaylandSurface actor
 </parameter_description>
 </parameter>
-<parameter name="width">
-<parameter_description> New width of actor in pixels, or -1
+<parameter name="buffer">
+<parameter_description> A compositor side resource representing a wl_buffer
 </parameter_description>
 </parameter>
-<parameter name="height">
-<parameter_description> New height of actor in pixels, or -1
+<parameter name="error">
+<parameter_description> A #GError
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_box_layout_set_expand">
+<function name="clutter_wayland_surface_damage_buffer">
 <description>
-Sets whether @actor should expand inside @layout
+This marks a region of the given @buffer has having been changed by
+the client. This will automatically result in the corresponding damaged
+region of the actor @self being redrawn.
 
-Since: 1.2
+If multiple regions are changed then this should be called multiple
+times with different damage rectangles.
+
+Since: 1.8
+Stability: unstable
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterBoxLayout
+<parameter name="self">
+<parameter_description> A #ClutterWaylandSurface actor
 </parameter_description>
 </parameter>
-<parameter name="actor">
-<parameter_description> a #ClutterActor child of @layout
+<parameter name="buffer">
+<parameter_description> A wayland resource for a buffer
 </parameter_description>
 </parameter>
-<parameter name="expand">
-<parameter_description> whether @actor should expand
+<parameter name="x">
+<parameter_description> The x coordinate of the damaged rectangle
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> The y coordinate of the damaged rectangle
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> The width of the damaged rectangle
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> The height of the damaged rectangle
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_behaviour_get_nth_actor">
+<function name="clutter_wayland_surface_get_cogl_texture">
 <description>
-Gets an actor the behaviour was applied to referenced by index num.
+Retrieves the Cogl texture with the contents of the Wayland surface.
 
-Since: 0.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="behave">
-<parameter_description> a #ClutterBehaviour
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of an actor this behaviour is applied too. 
+<parameter name="self">
+<parameter_description> a #ClutterWaylandSurface
 </parameter_description>
 </parameter>
 </parameters>
-<return> A Clutter actor or NULL if @index_ is invalid.
+<return> a Cogl texture, or %NULL
 
 </return>
 </function>
 
-<function name="clutter_behaviour_opacity_new">
+<function name="clutter_wayland_surface_get_surface">
 <description>
-Creates a new #ClutterBehaviourOpacity object, driven by @alpha
-which controls the opacity property of every actor, making it
-change in the interval between @opacity_start and @opacity_end.
+Retrieves a point to the Wayland surface used by the actor.
 
-Since: 0.2
+Since: 1.10
 
 </description>
 <parameters>
-<parameter name="alpha">
-<parameter_description> a #ClutterAlpha instance, or %NULL
-</parameter_description>
-</parameter>
-<parameter name="opacity_start">
-<parameter_description> minimum level of opacity
-</parameter_description>
-</parameter>
-<parameter name="opacity_end">
-<parameter_description> maximum level of opacity
+<parameter name="self">
+<parameter_description> a #ClutterWaylandSurface
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly created #ClutterBehaviourOpacity
+<return> a wl_surface pointer, or %NULL
 
 </return>
 </function>
 
-<function name="clutter_shader_get_is_enabled">
+<function name="clutter_wayland_surface_new">
 <description>
-Checks whether @shader is enabled.
+Creates a new #ClutterWaylandSurface for @surface
 
-Since: 0.6
+Since: 1.8
+Stability: unstable
 
 </description>
 <parameters>
-<parameter name="shader">
-<parameter_description> a #ClutterShader
+<parameter name="surface">
+<parameter_description> the Wayland surface this actor should represent
 </parameter_description>
 </parameter>
 </parameters>
-<return> %TRUE if the shader is enabled.
+<return> A new #ClutterWaylandSurface representing @surface
 
 </return>
 </function>
 
-<function name="clutter_actor_get_abs_allocation_vertices">
+<function name="clutter_wayland_surface_set_surface">
 <description>
-Calculates the transformed screen coordinates of the four corners of
-the actor; the returned vertices relate to the #ClutterActorBox
-coordinates  as follows:
-&lt;itemizedlist&gt;
-&lt;listitem&gt;&lt;para&gt;v[0] contains (x1, y1)&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;v[1] contains (x2, y1)&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;v[2] contains (x1, y2)&lt;/para&gt;&lt;/listitem&gt;
-&lt;listitem&gt;&lt;para&gt;v[3] contains (x2, y2)&lt;/para&gt;&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
+Sets the Wayland surface to be used by the actor.
 
-Since: 0.4
+Since: 1.10
 
 </description>
 <parameters>
 <parameter name="self">
-<parameter_description> A #ClutterActor
+<parameter_description> a #ClutterWaylandSurface
 </parameter_description>
 </parameter>
-<parameter name="verts">
-<parameter_description> Pointer to a location of an array
-of 4 #ClutterVertex where to store the result.
+<parameter name="surface">
+<parameter_description> a Wayland wl_surface pointer
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_node_copy">
+<function name="clutter_win32_disable_event_retrieval">
 <description>
-Copies @node. If the node contains complex data types then the reference
-count of the objects is increased.
+Disables retrieval of Windows messages in the main loop. Use to
+create event-less canvas.
+
+This function can only be called before calling clutter_init().
 
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+</parameters>
+<return></return>
+</function>
+
+<function name="clutter_win32_get_stage_from_window">
+<description>
+Gets the stage for a particular window.
+
+Since: 0.8
+
+</description>
+<parameters>
+<parameter name="hwnd">
+<parameter_description> a window handle
 </parameter_description>
 </parameter>
 </parameters>
-<return> the copied #JsonNode
+<return> The stage or NULL if a stage does not exist for the
+window.
+
 </return>
 </function>
 
-<function name="clutter_event_get_button">
+<function name="clutter_win32_get_stage_window">
 <description>
-Retrieves the button number of @event
+Gets the stage's window handle
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent of type %CLUTTER_BUTTON_PRESS or
-of type %CLUTTER_BUTTON_RELEASE
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> the button number
+<return> An HWND for the stage window.
 
 </return>
 </function>
 
-<function name="clutter_stage_hide_cursor">
+<function name="clutter_win32_handle_event">
 <description>
-Makes the cursor invisible on the stage window
+This function processes a single Win32 message. It can be used to
+hook into external windows message processing (for example, a GDK
+filter function).
 
-Since: 0.4
+If clutter_win32_disable_event_retrieval() has been called, you must
+let this function process events to update Clutter's internal state.
+
+Since: 1.6
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
+<parameter name="msg">
+<parameter_description> A pointer to a structure describing a Win32 message.
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the message was handled entirely by Clutter
+and no further processing (such as calling the default window
+procedure) should take place. %FALSE is returned if is the message
+was not handled at all or if Clutter expects processing to take
+place.
+
+</return>
 </function>
 
-<function name="clutter_actor_box_get_y">
+<function name="clutter_win32_set_stage_foreign">
 <description>
-Retrieves the Y coordinate of the origin of @box
+Target the #ClutterStage to use an existing external window handle.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="box">
-<parameter_description> a #ClutterActorBox
+<parameter name="stage">
+<parameter_description> a #ClutterStage
+</parameter_description>
+</parameter>
+<parameter name="hwnd">
+<parameter_description> an existing window handle
 </parameter_description>
 </parameter>
 </parameters>
-<return> the Y coordinate of the origin
+<return> %TRUE if foreign window is valid
 
 </return>
 </function>
 
-<function name="clutter_value_set_units">
+<function name="clutter_x11_add_filter">
 <description>
-Sets @value to @units
+Adds an event filter function.
 
-Since: 0.8
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue initialized to #CLUTTER_TYPE_UNIT
+<parameter name="func">
+<parameter_description> a filter function
 </parameter_description>
 </parameter>
-<parameter name="units">
-<parameter_description> the units to set
+<parameter name="data">
+<parameter_description> user data to be passed to the filter function, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_value_get_shader_int">
+<function name="clutter_x11_disable_event_retrieval">
 <description>
-Retrieves the list of integer values stored inside the passed
-#GValue. @value must have been initialized with
-%CLUTTER_TYPE_SHADER_INT.
+Disables the internal polling of X11 events in the main loop.
+
+Libraries or applications calling this function will be responsible of
+polling all X11 events.
+
+You also must call clutter_x11_handle_event() to let Clutter process
+events and maintain its internal state.
+
+&lt;warning&gt;This function can only be called before calling
+clutter_init().&lt;/warning&gt;
+
+&lt;note&gt;Even with event handling disabled, Clutter will still select
+all the events required to maintain its internal state on the stage
+Window; compositors using Clutter and input regions to pass events
+through to application windows should not rely on an empty input
+region, and should instead clear it themselves explicitly using the
+XFixes extension.&lt;/note&gt;
+
+This function should not be normally used by applications.
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="value">
-<parameter_description> a #GValue
-</parameter_description>
-</parameter>
-<parameter name="length">
-<parameter_description> return location for the number of returned integer
-values, or %NULL
-</parameter_description>
-</parameter>
 </parameters>
-<return> the pointer to a list of integer values.
-The returned value is owned by the #GValue and should never
-be modified or freed.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_texture_new_from_actor">
+<function name="clutter_x11_enable_xinput">
 <description>
-Creates a new #ClutterTexture object with its source a prexisting
-actor (and associated children). The textures content will contain
-'live' redirected output of the actors scene.
+Enables the use of the XInput extension if present on connected
+XServer and support built into Clutter. XInput allows for multiple
+pointing devices to be used.
 
-Note this function is intented as a utility call for uniformly applying
-shaders to groups and other potential visual effects. It requires that
-the %CLUTTER_FEATURE_OFFSCREEN feature is supported by the current backend
-and the target system.
+This function must be called before clutter_init().
 
-Some tips on usage:
+Since XInput might not be supported by the X server, you might
+want to use clutter_x11_has_xinput() to see if support was enabled.
 
-&lt;itemizedlist&gt;
-&lt;listitem&gt;
-&lt;para&gt;The source actor must be made visible (i.e by calling
-#clutter_actor_show).&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;The source actor must have a parent in order for it to be
-allocated a size from the layouting mechanism. If the source
-actor does not have a parent when this function is called then
-the ClutterTexture will adopt it and allocate it at its
-preferred size. Using this you can clone an actor that is
-otherwise not displayed. Because of this feature if you do
-intend to display the source actor then you must make sure that
-the actor is parented before calling
-clutter_texture_new_from_actor() or that you unparent it before
-adding it to a container.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;When getting the image for the clone texture, Clutter
-will attempt to render the source actor exactly as it would
-appear if it was rendered on screen. The source actor's parent
-transformations are taken into account. Therefore if your
-source actor is rotated along the X or Y axes so that it has
-some depth, the texture will appear differently depending on
-the on-screen location of the source actor. While painting the
-source actor, Clutter will set up a temporary asymmetric
-perspective matrix as the projection matrix so that the source
-actor will be projected as if a small section of the screen was
-being viewed. Before version 0.8.2, an orthogonal identity
-projection was used which meant that the source actor would be
-clipped if any part of it was not on the zero Z-plane.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;Avoid reparenting the source with the created texture.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;A group can be padded with a transparent rectangle as to
-provide a border to contents for shader output (blurring text
-for example).&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;The texture will automatically resize to contain a further
-transformed source. However, this involves overhead and can be
-avoided by placing the source actor in a bounding group
-sized large enough to contain any child tranformations.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;Uploading pixel data to the texture (e.g by using
-clutter_actor_set_from_file()) will destroy the offscreen texture data
-and end redirection.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;listitem&gt;
-&lt;para&gt;cogl_texture_get_data() with the handle returned by
-clutter_texture_get_cogl_texture() can be used to read the
-offscreen texture pixels into a pixbuf.&lt;/para&gt;
-&lt;/listitem&gt;
-&lt;/itemizedlist&gt;
+Since: 0.8
 
-Since: 0.6
+Deprecated: 1.14: This function does not do anything; XInput support
+is enabled by default in Clutter. Use the CLUTTER_DISABLE_XINPUT
+environment variable to disable XInput support and use Xlib core
+events instead.
 
 </description>
 <parameters>
-<parameter name="actor">
-<parameter_description> A source #ClutterActor
-</parameter_description>
-</parameter>
 </parameters>
-<return> A newly created #ClutterTexture object, or %NULL on failure.
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_device_manager_get_core_device">
+<function name="clutter_x11_event_get_key_group">
 <description>
-Retrieves the core #ClutterInputDevice of type @device_type
+Retrieves the group for the modifiers set in @event
 
-Core devices are devices created automatically by the default
-Clutter backend
-
-Since: 1.2
+Since: 1.4
 
 </description>
 <parameters>
-<parameter name="device_manager">
-<parameter_description> a #ClutterDeviceManager
-</parameter_description>
-</parameter>
-<parameter name="device_type">
-<parameter_description> the type of the core device
+<parameter name="event">
+<parameter_description> a #ClutterEvent of type %CLUTTER_KEY_PRESS or %CLUTTER_KEY_RELEASE
 </parameter_description>
 </parameter>
 </parameters>
-<return> a #ClutterInputDevice or %NULL. The
-returned device is owned by the #ClutterDeviceManager and should
-not be modified or freed
+<return> the group id
 
 </return>
 </function>
 
-<function name="clutter_backend_set_double_click_time">
+<function name="clutter_x11_event_sequence_get_touch_detail">
 <description>
-Sets the maximum time between two button press events, used to
-verify whether it's a double click event or not.
+Retrieves the touch detail froma #ClutterEventSequence.
 
-Since: 0.4
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="backend">
-<parameter_description> a #ClutterBackend
-</parameter_description>
-</parameter>
-<parameter name="msec">
-<parameter_description> milliseconds between two button press events
+<parameter name="sequence">
+<parameter_description> a #ClutterEventSequence
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> the touch detail
+
+</return>
 </function>
 
-<function name="clutter_stage_get_fullscreen">
+<function name="clutter_x11_get_current_event_time">
 <description>
-Retrieves whether the stage is full screen or not
+Retrieves the timestamp of the last X11 event processed by
+Clutter. This might be different from the timestamp returned
+by clutter_get_current_event_time(), as Clutter may synthesize
+or throttle events.
 
 Since: 1.0
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> a #ClutterStage
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the stage is full screen
+<return> a timestamp, in milliseconds
 
 </return>
 </function>
 
-<function name="clutter_actor_get_text_direction">
+<function name="clutter_x11_get_default_display">
 <description>
-Retrieves the value set using clutter_actor_set_text_direction()
-
-If no text direction has been previously set, the default text
-direction, as returned by clutter_get_default_text_direction(), will
-be returned instead
+Retrieves the pointer to the default display.
 
-Since: 1.2
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
 </parameters>
-<return> the #ClutterTextDirection for the actor
+<return> the default display
 
 </return>
 </function>
 
-<function name="clutter_actor_set_shader">
+<function name="clutter_x11_get_default_screen">
 <description>
-Sets the #ClutterShader to be used when rendering @self.
-
-If @shader is %NULL it will unset any currently set shader
-for the actor.
+Gets the number of the default X Screen object.
 
 Since: 0.6
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
-</parameter_description>
-</parameter>
-<parameter name="shader">
-<parameter_description> a #ClutterShader or %NULL to unset the shader.
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the shader was successfully applied
+<return> the number of the default screen
 
 </return>
 </function>
 
-<function name="clutter_behaviour_ellipse_set_angle_tilt">
+<function name="clutter_x11_get_input_devices">
 <description>
-Sets the angle at which the ellipse should be tilted around it's center.
+Retrieves a pointer to the list of input devices
+
+Deprecated: 1.2: Use clutter_device_manager_peek_devices() instead
+
+Since: 0.8
 
-Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterBehaviourEllipse
-</parameter_description>
-</parameter>
-<parameter name="axis">
-<parameter_description> a #ClutterRotateAxis
-</parameter_description>
-</parameter>
-<parameter name="angle_tilt">
-<parameter_description> tilt of the elipse around the center in the given axis in
-degrees.
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a
+pointer to the internal list of input devices; the returned list is
+owned by Clutter and should not be modified or freed
+</return>
 </function>
 
-<function name="clutter_media_get_buffer_fill">
+<function name="clutter_x11_get_root_window">
 <description>
-Retrieves the amount of the stream that is buffered.
+Retrieves the root window.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
-</parameter_description>
-</parameter>
 </parameters>
-<return> the fill level, between 0.0 and 1.0
+<return> the id of the root window
 
 </return>
 </function>
 
-<function name="clutter_animator_key_get_progress">
+<function name="clutter_x11_get_stage_from_window">
 <description>
-Retrieves the progress of an clutter_animator_key
+Gets the stage for a particular X window.
 
-Since: 1.2
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="key">
-<parameter_description> a #ClutterAnimatorKey
+<parameter name="win">
+<parameter_description> an X Window ID
 </parameter_description>
 </parameter>
 </parameters>
-<return> the progress defined for a #ClutterAnimator key.
+<return> A #ClutterStage, or% NULL if a stage
+does not exist for the window
 
 </return>
 </function>
 
-<function name="clutter_animation_get_mode">
+<function name="clutter_x11_get_stage_visual">
 <description>
-Retrieves the animation mode of @animation, as set by
-clutter_animation_set_mode().
+Returns an XVisualInfo suitable for creating a foreign window for the given
+stage. NOTE: It doesn't do as the name may suggest, which is return the
+XVisualInfo that was used to create an existing window for the given stage.
 
-Since: 1.0
+XXX: It might be best to deprecate this function and replace with something
+along the lines of clutter_backend_x11_get_foreign_visual () or perhaps
+clutter_stage_x11_get_foreign_visual ()
+
+Deprecated: 1.2: Use clutter_x11_get_visual_info() instead
+
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="animation">
-<parameter_description> a #ClutterAnimation
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> the mode for the animation
+<return> An XVisualInfo suitable for creating a
+foreign stage. Use XFree() to free the returned value instead
 
 </return>
 </function>
 
-<function name="json_node_dup_array">
+<function name="clutter_x11_get_stage_window">
 <description>
-Retrieves the #JsonArray stored inside a #JsonNode and returns it
-with its reference count increased by one.
+Gets the stages X Window.
 
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #JsonArray with its reference count increased.
+<return> An XID for the stage window.
+
 </return>
 </function>
 
-<function name="clutter_event_get_state">
+<function name="clutter_x11_get_use_argb_visual">
 <description>
-Retrieves the modifier state of the event.
+Retrieves whether the Clutter X11 backend is using ARGB visuals by default
 
-Since: 0.4
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="event">
-<parameter_description> a #ClutterEvent
-</parameter_description>
-</parameter>
 </parameters>
-<return> the modifier state parameter, or 0
+<return> %TRUE if ARGB visuals are queried by default
 
 </return>
 </function>
 
-<function name="clutter_path_add_rel_line_to">
+<function name="clutter_x11_get_visual_info">
 <description>
-Same as clutter_path_add_line_to() except the coordinates are
-relative to the previous node.
+Retrieves the &lt;structname&gt;XVisualInfo&lt;/structname&gt; used by the Clutter X11
+backend.
 
-Since: 1.0
+Since: 1.2
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
-</parameter_description>
-</parameter>
-<parameter name="x">
-<parameter_description> the x coordinate
-</parameter_description>
-</parameter>
-<parameter name="y">
-<parameter_description> the y coordinate
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> a &lt;structname&gt;XVisualInfo&lt;/structname&gt;, or
+&lt;varname&gt;None&lt;/varname&gt;. The returned value should be freed using XFree()
+when done
+
+</return>
 </function>
 
-<function name="clutter_model_get_column_name">
+<function name="clutter_x11_handle_event">
 <description>
-Retrieves the name of the @column
+This function processes a single X event; it can be used to hook
+into external X11 event processing (for example, a GDK filter
+function).
 
-Since: 0.6
+If clutter_x11_disable_event_retrieval() has been called, you must
+let this function process events to update Clutter's internal state.
+
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="model">
-<parameter_description> #ClutterModel
-</parameter_description>
-</parameter>
-<parameter name="column">
-<parameter_description> the column number
+<parameter name="xevent">
+<parameter_description> pointer to XEvent structure
 </parameter_description>
 </parameter>
 </parameters>
-<return> the name of the column. The model holds the returned
-string, and it should not be modified or freed
+<return> #ClutterX11FilterReturn. %CLUTTER_X11_FILTER_REMOVE
+indicates that Clutter has internally handled the event and the
+caller should do no further processing. %CLUTTER_X11_FILTER_CONTINUE
+indicates that Clutter is either not interested in the event,
+or has used the event to update internal state without taking
+any exclusive action. %CLUTTER_X11_FILTER_TRANSLATE will not
+occur.
 
 </return>
 </function>
 
-<function name="clutter_text_set_text">
+<function name="clutter_x11_has_composite_extension">
 <description>
-Sets the contents of a #ClutterText actor.
-
-If the #ClutterText:use-markup property was set to %TRUE it
-will be reset to %FALSE as a side effect. If you want to
-maintain the #ClutterText:use-markup you should use the
-clutter_text_set_markup() function instead
+Retrieves whether Clutter is running on an X11 server with the
+XComposite extension
 
-Since: 1.0
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="text">
-<parameter_description> the text to set. Passing %NULL is the same as passing &quot;&quot; (the
-empty string)
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> %TRUE if the XComposite extension is available
+</return>
 </function>
 
-<function name="clutter_interval_get_value_type">
+<function name="clutter_x11_has_event_retrieval">
 <description>
-Retrieves the #GType of the values inside @interval.
+Queries the X11 backend to check if event collection has been disabled.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="interval">
-<parameter_description> a #ClutterInterval
-</parameter_description>
-</parameter>
 </parameters>
-<return> the type of the value, or G_TYPE_INVALID
+<return> TRUE if event retrival has been disabled. FALSE otherwise.
 
 </return>
 </function>
 
-<function name="clutter_cairo_texture_create_region">
+<function name="clutter_x11_has_xinput">
 <description>
-Creates a new Cairo context that will updat the region defined
-by @x_offset, @y_offset, @width and @height.
-
-&lt;warning&gt;&lt;para&gt;Do not call this function within the paint virtual
-function or from a callback to the #ClutterActor::paint
-signal.&lt;/para&gt;&lt;/warning&gt;
+Gets whether Clutter has XInput support.
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterCairoTexture
-</parameter_description>
-</parameter>
-<parameter name="x_offset">
-<parameter_description> offset of the region on the X axis
-</parameter_description>
-</parameter>
-<parameter name="y_offset">
-<parameter_description> offset of the region on the Y axis
-</parameter_description>
-</parameter>
-<parameter name="width">
-<parameter_description> width of the region, or -1 for the full surface width
-</parameter_description>
-</parameter>
-<parameter name="height">
-<parameter_description> height of the region, or -1 for the full surface height
-</parameter_description>
-</parameter>
 </parameters>
-<return> a newly created Cairo context. Use cairo_destroy()
-to upload the contents of the context when done drawing
+<return> %TRUE if Clutter was compiled with XInput support
+and XInput support is available at run time.
 
 </return>
 </function>
 
-<function name="clutter_color_subtract">
+<function name="clutter_x11_remove_filter">
 <description>
-Subtracts @b from @a and saves the resulting color inside @result.
-
-This function assumes that the components of @a are greater than the
-components of @b; the result is, otherwise, undefined.
+Removes the given filter function.
 
-The alpha channel of @result is set as the minimum value
-between the alpha channels of @a and @b.
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="a">
-<parameter_description> a #ClutterColor
-</parameter_description>
-</parameter>
-<parameter name="b">
-<parameter_description> a #ClutterColor
+<parameter name="func">
+<parameter_description> a filter function
 </parameter_description>
 </parameter>
-<parameter name="result">
-<parameter_description> return location for the result
+<parameter name="data">
+<parameter_description> user data to be passed to the filter function, or %NULL
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_color_new">
+<function name="clutter_x11_set_display">
 <description>
-Creates a new #ClutterColor with the given values.
+Sets the display connection Clutter should use; must be called
+before clutter_init(), clutter_init_with_args() or other functions
+pertaining Clutter's initialization process.
 
-Since: 0.8.4
+If you are parsing the command line arguments by retrieving Clutter's
+#GOptionGroup with clutter_get_option_group() and calling
+g_option_context_parse() yourself, you should also call
+clutter_x11_set_display() before g_option_context_parse().
+
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="red">
-<parameter_description> red component of the color, between 0 and 255
-</parameter_description>
-</parameter>
-<parameter name="green">
-<parameter_description> green component of the color, between 0 and 255
-</parameter_description>
-</parameter>
-<parameter name="blue">
-<parameter_description> blue component of the color, between 0 and 255
-</parameter_description>
-</parameter>
-<parameter name="alpha">
-<parameter_description> alpha component of the color, between 0 and 255
+<parameter name="xdpy">
+<parameter_description> pointer to a X display connection.
 </parameter_description>
 </parameter>
 </parameters>
-<return> the newly allocated color. Use clutter_color_free()
-when done
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_text_set_selectable">
+<function name="clutter_x11_set_stage_foreign">
 <description>
-Sets whether a #ClutterText actor should be selectable.
-
-A selectable #ClutterText will allow selecting its contents using
-the pointer or the keyboard.
+Target the #ClutterStage to use an existing external X Window
 
-Since: 1.0
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
+<parameter name="stage">
+<parameter_description> a #ClutterStage
 </parameter_description>
 </parameter>
-<parameter name="selectable">
-<parameter_description> whether the #ClutterText actor should be selectable
+<parameter name="xwindow">
+<parameter_description> an existing X Window id
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> %TRUE if foreign window is valid
+
+</return>
 </function>
 
-<function name="clutter_binding_pool_install_closure">
+<function name="clutter_x11_set_use_argb_visual">
 <description>
-A #GClosure variant of clutter_binding_pool_install_action().
-
-Installs a new action inside a #ClutterBindingPool. The action
-is bound to @key_val and @modifiers.
-
-The same action name can be used for multiple @key_val, @modifiers
-pairs.
-
-When an action has been activated using clutter_binding_pool_activate()
-the passed @closure will be invoked.
+Sets whether the Clutter X11 backend should request ARGB visuals by default
+or not.
 
-Actions can be blocked with clutter_binding_pool_block_action()
-and then unblocked using clutter_binding_pool_unblock_action().
+By default, Clutter requests RGB visuals.
 
-Since: 1.0
+&lt;note&gt;If no ARGB visuals are found, the X11 backend will fall back to
+requesting a RGB visual instead.&lt;/note&gt;
 
-</description>
-<parameters>
-<parameter name="pool">
-<parameter_description> a #ClutterBindingPool
-</parameter_description>
-</parameter>
-<parameter name="action_name">
-<parameter_description> the name of the action
-</parameter_description>
-</parameter>
-<parameter name="key_val">
-<parameter_description> key symbol
-</parameter_description>
-</parameter>
-<parameter name="modifiers">
-<parameter_description> bitmask of modifiers
-</parameter_description>
-</parameter>
-<parameter name="closure">
-<parameter_description> a #GClosure
+ARGB visuals are required for the #ClutterStage:use-alpha property to work.
+
+&lt;note&gt;This function can only be called once, and before clutter_init() is
+called.&lt;/note&gt;
+
+Since: 1.2
+
+</description>
+<parameters>
+<parameter name="use_argb">
+<parameter_description> %TRUE if ARGB visuals should be requested by default
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="json_array_get_null_element">
+<function name="clutter_x11_texture_pixmap_new">
 <description>
-Conveniently retrieves whether the element at @index_ is set to null
-
-See also: json_array_get_element(), JSON_NODE_TYPE(), %JSON_NODE_NULL
+Creates a new #ClutterX11TexturePixmap which can be used to display the
+contents of an X11 Pixmap inside a Clutter scene graph
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="array">
-<parameter_description> a #JsonArray
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> the index of the element to retrieve
-</parameter_description>
-</parameter>
 </parameters>
-<return> %TRUE if the element is null
+<return> A new #ClutterX11TexturePixmap
 
 </return>
 </function>
 
-<function name="clutter_text_set_cursor_visible">
+<function name="clutter_x11_texture_pixmap_new_with_pixmap">
 <description>
-Sets whether the cursor of a #ClutterText actor should be
-visible or not.
-
-The color of the cursor will be the same as the text color
-unless clutter_text_set_cursor_color() has been called.
-
-The size of the cursor can be set using clutter_text_set_cursor_size().
-
-The position of the cursor can be changed programmatically using
-clutter_text_set_cursor_position().
+Creates a new #ClutterX11TexturePixmap for @pixmap
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterText
-</parameter_description>
-</parameter>
-<parameter name="cursor_visible">
-<parameter_description> whether the cursor should be visible
+<parameter name="pixmap">
+<parameter_description> the X Pixmap to which this texture should be bound
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A new #ClutterX11TexturePixmap bound to the given X Pixmap
+
+</return>
 </function>
 
-<function name="clutter_group_remove_all">
+<function name="clutter_x11_texture_pixmap_new_with_window">
 <description>
-Removes all children actors from the #ClutterGroup.
+Creates a new #ClutterX11TexturePixmap for @window
+
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="group">
-<parameter_description> A #ClutterGroup
+<parameter name="window">
+<parameter_description> the X window to which this texture should be bound
 </parameter_description>
 </parameter>
 </parameters>
-<return></return>
+<return> A new #ClutterX11TexturePixmap bound to the given X window.
+
+</return>
 </function>
 
-<function name="clutter_actor_get_transformation_matrix">
+<function name="clutter_x11_texture_pixmap_set_automatic">
 <description>
-Retrieves the transformations applied to @self
+Enables or disables the automatic updates ot @texture in case the backing
+pixmap or window is damaged
 
-Since: 1.0
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="texture">
+<parameter_description> a #ClutterX11TexturePixmap
 </parameter_description>
 </parameter>
-<parameter name="matrix">
-<parameter_description> the return location for a #CoglMatrix
+<parameter name="setting">
+<parameter_description> %TRUE to enable automatic updates
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_script_get_object">
+<function name="clutter_x11_texture_pixmap_set_pixmap">
 <description>
-Retrieves the object bound to @name. This function does not increment
-the reference count of the returned object.
+Sets the X Pixmap to which the texture should be bound.
 
-Since: 0.6
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="script">
-<parameter_description> a #ClutterScript
+<parameter name="texture">
+<parameter_description> the texture to bind
 </parameter_description>
 </parameter>
-<parameter name="name">
-<parameter_description> the name of the object to retrieve
+<parameter name="pixmap">
+<parameter_description> the X Pixmap to which the texture should be bound
 </parameter_description>
 </parameter>
 </parameters>
-<return> : (transfer none): the named object, or %NULL if no object
-with the given name was available
-
-</return>
+<return></return>
 </function>
 
-<function name="json_node_get_value">
+<function name="clutter_x11_texture_pixmap_set_window">
 <description>
-Retrieves a value from a #JsonNode and copies into @value. When done
-using it, call g_value_unset() on the #GValue.
+Sets up a suitable pixmap for the window, using the composite and damage
+extensions if possible, and then calls
+clutter_x11_texture_pixmap_set_pixmap().
+
+If you want to display a window in a #ClutterTexture, you probably want
+this function, or its older sister, clutter_glx_texture_pixmap_set_window().
+
+This function has no effect unless the XComposite extension is available.
+
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="node">
-<parameter_description> a #JsonNode
+<parameter name="texture">
+<parameter_description> the texture to bind
 </parameter_description>
 </parameter>
-<parameter name="value">
-<parameter_description> return location for an uninitialized value
+<parameter name="window">
+<parameter_description> the X window to which the texture should be bound
+</parameter_description>
+</parameter>
+<parameter name="automatic">
+<parameter_description> %TRUE for automatic window updates, %FALSE for manual.
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_timeline_get_delta">
+<function name="clutter_x11_texture_pixmap_sync_window">
 <description>
-Retrieves the amount of time elapsed since the last
-ClutterTimeline::new-frame signal.
-
-This function is only useful inside handlers for the ::new-frame
-signal, and its behaviour is undefined if the timeline is not
-playing.
+Resets the texture's pixmap from its window, perhaps in response to the
+pixmap's invalidation as the window changed size.
 
-Since: 0.6
+Since: 0.8
 
 </description>
 <parameters>
-<parameter name="timeline">
-<parameter_description> a #ClutterTimeline
+<parameter name="texture">
+<parameter_description> the texture to bind
 </parameter_description>
 </parameter>
 </parameters>
-<return> the amount of time in milliseconds elapsed since the
-last frame
-
-</return>
+<return></return>
 </function>
 
-<function name="clutter_stage_ensure_current">
+<function name="clutter_x11_texture_pixmap_update_area">
 <description>
-This function essentially makes sure the right GL context is
-current for the passed stage. It is not intended to
-be used by applications.
+Performs the actual binding of texture to the current content of
+the pixmap. Can be called to update the texture if the pixmap
+content has changed.
 
 Since: 0.8
 
 </description>
 <parameters>
-<parameter name="stage">
-<parameter_description> the #ClutterStage
+<parameter name="texture">
+<parameter_description> The texture whose content shall be updated.
+</parameter_description>
+</parameter>
+<parameter name="x">
+<parameter_description> the X coordinate of the area to update
+</parameter_description>
+</parameter>
+<parameter name="y">
+<parameter_description> the Y coordinate of the area to update
+</parameter_description>
+</parameter>
+<parameter name="width">
+<parameter_description> the width of the area to update
+</parameter_description>
+</parameter>
+<parameter name="height">
+<parameter_description> the height of the area to update
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_path_insert_node">
+<function name="clutter_x11_trap_x_errors">
 <description>
-Inserts @node into the path before the node at the given offset. If
-@index_ is negative it will append the node to the end of the path.
+Traps every X error until clutter_x11_untrap_x_errors() is called.
 
-Since: 1.0
+Since: 0.6
 
 </description>
 <parameters>
-<parameter name="path">
-<parameter_description> a #ClutterPath
-</parameter_description>
-</parameter>
-<parameter name="index_">
-<parameter_description> offset of where to insert the node
-</parameter_description>
-</parameter>
-<parameter name="node">
-<parameter_description> the node to insert
-</parameter_description>
-</parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_flow_layout_set_row_spacing">
+<function name="clutter_x11_untrap_x_errors">
 <description>
-Sets the spacing between rows, in pixels
+Removes the X error trap and returns the current status.
 
-Since: 1.2
+Since: 0.4
 
 </description>
 <parameters>
-<parameter name="layout">
-<parameter_description> a #ClutterFlowLayout
+</parameters>
+<return> the trapped error code, or 0 for success
+
+</return>
+</function>
+
+<function name="clutter_zoom_action_get_focal_point">
+<description>
+Retrieves the focal point of the current zoom
+
+Since: 1.12
+
+</description>
+<parameters>
+<parameter name="action">
+<parameter_description> a #ClutterZoomAction
 </parameter_description>
 </parameter>
-<parameter name="spacing">
-<parameter_description> the space between rows
+<parameter name="point">
+<parameter_description> a #ClutterPoint
 </parameter_description>
 </parameter>
 </parameters>
 <return></return>
 </function>
 
-<function name="clutter_rectangle_new">
+<function name="clutter_zoom_action_get_transformed_focal_point">
 <description>
-Creates a new #ClutterActor with a rectangular shape.
+Retrieves the focal point relative to the actor's coordinates of
+the current zoom
 
+Since: 1.12
 
 </description>
 <parameters>
+<parameter name="action">
+<parameter_description> a #ClutterZoomAction
+</parameter_description>
+</parameter>
+<parameter name="point">
+<parameter_description> a #ClutterPoint
+</parameter_description>
+</parameter>
 </parameters>
-<return> a new #ClutterActor
-</return>
+<return></return>
 </function>
 
-<function name="clutter_actor_get_pango_context">
+<function name="clutter_zoom_action_get_zoom_axis">
 <description>
-Retrieves the #PangoContext for @self. The actor's #PangoContext
-is already configured using the appropriate font map, resolution
-and font options.
-
-Unlike clutter_actor_create_pango_context(), this context is owend
-by the #ClutterActor and it will be updated each time the options
-stored by the #ClutterBackend change.
-
-You can use the returned #PangoContext to create a #PangoLayout
-and render text using cogl_pango_render_layout() to reuse the
-glyphs cache also used by Clutter.
+Retrieves the axis constraint set by clutter_zoom_action_set_zoom_axis()
 
-Since: 1.0
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="self">
-<parameter_description> a #ClutterActor
+<parameter name="action">
+<parameter_description> a #ClutterZoomAction
 </parameter_description>
 </parameter>
 </parameters>
-<return> the #PangoContext for a #ClutterActor.
-The returned #PangoContext is owned by the actor and should not be
-unreferenced by the application code
+<return> the axis constraint
 
 </return>
 </function>
 
-<function name="clutter_score_rewind">
+<function name="clutter_zoom_action_new">
 <description>
-Rewinds a #ClutterScore to its initial state.
+Creates a new #ClutterZoomAction instance
 
-Since: 0.6
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="score">
-<parameter_description> A #ClutterScore
-</parameter_description>
-</parameter>
 </parameters>
-<return></return>
+<return> the newly created #ClutterZoomAction
+
+</return>
 </function>
 
-<function name="clutter_media_set_subtitle_font_name">
+<function name="clutter_zoom_action_set_zoom_axis">
 <description>
-Sets the font used by the subtitle renderer. The @font_name string must be
-either %NULL, which means that the default font name of the underlying
-implementation will be used; or must follow the grammar recognized by
-pango_font_description_from_string() like:
-
-|[
-clutter_media_set_subtitle_font_name (media, &quot;Sans 24pt&quot;);
-]|
+Restricts the zooming action to a specific axis
 
-Since: 1.2
+Since: 1.12
 
 </description>
 <parameters>
-<parameter name="media">
-<parameter_description> a #ClutterMedia
+<parameter name="action">
+<parameter_description> a #ClutterZoomAction
 </parameter_description>
 </parameter>
-<parameter name="font_name">
-<parameter_description> a font name, or %NULL to set the default font name
+<parameter name="axis">
+<parameter_description> the axis to constraint the zooming to
 </parameter_description>
 </parameter>
 </parameters>
diff --git a/clutter/src/clutter_enums.defs b/clutter/src/clutter_enums.defs
index 9259480..f81c101 100644
--- a/clutter/src/clutter_enums.defs
+++ b/clutter/src/clutter_enums.defs
@@ -1,115 +1,48 @@
-;; From clutter-actor.h
+;; From clutter-actor-private.h
 
 ;; Original typedef:
 ;; typedef enum
 ;; {
-;;   CLUTTER_ACTOR_MAPPED    = 1 << 1,
-;;   CLUTTER_ACTOR_REALIZED  = 1 << 2,
-;;   CLUTTER_ACTOR_REACTIVE  = 1 << 3,
-;;   CLUTTER_ACTOR_VISIBLE   = 1 << 4,
-;;   CLUTTER_ACTOR_NO_LAYOUT = 1 << 5
-;; } ClutterActorFlags;
-
-(define-flags-extended ActorFlags
-  (in-module "Clutter")
-  (c-name "ClutterActorFlags")
-  (values
-    '("mapped" "CLUTTER_ACTOR_MAPPED" "1 << 1")
-    '("realized" "CLUTTER_ACTOR_REALIZED" "1 << 2")
-    '("reactive" "CLUTTER_ACTOR_REACTIVE" "1 << 3")
-    '("visible" "CLUTTER_ACTOR_VISIBLE" "1 << 4")
-    '("no-layout" "CLUTTER_ACTOR_NO_LAYOUT" "1 << 5")
-  )
-)
-
-;; Original typedef:
-;; typedef enum
-;; {
-;;   CLUTTER_ALLOCATION_NONE         = 0,
-;;   CLUTTER_ABSOLUTE_ORIGIN_CHANGED = 1 << 1
-;; } ClutterAllocationFlags;
-
-(define-flags-extended AllocationFlags
-  (in-module "Clutter")
-  (c-name "ClutterAllocationFlags")
-  (values
-    '("allocation-none" "CLUTTER_ALLOCATION_NONE" "0x0")
-    '("absolute-origin-changed" "CLUTTER_ABSOLUTE_ORIGIN_CHANGED" "1 << 1")
-  )
-)
-
-;; Original typedef:
-;; typedef enum
-;; {
-;;   CLUTTER_REDRAW_CLIPPED_TO_BOX         = 0,
-;;   CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION  = 1 << 1
+;;   CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION  = 1 << 0
 ;; } ClutterRedrawFlags;
 
 (define-flags-extended RedrawFlags
   (in-module "Clutter")
   (c-name "ClutterRedrawFlags")
   (values
-    '("box" "CLUTTER_REDRAW_CLIPPED_TO_BOX" "0x0")
-    '("allocation" "CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION" "1 << 1")
+    '("clipped-to-allocation" "CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION" "1 << 0")
   )
 )
 
-;; From clutter-animator.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_INTERPOLATION_LINEAR,
-;;   CLUTTER_INTERPOLATION_CUBIC
-;; } ClutterInterpolation;
+;;   CLUTTER_ACTOR_TRAVERSE_DEPTH_FIRST   = 1L<<0,
+;;   CLUTTER_ACTOR_TRAVERSE_BREADTH_FIRST = 1L<<1
+;; } ClutterActorTraverseFlags;
 
-(define-enum-extended Interpolation
+(define-flags-extended ActorTraverseFlags
   (in-module "Clutter")
-  (c-name "ClutterInterpolation")
+  (c-name "ClutterActorTraverseFlags")
   (values
-    '("linear" "CLUTTER_INTERPOLATION_LINEAR" "0")
-    '("cubic" "CLUTTER_INTERPOLATION_CUBIC" "1")
+    '("depth-first" "CLUTTER_ACTOR_TRAVERSE_DEPTH_FIRST" "1L<<0")
+    '("breadth-first" "CLUTTER_ACTOR_TRAVERSE_BREADTH_FIRST" "1L<<1")
   )
 )
 
-;; From clutter-bin-layout.h
-
-;; Original typedef:
-;; typedef enum {
-;;   CLUTTER_BIN_ALIGNMENT_FIXED,
-;;   CLUTTER_BIN_ALIGNMENT_FILL,
-;;   CLUTTER_BIN_ALIGNMENT_START,
-;;   CLUTTER_BIN_ALIGNMENT_END,
-;;   CLUTTER_BIN_ALIGNMENT_CENTER
-;; } ClutterBinAlignment;
-
-(define-enum-extended BinAlignment
-  (in-module "Clutter")
-  (c-name "ClutterBinAlignment")
-  (values
-    '("fixed" "CLUTTER_BIN_ALIGNMENT_FIXED" "0")
-    '("fill" "CLUTTER_BIN_ALIGNMENT_FILL" "1")
-    '("start" "CLUTTER_BIN_ALIGNMENT_START" "2")
-    '("end" "CLUTTER_BIN_ALIGNMENT_END" "3")
-    '("center" "CLUTTER_BIN_ALIGNMENT_CENTER" "4")
-  )
-)
-
-;; From clutter-box-layout.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_BOX_ALIGNMENT_START,
-;;   CLUTTER_BOX_ALIGNMENT_END,
-;;   CLUTTER_BOX_ALIGNMENT_CENTER
-;; } ClutterBoxAlignment;
+;;   CLUTTER_ACTOR_TRAVERSE_VISIT_CONTINUE       = 1L<<0,
+;;   CLUTTER_ACTOR_TRAVERSE_VISIT_SKIP_CHILDREN  = 1L<<1,
+;;   CLUTTER_ACTOR_TRAVERSE_VISIT_BREAK          = 1L<<2
+;; } ClutterActorTraverseVisitFlags;
 
-(define-enum-extended BoxAlignment
+(define-flags-extended ActorTraverseVisitFlags
   (in-module "Clutter")
-  (c-name "ClutterBoxAlignment")
+  (c-name "ClutterActorTraverseVisitFlags")
   (values
-    '("start" "CLUTTER_BOX_ALIGNMENT_START" "0")
-    '("end" "CLUTTER_BOX_ALIGNMENT_END" "1")
-    '("center" "CLUTTER_BOX_ALIGNMENT_CENTER" "2")
+    '("continue" "CLUTTER_ACTOR_TRAVERSE_VISIT_CONTINUE" "1L<<0")
+    '("skip-children" "CLUTTER_ACTOR_TRAVERSE_VISIT_SKIP_CHILDREN" "1L<<1")
+    '("break" "CLUTTER_ACTOR_TRAVERSE_VISIT_BREAK" "1L<<2")
   )
 )
 
@@ -122,17 +55,18 @@
 ;;   CLUTTER_DEBUG_TEXTURE             = 1 << 2,
 ;;   CLUTTER_DEBUG_EVENT               = 1 << 3,
 ;;   CLUTTER_DEBUG_PAINT               = 1 << 4,
-;;   CLUTTER_DEBUG_GL                  = 1 << 5,
-;;   CLUTTER_DEBUG_ALPHA               = 1 << 6,
-;;   CLUTTER_DEBUG_BEHAVIOUR           = 1 << 7,
-;;   CLUTTER_DEBUG_PANGO               = 1 << 8,
-;;   CLUTTER_DEBUG_BACKEND             = 1 << 9,
-;;   CLUTTER_DEBUG_SCHEDULER           = 1 << 10,
-;;   CLUTTER_DEBUG_SCRIPT              = 1 << 11,
-;;   CLUTTER_DEBUG_SHADER              = 1 << 12,
-;;   CLUTTER_DEBUG_MULTISTAGE          = 1 << 13,
-;;   CLUTTER_DEBUG_ANIMATION           = 1 << 14,
-;;   CLUTTER_DEBUG_LAYOUT              = 1 << 15
+;;   CLUTTER_DEBUG_PANGO               = 1 << 5,
+;;   CLUTTER_DEBUG_BACKEND             = 1 << 6,
+;;   CLUTTER_DEBUG_SCHEDULER           = 1 << 7,
+;;   CLUTTER_DEBUG_SCRIPT              = 1 << 8,
+;;   CLUTTER_DEBUG_SHADER              = 1 << 9,
+;;   CLUTTER_DEBUG_MULTISTAGE          = 1 << 10,
+;;   CLUTTER_DEBUG_ANIMATION           = 1 << 11,
+;;   CLUTTER_DEBUG_LAYOUT              = 1 << 12,
+;;   CLUTTER_DEBUG_PICK                = 1 << 13,
+;;   CLUTTER_DEBUG_EVENTLOOP           = 1 << 14,
+;;   CLUTTER_DEBUG_CLIPPING            = 1 << 15,
+;;   CLUTTER_DEBUG_OOB_TRANSFORMS      = 1 << 16
 ;; } ClutterDebugFlag;
 
 (define-flags-extended DebugFlag
@@ -144,17 +78,18 @@
     '("texture" "CLUTTER_DEBUG_TEXTURE" "1 << 2")
     '("event" "CLUTTER_DEBUG_EVENT" "1 << 3")
     '("paint" "CLUTTER_DEBUG_PAINT" "1 << 4")
-    '("gl" "CLUTTER_DEBUG_GL" "1 << 5")
-    '("alpha" "CLUTTER_DEBUG_ALPHA" "1 << 6")
-    '("behaviour" "CLUTTER_DEBUG_BEHAVIOUR" "1 << 7")
-    '("pango" "CLUTTER_DEBUG_PANGO" "1 << 8")
-    '("backend" "CLUTTER_DEBUG_BACKEND" "1 << 9")
-    '("scheduler" "CLUTTER_DEBUG_SCHEDULER" "1 << 10")
-    '("script" "CLUTTER_DEBUG_SCRIPT" "1 << 11")
-    '("shader" "CLUTTER_DEBUG_SHADER" "1 << 12")
-    '("multistage" "CLUTTER_DEBUG_MULTISTAGE" "1 << 13")
-    '("animation" "CLUTTER_DEBUG_ANIMATION" "1 << 14")
-    '("layout" "CLUTTER_DEBUG_LAYOUT" "1 << 15")
+    '("pango" "CLUTTER_DEBUG_PANGO" "1 << 5")
+    '("backend" "CLUTTER_DEBUG_BACKEND" "1 << 6")
+    '("scheduler" "CLUTTER_DEBUG_SCHEDULER" "1 << 7")
+    '("script" "CLUTTER_DEBUG_SCRIPT" "1 << 8")
+    '("shader" "CLUTTER_DEBUG_SHADER" "1 << 9")
+    '("multistage" "CLUTTER_DEBUG_MULTISTAGE" "1 << 10")
+    '("animation" "CLUTTER_DEBUG_ANIMATION" "1 << 11")
+    '("layout" "CLUTTER_DEBUG_LAYOUT" "1 << 12")
+    '("pick" "CLUTTER_DEBUG_PICK" "1 << 13")
+    '("eventloop" "CLUTTER_DEBUG_EVENTLOOP" "1 << 14")
+    '("clipping" "CLUTTER_DEBUG_CLIPPING" "1 << 15")
+    '("oob-transforms" "CLUTTER_DEBUG_OOB_TRANSFORMS" "1 << 16")
   )
 )
 
@@ -177,7 +112,12 @@
 ;; typedef enum {
 ;;   CLUTTER_DEBUG_DISABLE_SWAP_EVENTS     = 1 << 0,
 ;;   CLUTTER_DEBUG_DISABLE_CLIPPED_REDRAWS = 1 << 1,
-;;   CLUTTER_DEBUG_REDRAWS                 = 1 << 2
+;;   CLUTTER_DEBUG_REDRAWS                 = 1 << 2,
+;;   CLUTTER_DEBUG_PAINT_VOLUMES           = 1 << 3,
+;;   CLUTTER_DEBUG_DISABLE_CULLING         = 1 << 4,
+;;   CLUTTER_DEBUG_DISABLE_OFFSCREEN_REDIRECT = 1 << 5,
+;;   CLUTTER_DEBUG_CONTINUOUS_REDRAW       = 1 << 6,
+;;   CLUTTER_DEBUG_PAINT_DEFORM_TILES      = 1 << 7
 ;; } ClutterDrawDebugFlag;
 
 (define-flags-extended DrawDebugFlag
@@ -187,10 +127,200 @@
     '("disable-swap-events" "CLUTTER_DEBUG_DISABLE_SWAP_EVENTS" "1 << 0")
     '("disable-clipped-redraws" "CLUTTER_DEBUG_DISABLE_CLIPPED_REDRAWS" "1 << 1")
     '("redraws" "CLUTTER_DEBUG_REDRAWS" "1 << 2")
+    '("paint-volumes" "CLUTTER_DEBUG_PAINT_VOLUMES" "1 << 3")
+    '("disable-culling" "CLUTTER_DEBUG_DISABLE_CULLING" "1 << 4")
+    '("disable-offscreen-redirect" "CLUTTER_DEBUG_DISABLE_OFFSCREEN_REDIRECT" "1 << 5")
+    '("continuous-redraw" "CLUTTER_DEBUG_CONTINUOUS_REDRAW" "1 << 6")
+    '("paint-deform-tiles" "CLUTTER_DEBUG_PAINT_DEFORM_TILES" "1 << 7")
+  )
+)
+
+;; From clutter-enums.h
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER >*/
+;;   CLUTTER_X_AXIS,
+;;   CLUTTER_Y_AXIS,
+;;   CLUTTER_Z_AXIS
+;; } ClutterRotateAxis;
+
+(define-enum-extended RotateAxis
+  (in-module "Clutter")
+  (c-name "ClutterRotateAxis")
+  (values
+    '("x-axis" "CLUTTER_X_AXIS" "0")
+    '("y-axis" "CLUTTER_Y_AXIS" "1")
+    '("z-axis" "CLUTTER_Z_AXIS" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_REQUEST >*/
+;;   CLUTTER_REQUEST_HEIGHT_FOR_WIDTH,
+;;   CLUTTER_REQUEST_WIDTH_FOR_HEIGHT
+;; } ClutterRequestMode;
+
+(define-enum-extended RequestMode
+  (in-module "Clutter")
+  (c-name "ClutterRequestMode")
+  (values
+    '("height-for-width" "CLUTTER_REQUEST_HEIGHT_FOR_WIDTH" "0")
+    '("width-for-height" "CLUTTER_REQUEST_WIDTH_FOR_HEIGHT" "1")
   )
 )
 
-;; From clutter-event.h
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_CUSTOM_MODE = 0,
+;; 
+;;   /* linear */
+;;   CLUTTER_LINEAR,
+;; 
+;;   /* quadratic */
+;;   CLUTTER_EASE_IN_QUAD,
+;;   CLUTTER_EASE_OUT_QUAD,
+;;   CLUTTER_EASE_IN_OUT_QUAD,
+;; 
+;;   /* cubic */
+;;   CLUTTER_EASE_IN_CUBIC,
+;;   CLUTTER_EASE_OUT_CUBIC,
+;;   CLUTTER_EASE_IN_OUT_CUBIC,
+;; 
+;;   /* quartic */
+;;   CLUTTER_EASE_IN_QUART,
+;;   CLUTTER_EASE_OUT_QUART,
+;;   CLUTTER_EASE_IN_OUT_QUART,
+;; 
+;;   /* quintic */
+;;   CLUTTER_EASE_IN_QUINT,
+;;   CLUTTER_EASE_OUT_QUINT,
+;;   CLUTTER_EASE_IN_OUT_QUINT,
+;; 
+;;   /* sinusoidal */
+;;   CLUTTER_EASE_IN_SINE,
+;;   CLUTTER_EASE_OUT_SINE,
+;;   CLUTTER_EASE_IN_OUT_SINE,
+;; 
+;;   /* exponential */
+;;   CLUTTER_EASE_IN_EXPO,
+;;   CLUTTER_EASE_OUT_EXPO,
+;;   CLUTTER_EASE_IN_OUT_EXPO,
+;; 
+;;   /* circular */
+;;   CLUTTER_EASE_IN_CIRC,
+;;   CLUTTER_EASE_OUT_CIRC,
+;;   CLUTTER_EASE_IN_OUT_CIRC,
+;; 
+;;   /* elastic */
+;;   CLUTTER_EASE_IN_ELASTIC,
+;;   CLUTTER_EASE_OUT_ELASTIC,
+;;   CLUTTER_EASE_IN_OUT_ELASTIC,
+;; 
+;;   /* overshooting cubic */
+;;   CLUTTER_EASE_IN_BACK,
+;;   CLUTTER_EASE_OUT_BACK,
+;;   CLUTTER_EASE_IN_OUT_BACK,
+;; 
+;;   /* exponentially decaying parabolic */
+;;   CLUTTER_EASE_IN_BOUNCE,
+;;   CLUTTER_EASE_OUT_BOUNCE,
+;;   CLUTTER_EASE_IN_OUT_BOUNCE,
+;; 
+;;   /* step functions (see css3-transitions) */
+;;   CLUTTER_STEPS,
+;;   CLUTTER_STEP_START, /* steps(1, start) */
+;;   CLUTTER_STEP_END, /* steps(1, end) */
+;; 
+;;   /* cubic bezier (see css3-transitions) */
+;;   CLUTTER_CUBIC_BEZIER,
+;;   CLUTTER_EASE,
+;;   CLUTTER_EASE_IN,
+;;   CLUTTER_EASE_OUT,
+;;   CLUTTER_EASE_IN_OUT,
+;; 
+;;   /* guard */
+;;   CLUTTER_ANIMATION_LAST
+;; } ClutterAnimationMode;
+
+(define-enum-extended AnimationMode
+  (in-module "Clutter")
+  (c-name "ClutterAnimationMode")
+  (values
+    '("custom-mode" "CLUTTER_CUSTOM_MODE" "0")
+    '("linear" "CLUTTER_LINEAR" "1")
+    '("ease-in-quad" "CLUTTER_EASE_IN_QUAD" "2")
+    '("ease-out-quad" "CLUTTER_EASE_OUT_QUAD" "3")
+    '("ease-in-out-quad" "CLUTTER_EASE_IN_OUT_QUAD" "4")
+    '("ease-in-cubic" "CLUTTER_EASE_IN_CUBIC" "5")
+    '("ease-out-cubic" "CLUTTER_EASE_OUT_CUBIC" "6")
+    '("ease-in-out-cubic" "CLUTTER_EASE_IN_OUT_CUBIC" "7")
+    '("ease-in-quart" "CLUTTER_EASE_IN_QUART" "8")
+    '("ease-out-quart" "CLUTTER_EASE_OUT_QUART" "9")
+    '("ease-in-out-quart" "CLUTTER_EASE_IN_OUT_QUART" "10")
+    '("ease-in-quint" "CLUTTER_EASE_IN_QUINT" "11")
+    '("ease-out-quint" "CLUTTER_EASE_OUT_QUINT" "12")
+    '("ease-in-out-quint" "CLUTTER_EASE_IN_OUT_QUINT" "13")
+    '("ease-in-sine" "CLUTTER_EASE_IN_SINE" "14")
+    '("ease-out-sine" "CLUTTER_EASE_OUT_SINE" "15")
+    '("ease-in-out-sine" "CLUTTER_EASE_IN_OUT_SINE" "16")
+    '("ease-in-expo" "CLUTTER_EASE_IN_EXPO" "17")
+    '("ease-out-expo" "CLUTTER_EASE_OUT_EXPO" "18")
+    '("ease-in-out-expo" "CLUTTER_EASE_IN_OUT_EXPO" "19")
+    '("ease-in-circ" "CLUTTER_EASE_IN_CIRC" "20")
+    '("ease-out-circ" "CLUTTER_EASE_OUT_CIRC" "21")
+    '("ease-in-out-circ" "CLUTTER_EASE_IN_OUT_CIRC" "22")
+    '("ease-in-elastic" "CLUTTER_EASE_IN_ELASTIC" "23")
+    '("ease-out-elastic" "CLUTTER_EASE_OUT_ELASTIC" "24")
+    '("ease-in-out-elastic" "CLUTTER_EASE_IN_OUT_ELASTIC" "25")
+    '("ease-in-back" "CLUTTER_EASE_IN_BACK" "26")
+    '("ease-out-back" "CLUTTER_EASE_OUT_BACK" "27")
+    '("ease-in-out-back" "CLUTTER_EASE_IN_OUT_BACK" "28")
+    '("ease-in-bounce" "CLUTTER_EASE_IN_BOUNCE" "29")
+    '("ease-out-bounce" "CLUTTER_EASE_OUT_BOUNCE" "30")
+    '("ease-in-out-bounce" "CLUTTER_EASE_IN_OUT_BOUNCE" "31")
+    '("steps" "CLUTTER_STEPS" "32")
+    '("step-start" "CLUTTER_STEP_START" "33")
+    '("step-end" "CLUTTER_STEP_END" "34")
+    '("cubic-bezier" "CLUTTER_CUBIC_BEZIER" "35")
+    '("ease" "CLUTTER_EASE" "36")
+    '("ease-in" "CLUTTER_EASE_IN" "37")
+    '("ease-out" "CLUTTER_EASE_OUT" "38")
+    '("ease-in-out" "CLUTTER_EASE_IN_OUT" "39")
+    '("animation-last" "CLUTTER_ANIMATION_LAST" "40")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_TEXT_DIRECTION_DEFAULT,
+;;   CLUTTER_TEXT_DIRECTION_LTR,
+;;   CLUTTER_TEXT_DIRECTION_RTL
+;; } ClutterTextDirection;
+
+(define-enum-extended TextDirection
+  (in-module "Clutter")
+  (c-name "ClutterTextDirection")
+  (values
+    '("default" "CLUTTER_TEXT_DIRECTION_DEFAULT" "0")
+    '("ltr" "CLUTTER_TEXT_DIRECTION_LTR" "1")
+    '("rtl" "CLUTTER_TEXT_DIRECTION_RTL" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_VERTEX_SHADER,
+;;   CLUTTER_FRAGMENT_SHADER
+;; } ClutterShaderType;
+
+(define-enum-extended ShaderType
+  (in-module "Clutter")
+  (c-name "ClutterShaderType")
+  (values
+    '("vertex-shader" "CLUTTER_VERTEX_SHADER" "0")
+    '("fragment-shader" "CLUTTER_FRAGMENT_SHADER" "1")
+  )
+)
 
 ;; Original typedef:
 ;; typedef enum {
@@ -208,14 +338,34 @@
 ;;   CLUTTER_BUTTON4_MASK  = 1 << 11,
 ;;   CLUTTER_BUTTON5_MASK  = 1 << 12,
 ;; 
-;;   /* bits 15 to 25 are currently unused; bit 29 is used internally */
+;; #ifndef __GTK_DOC_IGNORE__
+;;   CLUTTER_MODIFIER_RESERVED_13_MASK  = 1 << 13,
+;;   CLUTTER_MODIFIER_RESERVED_14_MASK  = 1 << 14,
+;;   CLUTTER_MODIFIER_RESERVED_15_MASK  = 1 << 15,
+;;   CLUTTER_MODIFIER_RESERVED_16_MASK  = 1 << 16,
+;;   CLUTTER_MODIFIER_RESERVED_17_MASK  = 1 << 17,
+;;   CLUTTER_MODIFIER_RESERVED_18_MASK  = 1 << 18,
+;;   CLUTTER_MODIFIER_RESERVED_19_MASK  = 1 << 19,
+;;   CLUTTER_MODIFIER_RESERVED_20_MASK  = 1 << 20,
+;;   CLUTTER_MODIFIER_RESERVED_21_MASK  = 1 << 21,
+;;   CLUTTER_MODIFIER_RESERVED_22_MASK  = 1 << 22,
+;;   CLUTTER_MODIFIER_RESERVED_23_MASK  = 1 << 23,
+;;   CLUTTER_MODIFIER_RESERVED_24_MASK  = 1 << 24,
+;;   CLUTTER_MODIFIER_RESERVED_25_MASK  = 1 << 25,
+;; #endif
 ;; 
 ;;   CLUTTER_SUPER_MASK    = 1 << 26,
 ;;   CLUTTER_HYPER_MASK    = 1 << 27,
 ;;   CLUTTER_META_MASK     = 1 << 28,
 ;; 
+;; #ifndef __GTK_DOC_IGNORE__
+;;   CLUTTER_MODIFIER_RESERVED_29_MASK  = 1 << 29,
+;; #endif
+;; 
 ;;   CLUTTER_RELEASE_MASK  = 1 << 30,
 ;; 
+;;   /* Combination of CLUTTER_SHIFT_MASK..CLUTTER_BUTTON5_MASK + CLUTTER_SUPER_MASK
+;;      + CLUTTER_HYPER_MASK + CLUTTER_META_MASK + CLUTTER_RELEASE_MASK */
 ;;   CLUTTER_MODIFIER_MASK = 0x5c001fff
 ;; } ClutterModifierType;
 
@@ -236,18 +386,281 @@
     '("button3-mask" "CLUTTER_BUTTON3_MASK" "1 << 10")
     '("button4-mask" "CLUTTER_BUTTON4_MASK" "1 << 11")
     '("button5-mask" "CLUTTER_BUTTON5_MASK" "1 << 12")
+    '("modifier-reserved-13-mask" "CLUTTER_MODIFIER_RESERVED_13_MASK" "1 << 13")
+    '("modifier-reserved-14-mask" "CLUTTER_MODIFIER_RESERVED_14_MASK" "1 << 14")
+    '("modifier-reserved-15-mask" "CLUTTER_MODIFIER_RESERVED_15_MASK" "1 << 15")
+    '("modifier-reserved-16-mask" "CLUTTER_MODIFIER_RESERVED_16_MASK" "1 << 16")
+    '("modifier-reserved-17-mask" "CLUTTER_MODIFIER_RESERVED_17_MASK" "1 << 17")
+    '("modifier-reserved-18-mask" "CLUTTER_MODIFIER_RESERVED_18_MASK" "1 << 18")
+    '("modifier-reserved-19-mask" "CLUTTER_MODIFIER_RESERVED_19_MASK" "1 << 19")
+    '("modifier-reserved-20-mask" "CLUTTER_MODIFIER_RESERVED_20_MASK" "1 << 20")
+    '("modifier-reserved-21-mask" "CLUTTER_MODIFIER_RESERVED_21_MASK" "1 << 21")
+    '("modifier-reserved-22-mask" "CLUTTER_MODIFIER_RESERVED_22_MASK" "1 << 22")
+    '("modifier-reserved-23-mask" "CLUTTER_MODIFIER_RESERVED_23_MASK" "1 << 23")
+    '("modifier-reserved-24-mask" "CLUTTER_MODIFIER_RESERVED_24_MASK" "1 << 24")
+    '("modifier-reserved-25-mask" "CLUTTER_MODIFIER_RESERVED_25_MASK" "1 << 25")
     '("super-mask" "CLUTTER_SUPER_MASK" "1 << 26")
     '("hyper-mask" "CLUTTER_HYPER_MASK" "1 << 27")
     '("meta-mask" "CLUTTER_META_MASK" "1 << 28")
+    '("modifier-reserved-29-mask" "CLUTTER_MODIFIER_RESERVED_29_MASK" "1 << 29")
     '("release-mask" "CLUTTER_RELEASE_MASK" "1 << 30")
     '("modifier-mask" "CLUTTER_MODIFIER_MASK" "0x5c001fff")
   )
 )
 
 ;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_ACTOR >*/
+;;   CLUTTER_ACTOR_MAPPED    = 1 << 1,
+;;   CLUTTER_ACTOR_REALIZED  = 1 << 2,
+;;   CLUTTER_ACTOR_REACTIVE  = 1 << 3,
+;;   CLUTTER_ACTOR_VISIBLE   = 1 << 4,
+;;   CLUTTER_ACTOR_NO_LAYOUT = 1 << 5
+;; } ClutterActorFlags;
+
+(define-flags-extended ActorFlags
+  (in-module "Clutter")
+  (c-name "ClutterActorFlags")
+  (values
+    '("mapped" "CLUTTER_ACTOR_MAPPED" "1 << 1")
+    '("realized" "CLUTTER_ACTOR_REALIZED" "1 << 2")
+    '("reactive" "CLUTTER_ACTOR_REACTIVE" "1 << 3")
+    '("visible" "CLUTTER_ACTOR_VISIBLE" "1 << 4")
+    '("no-layout" "CLUTTER_ACTOR_NO_LAYOUT" "1 << 5")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_OFFSCREEN_REDIRECT >*/
+;;   CLUTTER_OFFSCREEN_REDIRECT_AUTOMATIC_FOR_OPACITY = 1<<0,
+;;   CLUTTER_OFFSCREEN_REDIRECT_ALWAYS = 1<<1
+;; } ClutterOffscreenRedirect;
+
+(define-flags-extended OffscreenRedirect
+  (in-module "Clutter")
+  (c-name "ClutterOffscreenRedirect")
+  (values
+    '("automatic-for-opacity" "CLUTTER_OFFSCREEN_REDIRECT_AUTOMATIC_FOR_OPACITY" "1<<0")
+    '("always" "CLUTTER_OFFSCREEN_REDIRECT_ALWAYS" "1<<1")
+  )
+)
+
+;; Original typedef:
 ;; typedef enum {
+;;   CLUTTER_ALLOCATION_NONE         = 0,
+;;   CLUTTER_ABSOLUTE_ORIGIN_CHANGED = 1 << 1,
+;;   CLUTTER_DELEGATE_LAYOUT         = 1 << 2
+;; } ClutterAllocationFlags;
+
+(define-flags-extended AllocationFlags
+  (in-module "Clutter")
+  (c-name "ClutterAllocationFlags")
+  (values
+    '("allocation-none" "CLUTTER_ALLOCATION_NONE" "0x0")
+    '("absolute-origin-changed" "CLUTTER_ABSOLUTE_ORIGIN_CHANGED" "1 << 1")
+    '("delegate-layout" "CLUTTER_DELEGATE_LAYOUT" "1 << 2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_ALIGN >*/
+;;   CLUTTER_ALIGN_X_AXIS,
+;;   CLUTTER_ALIGN_Y_AXIS,
+;;   CLUTTER_ALIGN_BOTH
+;; } ClutterAlignAxis;
+
+(define-enum-extended AlignAxis
+  (in-module "Clutter")
+  (c-name "ClutterAlignAxis")
+  (values
+    '("x-axis" "CLUTTER_ALIGN_X_AXIS" "0")
+    '("y-axis" "CLUTTER_ALIGN_Y_AXIS" "1")
+    '("both" "CLUTTER_ALIGN_BOTH" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_BIND >*/
+;;   CLUTTER_BIND_X,
+;;   CLUTTER_BIND_Y,
+;;   CLUTTER_BIND_WIDTH,
+;;   CLUTTER_BIND_HEIGHT,
+;;   CLUTTER_BIND_POSITION,
+;;   CLUTTER_BIND_SIZE,
+;;   CLUTTER_BIND_ALL
+;; } ClutterBindCoordinate;
+
+(define-enum-extended BindCoordinate
+  (in-module "Clutter")
+  (c-name "ClutterBindCoordinate")
+  (values
+    '("x" "CLUTTER_BIND_X" "0")
+    '("y" "CLUTTER_BIND_Y" "1")
+    '("width" "CLUTTER_BIND_WIDTH" "2")
+    '("height" "CLUTTER_BIND_HEIGHT" "3")
+    '("position" "CLUTTER_BIND_POSITION" "4")
+    '("size" "CLUTTER_BIND_SIZE" "5")
+    '("all" "CLUTTER_BIND_ALL" "6")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_EFFECT_PAINT >*/
+;;   CLUTTER_EFFECT_PAINT_ACTOR_DIRTY = (1 << 0)
+;; } ClutterEffectPaintFlags;
+
+(define-flags-extended EffectPaintFlags
+  (in-module "Clutter")
+  (c-name "ClutterEffectPaintFlags")
+  (values
+    '("actor-dirty" "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY" "(1 << 0)")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_LONG_PRESS >*/
+;;   CLUTTER_LONG_PRESS_QUERY,
+;;   CLUTTER_LONG_PRESS_ACTIVATE,
+;;   CLUTTER_LONG_PRESS_CANCEL
+;; } ClutterLongPressState;
+
+(define-enum-extended LongPressState
+  (in-module "Clutter")
+  (c-name "ClutterLongPressState")
+  (values
+    '("query" "CLUTTER_LONG_PRESS_QUERY" "0")
+    '("activate" "CLUTTER_LONG_PRESS_ACTIVATE" "1")
+    '("cancel" "CLUTTER_LONG_PRESS_CANCEL" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_COLOR >*/
+;;   /* CGA/EGA-like palette */
+;;   CLUTTER_COLOR_WHITE           = 0,
+;;   CLUTTER_COLOR_BLACK,
+;;   CLUTTER_COLOR_RED,
+;;   CLUTTER_COLOR_DARK_RED,
+;;   CLUTTER_COLOR_GREEN,
+;;   CLUTTER_COLOR_DARK_GREEN,
+;;   CLUTTER_COLOR_BLUE,
+;;   CLUTTER_COLOR_DARK_BLUE,
+;;   CLUTTER_COLOR_CYAN,
+;;   CLUTTER_COLOR_DARK_CYAN,
+;;   CLUTTER_COLOR_MAGENTA,
+;;   CLUTTER_COLOR_DARK_MAGENTA,
+;;   CLUTTER_COLOR_YELLOW,
+;;   CLUTTER_COLOR_DARK_YELLOW,
+;;   CLUTTER_COLOR_GRAY,
+;;   CLUTTER_COLOR_DARK_GRAY,
+;;   CLUTTER_COLOR_LIGHT_GRAY,
+;; 
+;;   /* Tango icon palette */
+;;   CLUTTER_COLOR_BUTTER,
+;;   CLUTTER_COLOR_BUTTER_LIGHT,
+;;   CLUTTER_COLOR_BUTTER_DARK,
+;;   CLUTTER_COLOR_ORANGE,
+;;   CLUTTER_COLOR_ORANGE_LIGHT,
+;;   CLUTTER_COLOR_ORANGE_DARK,
+;;   CLUTTER_COLOR_CHOCOLATE,
+;;   CLUTTER_COLOR_CHOCOLATE_LIGHT,
+;;   CLUTTER_COLOR_CHOCOLATE_DARK,
+;;   CLUTTER_COLOR_CHAMELEON,
+;;   CLUTTER_COLOR_CHAMELEON_LIGHT,
+;;   CLUTTER_COLOR_CHAMELEON_DARK,
+;;   CLUTTER_COLOR_SKY_BLUE,
+;;   CLUTTER_COLOR_SKY_BLUE_LIGHT,
+;;   CLUTTER_COLOR_SKY_BLUE_DARK,
+;;   CLUTTER_COLOR_PLUM,
+;;   CLUTTER_COLOR_PLUM_LIGHT,
+;;   CLUTTER_COLOR_PLUM_DARK,
+;;   CLUTTER_COLOR_SCARLET_RED,
+;;   CLUTTER_COLOR_SCARLET_RED_LIGHT,
+;;   CLUTTER_COLOR_SCARLET_RED_DARK,
+;;   CLUTTER_COLOR_ALUMINIUM_1,
+;;   CLUTTER_COLOR_ALUMINIUM_2,
+;;   CLUTTER_COLOR_ALUMINIUM_3,
+;;   CLUTTER_COLOR_ALUMINIUM_4,
+;;   CLUTTER_COLOR_ALUMINIUM_5,
+;;   CLUTTER_COLOR_ALUMINIUM_6,
+;; 
+;;   /* Fully transparent black */
+;;   CLUTTER_COLOR_TRANSPARENT
+;; } ClutterStaticColor;
+
+(define-enum-extended StaticColor
+  (in-module "Clutter")
+  (c-name "ClutterStaticColor")
+  (values
+    '("white" "CLUTTER_COLOR_WHITE" "0")
+    '("black" "CLUTTER_COLOR_BLACK" "1")
+    '("red" "CLUTTER_COLOR_RED" "2")
+    '("dark-red" "CLUTTER_COLOR_DARK_RED" "3")
+    '("green" "CLUTTER_COLOR_GREEN" "4")
+    '("dark-green" "CLUTTER_COLOR_DARK_GREEN" "5")
+    '("blue" "CLUTTER_COLOR_BLUE" "6")
+    '("dark-blue" "CLUTTER_COLOR_DARK_BLUE" "7")
+    '("cyan" "CLUTTER_COLOR_CYAN" "8")
+    '("dark-cyan" "CLUTTER_COLOR_DARK_CYAN" "9")
+    '("magenta" "CLUTTER_COLOR_MAGENTA" "10")
+    '("dark-magenta" "CLUTTER_COLOR_DARK_MAGENTA" "11")
+    '("yellow" "CLUTTER_COLOR_YELLOW" "12")
+    '("dark-yellow" "CLUTTER_COLOR_DARK_YELLOW" "13")
+    '("gray" "CLUTTER_COLOR_GRAY" "14")
+    '("dark-gray" "CLUTTER_COLOR_DARK_GRAY" "15")
+    '("light-gray" "CLUTTER_COLOR_LIGHT_GRAY" "16")
+    '("butter" "CLUTTER_COLOR_BUTTER" "17")
+    '("butter-light" "CLUTTER_COLOR_BUTTER_LIGHT" "18")
+    '("butter-dark" "CLUTTER_COLOR_BUTTER_DARK" "19")
+    '("orange" "CLUTTER_COLOR_ORANGE" "20")
+    '("orange-light" "CLUTTER_COLOR_ORANGE_LIGHT" "21")
+    '("orange-dark" "CLUTTER_COLOR_ORANGE_DARK" "22")
+    '("chocolate" "CLUTTER_COLOR_CHOCOLATE" "23")
+    '("chocolate-light" "CLUTTER_COLOR_CHOCOLATE_LIGHT" "24")
+    '("chocolate-dark" "CLUTTER_COLOR_CHOCOLATE_DARK" "25")
+    '("chameleon" "CLUTTER_COLOR_CHAMELEON" "26")
+    '("chameleon-light" "CLUTTER_COLOR_CHAMELEON_LIGHT" "27")
+    '("chameleon-dark" "CLUTTER_COLOR_CHAMELEON_DARK" "28")
+    '("sky-blue" "CLUTTER_COLOR_SKY_BLUE" "29")
+    '("sky-blue-light" "CLUTTER_COLOR_SKY_BLUE_LIGHT" "30")
+    '("sky-blue-dark" "CLUTTER_COLOR_SKY_BLUE_DARK" "31")
+    '("plum" "CLUTTER_COLOR_PLUM" "32")
+    '("plum-light" "CLUTTER_COLOR_PLUM_LIGHT" "33")
+    '("plum-dark" "CLUTTER_COLOR_PLUM_DARK" "34")
+    '("scarlet-red" "CLUTTER_COLOR_SCARLET_RED" "35")
+    '("scarlet-red-light" "CLUTTER_COLOR_SCARLET_RED_LIGHT" "36")
+    '("scarlet-red-dark" "CLUTTER_COLOR_SCARLET_RED_DARK" "37")
+    '("aluminium-1" "CLUTTER_COLOR_ALUMINIUM_1" "38")
+    '("aluminium-2" "CLUTTER_COLOR_ALUMINIUM_2" "39")
+    '("aluminium-3" "CLUTTER_COLOR_ALUMINIUM_3" "40")
+    '("aluminium-4" "CLUTTER_COLOR_ALUMINIUM_4" "41")
+    '("aluminium-5" "CLUTTER_COLOR_ALUMINIUM_5" "42")
+    '("aluminium-6" "CLUTTER_COLOR_ALUMINIUM_6" "43")
+    '("transparent" "CLUTTER_COLOR_TRANSPARENT" "44")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_DRAG >*/
+;;   CLUTTER_DRAG_AXIS_NONE = 0,
+;; 
+;;   CLUTTER_DRAG_X_AXIS,
+;;   CLUTTER_DRAG_Y_AXIS
+;; } ClutterDragAxis;
+
+(define-enum-extended DragAxis
+  (in-module "Clutter")
+  (c-name "ClutterDragAxis")
+  (values
+    '("axis-none" "CLUTTER_DRAG_AXIS_NONE" "0")
+    '("x-axis" "CLUTTER_DRAG_X_AXIS" "1")
+    '("y-axis" "CLUTTER_DRAG_Y_AXIS" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< flags prefix=CLUTTER_EVENT >*/
 ;;   CLUTTER_EVENT_NONE           = 0,
-;;   CLUTTER_EVENT_FLAG_SYNTHETIC = 1 << 0,
+;;   CLUTTER_EVENT_FLAG_SYNTHETIC = 1 << 0
 ;; } ClutterEventFlags;
 
 (define-flags-extended EventFlags
@@ -260,8 +673,7 @@
 )
 
 ;; Original typedef:
-;; typedef enum 
-;; {
+;; typedef enum { /*< prefix=CLUTTER >*/
 ;;   CLUTTER_NOTHING = 0,
 ;;   CLUTTER_KEY_PRESS,
 ;;   CLUTTER_KEY_RELEASE,
@@ -274,7 +686,13 @@
 ;;   CLUTTER_STAGE_STATE,
 ;;   CLUTTER_DESTROY_NOTIFY,
 ;;   CLUTTER_CLIENT_MESSAGE,
-;;   CLUTTER_DELETE
+;;   CLUTTER_DELETE,
+;;   CLUTTER_TOUCH_BEGIN,
+;;   CLUTTER_TOUCH_UPDATE,
+;;   CLUTTER_TOUCH_END,
+;;   CLUTTER_TOUCH_CANCEL,
+;; 
+;;   CLUTTER_EVENT_LAST            /* helper */
 ;; } ClutterEventType;
 
 (define-enum-extended EventType
@@ -294,16 +712,21 @@
     '("destroy-notify" "CLUTTER_DESTROY_NOTIFY" "10")
     '("client-message" "CLUTTER_CLIENT_MESSAGE" "11")
     '("delete" "CLUTTER_DELETE" "12")
+    '("touch-begin" "CLUTTER_TOUCH_BEGIN" "13")
+    '("touch-update" "CLUTTER_TOUCH_UPDATE" "14")
+    '("touch-end" "CLUTTER_TOUCH_END" "15")
+    '("touch-cancel" "CLUTTER_TOUCH_CANCEL" "16")
+    '("event-last" "CLUTTER_EVENT_LAST" "17")
   )
 )
 
 ;; Original typedef:
-;; typedef enum
-;; {
+;; typedef enum { /*< prefix=CLUTTER_SCROLL >*/
 ;;   CLUTTER_SCROLL_UP,
 ;;   CLUTTER_SCROLL_DOWN,
 ;;   CLUTTER_SCROLL_LEFT,
-;;   CLUTTER_SCROLL_RIGHT
+;;   CLUTTER_SCROLL_RIGHT,
+;;   CLUTTER_SCROLL_SMOOTH
 ;; } ClutterScrollDirection;
 
 (define-enum-extended ScrollDirection
@@ -314,31 +737,29 @@
     '("down" "CLUTTER_SCROLL_DOWN" "1")
     '("left" "CLUTTER_SCROLL_LEFT" "2")
     '("right" "CLUTTER_SCROLL_RIGHT" "3")
+    '("smooth" "CLUTTER_SCROLL_SMOOTH" "4")
   )
 )
 
 ;; Original typedef:
-;; typedef enum
-;; {
-;;   CLUTTER_STAGE_STATE_FULLSCREEN       = (1<<1),
-;;   CLUTTER_STAGE_STATE_OFFSCREEN        = (1<<2),
-;;   CLUTTER_STAGE_STATE_ACTIVATED        = (1<<3)
+;; typedef enum {
+;;   CLUTTER_STAGE_STATE_FULLSCREEN       = (1 << 1),
+;;   CLUTTER_STAGE_STATE_OFFSCREEN        = (1 << 2),
+;;   CLUTTER_STAGE_STATE_ACTIVATED        = (1 << 3)
 ;; } ClutterStageState;
 
 (define-flags-extended StageState
   (in-module "Clutter")
   (c-name "ClutterStageState")
   (values
-    '("fullscreen" "CLUTTER_STAGE_STATE_FULLSCREEN" "(1<<1)")
-    '("offscreen" "CLUTTER_STAGE_STATE_OFFSCREEN" "(1<<2)")
-    '("activated" "CLUTTER_STAGE_STATE_ACTIVATED" "(1<<3)")
+    '("fullscreen" "CLUTTER_STAGE_STATE_FULLSCREEN" "(1 << 1)")
+    '("offscreen" "CLUTTER_STAGE_STATE_OFFSCREEN" "(1 << 2)")
+    '("activated" "CLUTTER_STAGE_STATE_ACTIVATED" "(1 << 3)")
   )
 )
 
-;; From clutter-feature.h
-
 ;; Original typedef:
-;; typedef enum 
+;; typedef enum
 ;; {
 ;;   CLUTTER_FEATURE_TEXTURE_NPOT           = (1 << 2),
 ;;   CLUTTER_FEATURE_SYNC_TO_VBLANK         = (1 << 3),
@@ -371,8 +792,6 @@
   )
 )
 
-;; From clutter-flow-layout.h
-
 ;; Original typedef:
 ;; typedef enum { /*< prefix=CLUTTER_FLOW >*/
 ;;   CLUTTER_FLOW_HORIZONTAL,
@@ -388,13 +807,18 @@
   )
 )
 
-;; From clutter-input-device.h
-
 ;; Original typedef:
 ;; typedef enum {
 ;;   CLUTTER_POINTER_DEVICE,
 ;;   CLUTTER_KEYBOARD_DEVICE,
 ;;   CLUTTER_EXTENSION_DEVICE,
+;;   CLUTTER_JOYSTICK_DEVICE,
+;;   CLUTTER_TABLET_DEVICE,
+;;   CLUTTER_TOUCHPAD_DEVICE,
+;;   CLUTTER_TOUCHSCREEN_DEVICE,
+;;   CLUTTER_PEN_DEVICE,
+;;   CLUTTER_ERASER_DEVICE,
+;;   CLUTTER_CURSOR_DEVICE,
 ;; 
 ;;   CLUTTER_N_DEVICE_TYPES
 ;; } ClutterInputDeviceType;
@@ -406,35 +830,174 @@
     '("pointer-device" "CLUTTER_POINTER_DEVICE" "0")
     '("keyboard-device" "CLUTTER_KEYBOARD_DEVICE" "1")
     '("extension-device" "CLUTTER_EXTENSION_DEVICE" "2")
-    '("n-device-types" "CLUTTER_N_DEVICE_TYPES" "3")
+    '("joystick-device" "CLUTTER_JOYSTICK_DEVICE" "3")
+    '("tablet-device" "CLUTTER_TABLET_DEVICE" "4")
+    '("touchpad-device" "CLUTTER_TOUCHPAD_DEVICE" "5")
+    '("touchscreen-device" "CLUTTER_TOUCHSCREEN_DEVICE" "6")
+    '("pen-device" "CLUTTER_PEN_DEVICE" "7")
+    '("eraser-device" "CLUTTER_ERASER_DEVICE" "8")
+    '("cursor-device" "CLUTTER_CURSOR_DEVICE" "9")
+    '("n-device-types" "CLUTTER_N_DEVICE_TYPES" "10")
   )
 )
 
-;; From clutter-main.h
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_INPUT_MODE_MASTER,
+;;   CLUTTER_INPUT_MODE_SLAVE,
+;;   CLUTTER_INPUT_MODE_FLOATING
+;; } ClutterInputMode;
+
+(define-enum-extended InputMode
+  (in-module "Clutter")
+  (c-name "ClutterInputMode")
+  (values
+    '("master" "CLUTTER_INPUT_MODE_MASTER" "0")
+    '("slave" "CLUTTER_INPUT_MODE_SLAVE" "1")
+    '("floating" "CLUTTER_INPUT_MODE_FLOATING" "2")
+  )
+)
 
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_INIT_SUCCESS        =  1,
-;;   CLUTTER_INIT_ERROR_UNKNOWN  =  0,
-;;   CLUTTER_INIT_ERROR_THREADS  = -1,
-;;   CLUTTER_INIT_ERROR_BACKEND  = -2,
-;;   CLUTTER_INIT_ERROR_INTERNAL = -3
-;; } ClutterInitError;
+;;   CLUTTER_INPUT_AXIS_IGNORE,
+;; 
+;;   CLUTTER_INPUT_AXIS_X,
+;;   CLUTTER_INPUT_AXIS_Y,
+;;   CLUTTER_INPUT_AXIS_PRESSURE,
+;;   CLUTTER_INPUT_AXIS_XTILT,
+;;   CLUTTER_INPUT_AXIS_YTILT,
+;;   CLUTTER_INPUT_AXIS_WHEEL,
+;;   CLUTTER_INPUT_AXIS_DISTANCE,
+;; 
+;;   CLUTTER_INPUT_AXIS_LAST
+;; } ClutterInputAxis;
 
-(define-enum-extended InitError
+(define-enum-extended InputAxis
   (in-module "Clutter")
-  (c-name "ClutterInitError")
+  (c-name "ClutterInputAxis")
   (values
-    '("success" "CLUTTER_INIT_SUCCESS" "1")
-    '("error-unknown" "CLUTTER_INIT_ERROR_UNKNOWN" "0")
-    '("error-threads" "CLUTTER_INIT_ERROR_THREADS" "-1")
-    '("error-backend" "CLUTTER_INIT_ERROR_BACKEND" "-2")
-    '("error-internal" "CLUTTER_INIT_ERROR_INTERNAL" "-3")
+    '("ignore" "CLUTTER_INPUT_AXIS_IGNORE" "0")
+    '("x" "CLUTTER_INPUT_AXIS_X" "1")
+    '("y" "CLUTTER_INPUT_AXIS_Y" "2")
+    '("pressure" "CLUTTER_INPUT_AXIS_PRESSURE" "3")
+    '("xtilt" "CLUTTER_INPUT_AXIS_XTILT" "4")
+    '("ytilt" "CLUTTER_INPUT_AXIS_YTILT" "5")
+    '("wheel" "CLUTTER_INPUT_AXIS_WHEEL" "6")
+    '("distance" "CLUTTER_INPUT_AXIS_DISTANCE" "7")
+    '("last" "CLUTTER_INPUT_AXIS_LAST" "8")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_SNAP_EDGE_TOP,
+;;   CLUTTER_SNAP_EDGE_RIGHT,
+;;   CLUTTER_SNAP_EDGE_BOTTOM,
+;;   CLUTTER_SNAP_EDGE_LEFT
+;; } ClutterSnapEdge;
+
+(define-enum-extended SnapEdge
+  (in-module "Clutter")
+  (c-name "ClutterSnapEdge")
+  (values
+    '("top" "CLUTTER_SNAP_EDGE_TOP" "0")
+    '("right" "CLUTTER_SNAP_EDGE_RIGHT" "1")
+    '("bottom" "CLUTTER_SNAP_EDGE_BOTTOM" "2")
+    '("left" "CLUTTER_SNAP_EDGE_LEFT" "3")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_PICK_NONE = 0,
+;;   CLUTTER_PICK_REACTIVE,
+;;   CLUTTER_PICK_ALL
+;; } ClutterPickMode;
+
+(define-enum-extended PickMode
+  (in-module "Clutter")
+  (c-name "ClutterPickMode")
+  (values
+    '("none" "CLUTTER_PICK_NONE" "0")
+    '("reactive" "CLUTTER_PICK_REACTIVE" "1")
+    '("all" "CLUTTER_PICK_ALL" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_SWIPE_DIRECTION >*/
+;;   CLUTTER_SWIPE_DIRECTION_UP    = 1 << 0,
+;;   CLUTTER_SWIPE_DIRECTION_DOWN  = 1 << 1,
+;;   CLUTTER_SWIPE_DIRECTION_LEFT  = 1 << 2,
+;;   CLUTTER_SWIPE_DIRECTION_RIGHT = 1 << 3
+;; } ClutterSwipeDirection;
+
+(define-flags-extended SwipeDirection
+  (in-module "Clutter")
+  (c-name "ClutterSwipeDirection")
+  (values
+    '("up" "CLUTTER_SWIPE_DIRECTION_UP" "1 << 0")
+    '("down" "CLUTTER_SWIPE_DIRECTION_DOWN" "1 << 1")
+    '("left" "CLUTTER_SWIPE_DIRECTION_LEFT" "1 << 2")
+    '("right" "CLUTTER_SWIPE_DIRECTION_RIGHT" "1 << 3")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_PAN >*/
+;;   CLUTTER_PAN_AXIS_NONE = 0,
+;; 
+;;   CLUTTER_PAN_X_AXIS,
+;;   CLUTTER_PAN_Y_AXIS
+;; } ClutterPanAxis;
+
+(define-enum-extended PanAxis
+  (in-module "Clutter")
+  (c-name "ClutterPanAxis")
+  (values
+    '("axis-none" "CLUTTER_PAN_AXIS_NONE" "0")
+    '("x-axis" "CLUTTER_PAN_X_AXIS" "1")
+    '("y-axis" "CLUTTER_PAN_Y_AXIS" "2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_TIMELINE_FORWARD,
+;;   CLUTTER_TIMELINE_BACKWARD
+;; } ClutterTimelineDirection;
+
+(define-enum-extended TimelineDirection
+  (in-module "Clutter")
+  (c-name "ClutterTimelineDirection")
+  (values
+    '("forward" "CLUTTER_TIMELINE_FORWARD" "0")
+    '("backward" "CLUTTER_TIMELINE_BACKWARD" "1")
+  )
+)
+
+;; Original typedef:
+;; typedef enum { /*< prefix=CLUTTER_UNIT >*/
+;;   CLUTTER_UNIT_PIXEL,
+;;   CLUTTER_UNIT_EM,
+;;   CLUTTER_UNIT_MM,
+;;   CLUTTER_UNIT_POINT,
+;;   CLUTTER_UNIT_CM
+;; } ClutterUnitType;
+
+(define-enum-extended UnitType
+  (in-module "Clutter")
+  (c-name "ClutterUnitType")
+  (values
+    '("pixel" "CLUTTER_UNIT_PIXEL" "0")
+    '("em" "CLUTTER_UNIT_EM" "1")
+    '("mm" "CLUTTER_UNIT_MM" "2")
+    '("point" "CLUTTER_UNIT_POINT" "3")
+    '("cm" "CLUTTER_UNIT_CM" "4")
   )
 )
 
-;; From clutter-path.h
-
 ;; Original typedef:
 ;; typedef enum {
 ;;   CLUTTER_PATH_MOVE_TO      = 0,
@@ -461,435 +1024,393 @@
   )
 )
 
-;; From clutter-private.h
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_ACTOR_ALIGN_FILL,
+;;   CLUTTER_ACTOR_ALIGN_START,
+;;   CLUTTER_ACTOR_ALIGN_CENTER,
+;;   CLUTTER_ACTOR_ALIGN_END
+;; } ClutterActorAlign;
+
+(define-enum-extended ActorAlign
+  (in-module "Clutter")
+  (c-name "ClutterActorAlign")
+  (values
+    '("fill" "CLUTTER_ACTOR_ALIGN_FILL" "0")
+    '("start" "CLUTTER_ACTOR_ALIGN_START" "1")
+    '("center" "CLUTTER_ACTOR_ALIGN_CENTER" "2")
+    '("end" "CLUTTER_ACTOR_ALIGN_END" "3")
+  )
+)
 
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_ACTOR_UNUSED_FLAG    = 0,
-;; 
-;;   CLUTTER_ACTOR_IN_DESTRUCTION = 1 << 0,
-;;   CLUTTER_ACTOR_IS_TOPLEVEL    = 1 << 1,
-;;   CLUTTER_ACTOR_IN_REPARENT    = 1 << 2,
-;; 
-;;   /* Used by the stage to indicate GL viewport / perspective etc needs
-;;    * (re)setting.
-;;    */
-;;   CLUTTER_ACTOR_SYNC_MATRICES  = 1 << 3,
-;; 
-;;   /* Used to avoid recursion */
-;;   CLUTTER_ACTOR_IN_PAINT       = 1 << 4,
+;;   CLUTTER_REPAINT_FLAGS_PRE_PAINT = 1 << 0,
+;;   CLUTTER_REPAINT_FLAGS_POST_PAINT = 1 << 1,
+;;   CLUTTER_REPAINT_FLAGS_QUEUE_REDRAW_ON_ADD = 1 << 2
+;; } ClutterRepaintFlags;
+
+(define-flags-extended RepaintFlags
+  (in-module "Clutter")
+  (c-name "ClutterRepaintFlags")
+  (values
+    '("pre-paint" "CLUTTER_REPAINT_FLAGS_PRE_PAINT" "1 << 0")
+    '("post-paint" "CLUTTER_REPAINT_FLAGS_POST_PAINT" "1 << 1")
+    '("queue-redraw-on-add" "CLUTTER_REPAINT_FLAGS_QUEUE_REDRAW_ON_ADD" "1 << 2")
+  )
+)
+
+;; Original typedef:
+;; typedef enum {
+;;   CLUTTER_CONTENT_GRAVITY_TOP_LEFT,
+;;   CLUTTER_CONTENT_GRAVITY_TOP,
+;;   CLUTTER_CONTENT_GRAVITY_TOP_RIGHT,
 ;; 
-;;   /* Used to avoid recursion */
-;;   CLUTTER_ACTOR_IN_RELAYOUT    = 1 << 5,
+;;   CLUTTER_CONTENT_GRAVITY_LEFT,
+;;   CLUTTER_CONTENT_GRAVITY_CENTER,
+;;   CLUTTER_CONTENT_GRAVITY_RIGHT,
 ;; 
-;;   /* Used by the stage if resizing is an asynchronous operation (like on
-;;    * X11) to delay queueing relayouts until we got a notification from the
-;;    * event handling
-;;    */
-;;   CLUTTER_STAGE_IN_RESIZE      = 1 << 6,
+;;   CLUTTER_CONTENT_GRAVITY_BOTTOM_LEFT,
+;;   CLUTTER_CONTENT_GRAVITY_BOTTOM,
+;;   CLUTTER_CONTENT_GRAVITY_BOTTOM_RIGHT,
 ;; 
-;;   /* a flag for internal children of Containers */
-;;   CLUTTER_ACTOR_INTERNAL_CHILD = 1 << 7
-;; } ClutterPrivateFlags;
+;;   CLUTTER_CONTENT_GRAVITY_RESIZE_FILL,
+;;   CLUTTER_CONTENT_GRAVITY_RESIZE_ASPECT
+;; } ClutterContentGravity;
 
-(define-flags-extended PrivateFlags
+(define-enum-extended ContentGravity
   (in-module "Clutter")
-  (c-name "ClutterPrivateFlags")
+  (c-name "ClutterContentGravity")
   (values
-    '("actor-unused-flag" "CLUTTER_ACTOR_UNUSED_FLAG" "0x0")
-    '("actor-in-destruction" "CLUTTER_ACTOR_IN_DESTRUCTION" "1 << 0")
-    '("actor-is-toplevel" "CLUTTER_ACTOR_IS_TOPLEVEL" "1 << 1")
-    '("actor-in-reparent" "CLUTTER_ACTOR_IN_REPARENT" "1 << 2")
-    '("actor-sync-matrices" "CLUTTER_ACTOR_SYNC_MATRICES" "1 << 3")
-    '("actor-in-paint" "CLUTTER_ACTOR_IN_PAINT" "1 << 4")
-    '("actor-in-relayout" "CLUTTER_ACTOR_IN_RELAYOUT" "1 << 5")
-    '("stage-in-resize" "CLUTTER_STAGE_IN_RESIZE" "1 << 6")
-    '("actor-internal-child" "CLUTTER_ACTOR_INTERNAL_CHILD" "1 << 7")
+    '("top-left" "CLUTTER_CONTENT_GRAVITY_TOP_LEFT" "0")
+    '("top" "CLUTTER_CONTENT_GRAVITY_TOP" "1")
+    '("top-right" "CLUTTER_CONTENT_GRAVITY_TOP_RIGHT" "2")
+    '("left" "CLUTTER_CONTENT_GRAVITY_LEFT" "3")
+    '("center" "CLUTTER_CONTENT_GRAVITY_CENTER" "4")
+    '("right" "CLUTTER_CONTENT_GRAVITY_RIGHT" "5")
+    '("bottom-left" "CLUTTER_CONTENT_GRAVITY_BOTTOM_LEFT" "6")
+    '("bottom" "CLUTTER_CONTENT_GRAVITY_BOTTOM" "7")
+    '("bottom-right" "CLUTTER_CONTENT_GRAVITY_BOTTOM_RIGHT" "8")
+    '("resize-fill" "CLUTTER_CONTENT_GRAVITY_RESIZE_FILL" "9")
+    '("resize-aspect" "CLUTTER_CONTENT_GRAVITY_RESIZE_ASPECT" "10")
   )
 )
 
-;; From clutter-profile.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_PROFILE_PICKING_ONLY    = 1 << 0,
-;;   CLUTTER_PROFILE_DISABLE_REPORT  = 1 << 1
-;; } ClutterProfileFlag;
+;;   CLUTTER_SCALING_FILTER_LINEAR,
+;;   CLUTTER_SCALING_FILTER_NEAREST,
+;;   CLUTTER_SCALING_FILTER_TRILINEAR
+;; } ClutterScalingFilter;
 
-(define-flags-extended ProfileFlag
+(define-enum-extended ScalingFilter
   (in-module "Clutter")
-  (c-name "ClutterProfileFlag")
+  (c-name "ClutterScalingFilter")
   (values
-    '("picking-only" "CLUTTER_PROFILE_PICKING_ONLY" "1 << 0")
-    '("disable-report" "CLUTTER_PROFILE_DISABLE_REPORT" "1 << 1")
+    '("linear" "CLUTTER_SCALING_FILTER_LINEAR" "0")
+    '("nearest" "CLUTTER_SCALING_FILTER_NEAREST" "1")
+    '("trilinear" "CLUTTER_SCALING_FILTER_TRILINEAR" "2")
   )
 )
 
-;; From clutter-script.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION,
-;;   CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY,
-;;   CLUTTER_SCRIPT_ERROR_INVALID_VALUE
-;; } ClutterScriptError;
+;;   CLUTTER_ORIENTATION_HORIZONTAL,
+;;   CLUTTER_ORIENTATION_VERTICAL
+;; } ClutterOrientation;
 
-(define-enum-extended ScriptError
+(define-enum-extended Orientation
   (in-module "Clutter")
-  (c-name "ClutterScriptError")
+  (c-name "ClutterOrientation")
   (values
-    '("type-function" "CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION" "0")
-    '("property" "CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY" "1")
-    '("value" "CLUTTER_SCRIPT_ERROR_INVALID_VALUE" "2")
+    '("horizontal" "CLUTTER_ORIENTATION_HORIZONTAL" "0")
+    '("vertical" "CLUTTER_ORIENTATION_VERTICAL" "1")
   )
 )
 
-;; From clutter-shader.h
-
 ;; Original typedef:
-;; typedef enum {
-;;   CLUTTER_SHADER_ERROR_NO_ASM,
-;;   CLUTTER_SHADER_ERROR_NO_GLSL,
-;;   CLUTTER_SHADER_ERROR_COMPILE
-;; } ClutterShaderError;
+;; typedef enum { /*< prefix=CLUTTER_SCROLL >*/
+;;   CLUTTER_SCROLL_NONE         = 0,
+;; 
+;;   CLUTTER_SCROLL_HORIZONTALLY = 1 << 0,
+;;   CLUTTER_SCROLL_VERTICALLY   = 1 << 1,
+;; 
+;;   CLUTTER_SCROLL_BOTH         = CLUTTER_SCROLL_HORIZONTALLY | CLUTTER_SCROLL_VERTICALLY
+;; } ClutterScrollMode;
 
-(define-enum-extended ShaderError
+(define-flags-extended ScrollMode
   (in-module "Clutter")
-  (c-name "ClutterShaderError")
+  (c-name "ClutterScrollMode")
   (values
-    '("no-asm" "CLUTTER_SHADER_ERROR_NO_ASM" "0")
-    '("no-glsl" "CLUTTER_SHADER_ERROR_NO_GLSL" "1")
-    '("compile" "CLUTTER_SHADER_ERROR_COMPILE" "2")
+    '("none" "CLUTTER_SCROLL_NONE" "0x0")
+    '("horizontally" "CLUTTER_SCROLL_HORIZONTALLY" "1 << 0")
+    '("vertically" "CLUTTER_SCROLL_VERTICALLY" "1 << 1")
+    '("both" "CLUTTER_SCROLL_BOTH" "0x3")
   )
 )
 
-;; From clutter-stage.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_PICK_NONE = 0,
-;;   CLUTTER_PICK_REACTIVE,
-;;   CLUTTER_PICK_ALL
-;; } ClutterPickMode;
+;;   CLUTTER_GRID_POSITION_LEFT,
+;;   CLUTTER_GRID_POSITION_RIGHT,
+;;   CLUTTER_GRID_POSITION_TOP,
+;;   CLUTTER_GRID_POSITION_BOTTOM
+;; } ClutterGridPosition;
 
-(define-enum-extended PickMode
+(define-enum-extended GridPosition
   (in-module "Clutter")
-  (c-name "ClutterPickMode")
+  (c-name "ClutterGridPosition")
   (values
-    '("none" "CLUTTER_PICK_NONE" "0")
-    '("reactive" "CLUTTER_PICK_REACTIVE" "1")
-    '("all" "CLUTTER_PICK_ALL" "2")
+    '("left" "CLUTTER_GRID_POSITION_LEFT" "0")
+    '("right" "CLUTTER_GRID_POSITION_RIGHT" "1")
+    '("top" "CLUTTER_GRID_POSITION_TOP" "2")
+    '("bottom" "CLUTTER_GRID_POSITION_BOTTOM" "3")
   )
 )
 
-;; From clutter-texture.h
-
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_TEXTURE_ERROR_OUT_OF_MEMORY,
-;;   CLUTTER_TEXTURE_ERROR_NO_YUV,
-;;   CLUTTER_TEXTURE_ERROR_BAD_FORMAT
-;; } ClutterTextureError;
+;;   CLUTTER_REPEAT_NONE   = 0,
+;;   CLUTTER_REPEAT_X_AXIS = 1 << 0,
+;;   CLUTTER_REPEAT_Y_AXIS = 1 << 1,
+;;   CLUTTER_REPEAT_BOTH   = CLUTTER_REPEAT_X_AXIS | CLUTTER_REPEAT_Y_AXIS
+;; } ClutterContentRepeat;
 
-(define-enum-extended TextureError
+(define-flags-extended ContentRepeat
   (in-module "Clutter")
-  (c-name "ClutterTextureError")
+  (c-name "ClutterContentRepeat")
   (values
-    '("out-of-memory" "CLUTTER_TEXTURE_ERROR_OUT_OF_MEMORY" "0")
-    '("no-yuv" "CLUTTER_TEXTURE_ERROR_NO_YUV" "1")
-    '("bad-format" "CLUTTER_TEXTURE_ERROR_BAD_FORMAT" "2")
+    '("none" "CLUTTER_REPEAT_NONE" "0x0")
+    '("x-axis" "CLUTTER_REPEAT_X_AXIS" "1 << 0")
+    '("y-axis" "CLUTTER_REPEAT_Y_AXIS" "1 << 1")
+    '("both" "CLUTTER_REPEAT_BOTH" "0x3")
   )
 )
 
 ;; Original typedef:
-;; typedef enum { /*< prefix=CLUTTER_TEXTURE >*/
-;;   CLUTTER_TEXTURE_NONE             = 0,
-;;   CLUTTER_TEXTURE_RGB_FLAG_BGR     = 1 << 1,
-;;   CLUTTER_TEXTURE_RGB_FLAG_PREMULT = 1 << 2, /* FIXME: not handled */
-;;   CLUTTER_TEXTURE_YUV_FLAG_YUV2    = 1 << 3
-;; 
-;;   /* FIXME: add compressed types ? */
-;; } ClutterTextureFlags;
+;; typedef enum {
+;;   CLUTTER_STEP_MODE_START,
+;;   CLUTTER_STEP_MODE_END
+;; } ClutterStepMode;
 
-(define-flags-extended TextureFlags
+(define-enum-extended StepMode
   (in-module "Clutter")
-  (c-name "ClutterTextureFlags")
+  (c-name "ClutterStepMode")
   (values
-    '("none" "CLUTTER_TEXTURE_NONE" "0x0")
-    '("rgb-flag-bgr" "CLUTTER_TEXTURE_RGB_FLAG_BGR" "1 << 1")
-    '("rgb-flag-premult" "CLUTTER_TEXTURE_RGB_FLAG_PREMULT" "1 << 2")
-    '("yuv-flag-yuv2" "CLUTTER_TEXTURE_YUV_FLAG_YUV2" "1 << 3")
+    '("start" "CLUTTER_STEP_MODE_START" "0")
+    '("end" "CLUTTER_STEP_MODE_END" "1")
   )
 )
 
 ;; Original typedef:
-;; typedef enum { /*< prefix=CLUTTER_TEXTURE_QUALITY >*/
-;;   CLUTTER_TEXTURE_QUALITY_LOW,
-;;   CLUTTER_TEXTURE_QUALITY_MEDIUM,
-;;   CLUTTER_TEXTURE_QUALITY_HIGH
-;; } ClutterTextureQuality;
+;; typedef enum { /*< prefix=CLUTTER_ZOOM >*/
+;;   CLUTTER_ZOOM_X_AXIS,
+;;   CLUTTER_ZOOM_Y_AXIS,
+;;   CLUTTER_ZOOM_BOTH
+;; } ClutterZoomAxis;
 
-(define-enum-extended TextureQuality
+(define-enum-extended ZoomAxis
   (in-module "Clutter")
-  (c-name "ClutterTextureQuality")
+  (c-name "ClutterZoomAxis")
   (values
-    '("low" "CLUTTER_TEXTURE_QUALITY_LOW" "0")
-    '("medium" "CLUTTER_TEXTURE_QUALITY_MEDIUM" "1")
-    '("high" "CLUTTER_TEXTURE_QUALITY_HIGH" "2")
+    '("x-axis" "CLUTTER_ZOOM_X_AXIS" "0")
+    '("y-axis" "CLUTTER_ZOOM_Y_AXIS" "1")
+    '("both" "CLUTTER_ZOOM_BOTH" "2")
   )
 )
 
-;; From clutter-timeline.h
+;; From clutter-event-translator.h
 
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_TIMELINE_FORWARD,
-;;   CLUTTER_TIMELINE_BACKWARD
-;; } ClutterTimelineDirection;
+;;   CLUTTER_TRANSLATE_CONTINUE,
+;;   CLUTTER_TRANSLATE_REMOVE,
+;;   CLUTTER_TRANSLATE_QUEUE
+;; } ClutterTranslateReturn;
 
-(define-enum-extended TimelineDirection
+(define-enum-extended TranslateReturn
   (in-module "Clutter")
-  (c-name "ClutterTimelineDirection")
+  (c-name "ClutterTranslateReturn")
   (values
-    '("forward" "CLUTTER_TIMELINE_FORWARD" "0")
-    '("backward" "CLUTTER_TIMELINE_BACKWARD" "1")
+    '("continue" "CLUTTER_TRANSLATE_CONTINUE" "0")
+    '("remove" "CLUTTER_TRANSLATE_REMOVE" "1")
+    '("queue" "CLUTTER_TRANSLATE_QUEUE" "2")
   )
 )
 
-;; From clutter-types.h
+;; From clutter-gesture-action-private.h
 
 ;; Original typedef:
-;; typedef enum { /*< prefix=CLUTTER_GRAVITY >*/
-;;   CLUTTER_GRAVITY_NONE       = 0,
-;;   CLUTTER_GRAVITY_NORTH,
-;;   CLUTTER_GRAVITY_NORTH_EAST,
-;;   CLUTTER_GRAVITY_EAST,
-;;   CLUTTER_GRAVITY_SOUTH_EAST,
-;;   CLUTTER_GRAVITY_SOUTH,
-;;   CLUTTER_GRAVITY_SOUTH_WEST,
-;;   CLUTTER_GRAVITY_WEST,
-;;   CLUTTER_GRAVITY_NORTH_WEST,
-;;   CLUTTER_GRAVITY_CENTER
-;; } ClutterGravity;
+;; typedef enum
+;; {
+;;   CLUTTER_GESTURE_TRIGGER_EDGE_NONE  = 0,
+;;   CLUTTER_GESTURE_TRIGGER_EDGE_AFTER,
+;;   CLUTTER_GESTURE_TRIGGER_EDGE_BEFORE
+;; } ClutterGestureTriggerEdge;
 
-(define-enum-extended Gravity
+(define-enum-extended GestureTriggerEdge
   (in-module "Clutter")
-  (c-name "ClutterGravity")
+  (c-name "ClutterGestureTriggerEdge")
   (values
-    '("none" "CLUTTER_GRAVITY_NONE" "0")
-    '("north" "CLUTTER_GRAVITY_NORTH" "1")
-    '("north-east" "CLUTTER_GRAVITY_NORTH_EAST" "2")
-    '("east" "CLUTTER_GRAVITY_EAST" "3")
-    '("south-east" "CLUTTER_GRAVITY_SOUTH_EAST" "4")
-    '("south" "CLUTTER_GRAVITY_SOUTH" "5")
-    '("south-west" "CLUTTER_GRAVITY_SOUTH_WEST" "6")
-    '("west" "CLUTTER_GRAVITY_WEST" "7")
-    '("north-west" "CLUTTER_GRAVITY_NORTH_WEST" "8")
-    '("center" "CLUTTER_GRAVITY_CENTER" "9")
+    '("none" "CLUTTER_GESTURE_TRIGGER_EDGE_NONE" "0")
+    '("after" "CLUTTER_GESTURE_TRIGGER_EDGE_AFTER" "1")
+    '("before" "CLUTTER_GESTURE_TRIGGER_EDGE_BEFORE" "2")
   )
 )
 
+;; From clutter-image.h
+
 ;; Original typedef:
-;; typedef enum { /*< prefix=CLUTTER >*/
-;;   CLUTTER_X_AXIS,
-;;   CLUTTER_Y_AXIS,
-;;   CLUTTER_Z_AXIS
-;; } ClutterRotateAxis;
+;; typedef enum {
+;;   CLUTTER_IMAGE_ERROR_INVALID_DATA
+;; } ClutterImageError;
 
-(define-enum-extended RotateAxis
+(define-enum-extended ImageError
   (in-module "Clutter")
-  (c-name "ClutterRotateAxis")
+  (c-name "ClutterImageError")
   (values
-    '("x-axis" "CLUTTER_X_AXIS" "0")
-    '("y-axis" "CLUTTER_Y_AXIS" "1")
-    '("z-axis" "CLUTTER_Z_AXIS" "2")
+    '("invalid-data" "CLUTTER_IMAGE_ERROR_INVALID_DATA" "0")
   )
 )
 
+;; From clutter-main.h
+
 ;; Original typedef:
-;; typedef enum { /*< prefix=CLUTTER_ROTATE >*/
-;;   CLUTTER_ROTATE_CW,
-;;   CLUTTER_ROTATE_CCW
-;; } ClutterRotateDirection;
+;; typedef enum {
+;;   CLUTTER_INIT_SUCCESS        =  1,
+;;   CLUTTER_INIT_ERROR_UNKNOWN  =  0,
+;;   CLUTTER_INIT_ERROR_THREADS  = -1,
+;;   CLUTTER_INIT_ERROR_BACKEND  = -2,
+;;   CLUTTER_INIT_ERROR_INTERNAL = -3
+;; } ClutterInitError;
 
-(define-enum-extended RotateDirection
+(define-enum-extended InitError
   (in-module "Clutter")
-  (c-name "ClutterRotateDirection")
+  (c-name "ClutterInitError")
   (values
-    '("cw" "CLUTTER_ROTATE_CW" "0")
-    '("ccw" "CLUTTER_ROTATE_CCW" "1")
+    '("success" "CLUTTER_INIT_SUCCESS" "1")
+    '("error-unknown" "CLUTTER_INIT_ERROR_UNKNOWN" "0")
+    '("error-threads" "CLUTTER_INIT_ERROR_THREADS" "-1")
+    '("error-backend" "CLUTTER_INIT_ERROR_BACKEND" "-2")
+    '("error-internal" "CLUTTER_INIT_ERROR_INTERNAL" "-3")
   )
 )
 
+;; From clutter-paint-node-private.h
+
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_REQUEST_HEIGHT_FOR_WIDTH,
-;;   CLUTTER_REQUEST_WIDTH_FOR_HEIGHT
-;; } ClutterRequestMode;
+;;   PAINT_OP_INVALID = 0,
+;;   PAINT_OP_TEX_RECT,
+;;   PAINT_OP_PATH,
+;;   PAINT_OP_PRIMITIVE
+;; } PaintOpCode;
 
-(define-enum-extended RequestMode
+(define-enum-extended PaintOpCode
   (in-module "Clutter")
-  (c-name "ClutterRequestMode")
+  (c-name "PaintOpCode")
   (values
-    '("height-for-width" "CLUTTER_REQUEST_HEIGHT_FOR_WIDTH" "0")
-    '("width-for-height" "CLUTTER_REQUEST_WIDTH_FOR_HEIGHT" "1")
+    '("invalid" "PAINT_OP_INVALID" "0")
+    '("tex-rect" "PAINT_OP_TEX_RECT" "1")
+    '("path" "PAINT_OP_PATH" "2")
+    '("primitive" "PAINT_OP_PRIMITIVE" "3")
   )
 )
 
+;; From clutter-private.h
+
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_CUSTOM_MODE = 0,
-;; 
-;;   /* linear */
-;;   CLUTTER_LINEAR,
-;; 
-;;   /* quadratic */
-;;   CLUTTER_EASE_IN_QUAD,
-;;   CLUTTER_EASE_OUT_QUAD,
-;;   CLUTTER_EASE_IN_OUT_QUAD,
-;; 
-;;   /* cubic */
-;;   CLUTTER_EASE_IN_CUBIC,
-;;   CLUTTER_EASE_OUT_CUBIC,
-;;   CLUTTER_EASE_IN_OUT_CUBIC,
-;; 
-;;   /* quartic */
-;;   CLUTTER_EASE_IN_QUART,
-;;   CLUTTER_EASE_OUT_QUART,
-;;   CLUTTER_EASE_IN_OUT_QUART,
-;; 
-;;   /* quintic */
-;;   CLUTTER_EASE_IN_QUINT,
-;;   CLUTTER_EASE_OUT_QUINT,
-;;   CLUTTER_EASE_IN_OUT_QUINT,
-;; 
-;;   /* sinusoidal */
-;;   CLUTTER_EASE_IN_SINE,
-;;   CLUTTER_EASE_OUT_SINE,
-;;   CLUTTER_EASE_IN_OUT_SINE,
-;; 
-;;   /* exponential */
-;;   CLUTTER_EASE_IN_EXPO,
-;;   CLUTTER_EASE_OUT_EXPO,
-;;   CLUTTER_EASE_IN_OUT_EXPO,
+;;   CLUTTER_ACTOR_UNUSED_FLAG = 0,
 ;; 
-;;   /* circular */
-;;   CLUTTER_EASE_IN_CIRC,
-;;   CLUTTER_EASE_OUT_CIRC,
-;;   CLUTTER_EASE_IN_OUT_CIRC,
+;;   CLUTTER_IN_DESTRUCTION = 1 << 0,
+;;   CLUTTER_IS_TOPLEVEL    = 1 << 1,
+;;   CLUTTER_IN_REPARENT    = 1 << 2,
 ;; 
-;;   /* elastic */
-;;   CLUTTER_EASE_IN_ELASTIC,
-;;   CLUTTER_EASE_OUT_ELASTIC,
-;;   CLUTTER_EASE_IN_OUT_ELASTIC,
+;;   /* Used to avoid recursion */
+;;   CLUTTER_IN_PAINT       = 1 << 3,
 ;; 
-;;   /* overshooting cubic */
-;;   CLUTTER_EASE_IN_BACK,
-;;   CLUTTER_EASE_OUT_BACK,
-;;   CLUTTER_EASE_IN_OUT_BACK,
+;;   /* Used to avoid recursion */
+;;   CLUTTER_IN_RELAYOUT    = 1 << 4,
 ;; 
-;;   /* exponentially decaying parabolic */
-;;   CLUTTER_EASE_IN_BOUNCE,
-;;   CLUTTER_EASE_OUT_BOUNCE,
-;;   CLUTTER_EASE_IN_OUT_BOUNCE,
+;;   /* Used by the stage if resizing is an asynchronous operation (like on
+;;    * X11) to delay queueing relayouts until we got a notification from the
+;;    * event handling
+;;    */
+;;   CLUTTER_IN_RESIZE      = 1 << 5,
 ;; 
-;;   /* guard, before registered alpha functions */
-;;   CLUTTER_ANIMATION_LAST
-;; } ClutterAnimationMode;
+;;   /* a flag for internal children of Containers */
+;;   CLUTTER_INTERNAL_CHILD = 1 << 6
+;; } ClutterPrivateFlags;
 
-(define-enum-extended AnimationMode
+(define-flags-extended PrivateFlags
   (in-module "Clutter")
-  (c-name "ClutterAnimationMode")
+  (c-name "ClutterPrivateFlags")
   (values
-    '("custom-mode" "CLUTTER_CUSTOM_MODE" "0")
-    '("linear" "CLUTTER_LINEAR" "1")
-    '("ease-in-quad" "CLUTTER_EASE_IN_QUAD" "2")
-    '("ease-out-quad" "CLUTTER_EASE_OUT_QUAD" "3")
-    '("ease-in-out-quad" "CLUTTER_EASE_IN_OUT_QUAD" "4")
-    '("ease-in-cubic" "CLUTTER_EASE_IN_CUBIC" "5")
-    '("ease-out-cubic" "CLUTTER_EASE_OUT_CUBIC" "6")
-    '("ease-in-out-cubic" "CLUTTER_EASE_IN_OUT_CUBIC" "7")
-    '("ease-in-quart" "CLUTTER_EASE_IN_QUART" "8")
-    '("ease-out-quart" "CLUTTER_EASE_OUT_QUART" "9")
-    '("ease-in-out-quart" "CLUTTER_EASE_IN_OUT_QUART" "10")
-    '("ease-in-quint" "CLUTTER_EASE_IN_QUINT" "11")
-    '("ease-out-quint" "CLUTTER_EASE_OUT_QUINT" "12")
-    '("ease-in-out-quint" "CLUTTER_EASE_IN_OUT_QUINT" "13")
-    '("ease-in-sine" "CLUTTER_EASE_IN_SINE" "14")
-    '("ease-out-sine" "CLUTTER_EASE_OUT_SINE" "15")
-    '("ease-in-out-sine" "CLUTTER_EASE_IN_OUT_SINE" "16")
-    '("ease-in-expo" "CLUTTER_EASE_IN_EXPO" "17")
-    '("ease-out-expo" "CLUTTER_EASE_OUT_EXPO" "18")
-    '("ease-in-out-expo" "CLUTTER_EASE_IN_OUT_EXPO" "19")
-    '("ease-in-circ" "CLUTTER_EASE_IN_CIRC" "20")
-    '("ease-out-circ" "CLUTTER_EASE_OUT_CIRC" "21")
-    '("ease-in-out-circ" "CLUTTER_EASE_IN_OUT_CIRC" "22")
-    '("ease-in-elastic" "CLUTTER_EASE_IN_ELASTIC" "23")
-    '("ease-out-elastic" "CLUTTER_EASE_OUT_ELASTIC" "24")
-    '("ease-in-out-elastic" "CLUTTER_EASE_IN_OUT_ELASTIC" "25")
-    '("ease-in-back" "CLUTTER_EASE_IN_BACK" "26")
-    '("ease-out-back" "CLUTTER_EASE_OUT_BACK" "27")
-    '("ease-in-out-back" "CLUTTER_EASE_IN_OUT_BACK" "28")
-    '("ease-in-bounce" "CLUTTER_EASE_IN_BOUNCE" "29")
-    '("ease-out-bounce" "CLUTTER_EASE_OUT_BOUNCE" "30")
-    '("ease-in-out-bounce" "CLUTTER_EASE_IN_OUT_BOUNCE" "31")
-    '("animation-last" "CLUTTER_ANIMATION_LAST" "32")
+    '("actor-unused-flag" "CLUTTER_ACTOR_UNUSED_FLAG" "0x0")
+    '("in-destruction" "CLUTTER_IN_DESTRUCTION" "1 << 0")
+    '("is-toplevel" "CLUTTER_IS_TOPLEVEL" "1 << 1")
+    '("in-reparent" "CLUTTER_IN_REPARENT" "1 << 2")
+    '("in-paint" "CLUTTER_IN_PAINT" "1 << 3")
+    '("in-relayout" "CLUTTER_IN_RELAYOUT" "1 << 4")
+    '("in-resize" "CLUTTER_IN_RESIZE" "1 << 5")
+    '("internal-child" "CLUTTER_INTERNAL_CHILD" "1 << 6")
   )
 )
 
 ;; Original typedef:
-;; typedef enum
+;; typedef enum _ClutterCullResult
 ;; {
-;;   CLUTTER_FONT_MIPMAPPING = (1 << 0),
-;;   CLUTTER_FONT_HINTING    = (1 << 1),
-;; } ClutterFontFlags;
+;;   CLUTTER_CULL_RESULT_UNKNOWN,
+;;   CLUTTER_CULL_RESULT_IN,
+;;   CLUTTER_CULL_RESULT_OUT,
+;;   CLUTTER_CULL_RESULT_PARTIAL
+;; } ClutterCullResult;
 
-(define-flags-extended FontFlags
+(define-enum-extended CullResult
   (in-module "Clutter")
-  (c-name "ClutterFontFlags")
+  (c-name "ClutterCullResult")
   (values
-    '("mipmapping" "CLUTTER_FONT_MIPMAPPING" "(1 << 0)")
-    '("hinting" "CLUTTER_FONT_HINTING" "(1 << 1)")
+    '("unknown" "CLUTTER_CULL_RESULT_UNKNOWN" "0")
+    '("in" "CLUTTER_CULL_RESULT_IN" "1")
+    '("out" "CLUTTER_CULL_RESULT_OUT" "2")
+    '("partial" "CLUTTER_CULL_RESULT_PARTIAL" "3")
   )
 )
 
+;; From clutter-profile.h
+
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_TEXT_DIRECTION_DEFAULT,
-;;   CLUTTER_TEXT_DIRECTION_LTR,
-;;   CLUTTER_TEXT_DIRECTION_RTL
-;; } ClutterTextDirection;
+;;   CLUTTER_PROFILE_PICKING_ONLY    = 1 << 0,
+;;   CLUTTER_PROFILE_DISABLE_REPORT  = 1 << 1
+;; } ClutterProfileFlag;
 
-(define-enum-extended TextDirection
+(define-flags-extended ProfileFlag
   (in-module "Clutter")
-  (c-name "ClutterTextDirection")
+  (c-name "ClutterProfileFlag")
   (values
-    '("default" "CLUTTER_TEXT_DIRECTION_DEFAULT" "0")
-    '("ltr" "CLUTTER_TEXT_DIRECTION_LTR" "1")
-    '("rtl" "CLUTTER_TEXT_DIRECTION_RTL" "2")
+    '("picking-only" "CLUTTER_PROFILE_PICKING_ONLY" "1 << 0")
+    '("disable-report" "CLUTTER_PROFILE_DISABLE_REPORT" "1 << 1")
   )
 )
 
-;; From clutter-units.h
+;; From clutter-script.h
 
 ;; Original typedef:
 ;; typedef enum {
-;;   CLUTTER_UNIT_PIXEL,
-;;   CLUTTER_UNIT_EM,
-;;   CLUTTER_UNIT_MM,
-;;   CLUTTER_UNIT_POINT,
-;;   CLUTTER_UNIT_CM
-;; } ClutterUnitType;
+;;   CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION,
+;;   CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY,
+;;   CLUTTER_SCRIPT_ERROR_INVALID_VALUE
+;; } ClutterScriptError;
 
-(define-enum-extended UnitType
+(define-enum-extended ScriptError
   (in-module "Clutter")
-  (c-name "ClutterUnitType")
+  (c-name "ClutterScriptError")
   (values
-    '("pixel" "CLUTTER_UNIT_PIXEL" "0")
-    '("em" "CLUTTER_UNIT_EM" "1")
-    '("mm" "CLUTTER_UNIT_MM" "2")
-    '("point" "CLUTTER_UNIT_POINT" "3")
-    '("cm" "CLUTTER_UNIT_CM" "4")
+    '("type-function" "CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION" "0")
+    '("property" "CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY" "1")
+    '("value" "CLUTTER_SCRIPT_ERROR_INVALID_VALUE" "2")
   )
 )
 
diff --git a/clutter/src/clutter_methods.defs b/clutter/src/clutter_methods.defs
index e2b8029..045aa08 100644
--- a/clutter/src/clutter_methods.defs
+++ b/clutter/src/clutter_methods.defs
@@ -21,33 +21,12 @@
   (gtype-id "CLUTTER_TYPE_ACTION")
 )
 
-(define-object Alpha
-  (in-module "Clutter")
-  (parent "GInitiallyUnowned")
-  (c-name "ClutterAlpha")
-  (gtype-id "CLUTTER_TYPE_ALPHA")
-)
-
 (define-object Animatable
   (in-module "Clutter")
   (c-name "ClutterAnimatable")
   (gtype-id "CLUTTER_TYPE_ANIMATABLE")
 )
 
-(define-object Animation
-  (in-module "Clutter")
-  (parent "GObject")
-  (c-name "ClutterAnimation")
-  (gtype-id "CLUTTER_TYPE_ANIMATION")
-)
-
-(define-object Animator
-  (in-module "Clutter")
-  (parent "GObject")
-  (c-name "ClutterAnimator")
-  (gtype-id "CLUTTER_TYPE_ANIMATOR")
-)
-
 (define-object Backend
   (in-module "Clutter")
   (parent "GObject")
@@ -55,60 +34,11 @@
   (gtype-id "CLUTTER_TYPE_BACKEND")
 )
 
-(define-object Behaviour
+(define-object Canvas
   (in-module "Clutter")
   (parent "GObject")
-  (c-name "ClutterBehaviour")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR")
-)
-
-(define-object BehaviourDepth
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourDepth")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_DEPTH")
-)
-
-(define-object BehaviourEllipse
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourEllipse")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_ELLIPSE")
-)
-
-(define-object BehaviourOpacity
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourOpacity")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_OPACITY")
-)
-
-(define-object BehaviourPath
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourPath")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_PATH")
-)
-
-(define-object BehaviourRotate
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourRotate")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_ROTATE")
-)
-
-(define-object BehaviourScale
-  (in-module "Clutter")
-  (parent "ClutterBehaviour")
-  (c-name "ClutterBehaviourScale")
-  (gtype-id "CLUTTER_TYPE_BEHAVIOUR_SCALE")
-)
-
-(define-object Box
-  (in-module "Clutter")
-  (parent "ClutterActor")
-  (c-name "ClutterBox")
-  (gtype-id "CLUTTER_TYPE_BOX")
+  (c-name "ClutterCanvas")
+  (gtype-id "CLUTTER_TYPE_CANVAS")
 )
 
 (define-object ChildMeta
@@ -145,6 +75,12 @@
   (gtype-id "CLUTTER_TYPE_CONTAINER")
 )
 
+(define-object Content
+  (in-module "Clutter")
+  (c-name "ClutterContent")
+  (gtype-id "CLUTTER_TYPE_CONTENT")
+)
+
 (define-object DeviceManager
   (in-module "Clutter")
   (parent "GObject")
@@ -159,6 +95,13 @@
   (gtype-id "CLUTTER_TYPE_DRAG_ACTION")
 )
 
+(define-object DropAction
+  (in-module "Clutter")
+  (parent "ClutterAction")
+  (c-name "ClutterDropAction")
+  (gtype-id "CLUTTER_TYPE_DROP_ACTION")
+)
+
 (define-object Effect
   (in-module "Clutter")
   (parent "ClutterActorMeta")
@@ -166,11 +109,31 @@
   (gtype-id "CLUTTER_TYPE_EFFECT")
 )
 
-(define-object Group
+(define-object EventTranslator
   (in-module "Clutter")
-  (parent "ClutterActor")
-  (c-name "ClutterGroup")
-  (gtype-id "CLUTTER_TYPE_GROUP")
+  (c-name "ClutterEventTranslator")
+  (gtype-id "CLUTTER_TYPE_EVENT_TRANSLATOR")
+)
+
+(define-object GestureAction
+  (in-module "Clutter")
+  (parent "ClutterAction")
+  (c-name "ClutterGestureAction")
+  (gtype-id "CLUTTER_TYPE_GESTURE_ACTION")
+)
+
+(define-object Image
+  (in-module "Clutter")
+  (parent "GObject")
+  (c-name "ClutterImage")
+  (gtype-id "CLUTTER_TYPE_IMAGE")
+)
+
+(define-object InputDevice
+  (in-module "Clutter")
+  (parent "GObject")
+  (c-name "ClutterInputDevice")
+  (gtype-id "CLUTTER_TYPE_INPUT_DEVICE")
 )
 
 (define-object Interval
@@ -187,6 +150,13 @@
   (gtype-id "CLUTTER_TYPE_LAYOUT_MANAGER")
 )
 
+(define-object GridLayout
+  (in-module "Clutter")
+  (parent "ClutterLayoutManager")
+  (c-name "ClutterGridLayout")
+  (gtype-id "CLUTTER_TYPE_GRID_LAYOUT")
+)
+
 (define-object FlowLayout
   (in-module "Clutter")
   (parent "ClutterLayoutManager")
@@ -222,10 +192,11 @@
   (gtype-id "CLUTTER_TYPE_LAYOUT_META")
 )
 
-(define-object Media
+(define-object MetaGroup
   (in-module "Clutter")
-  (c-name "ClutterMedia")
-  (gtype-id "CLUTTER_TYPE_MEDIA")
+  (parent "GObject")
+  (c-name "ClutterMetaGroup")
+  (gtype-id "CLUTTER_TYPE_META_GROUP")
 )
 
 (define-object Model
@@ -256,6 +227,13 @@
   (gtype-id "CLUTTER_TYPE_OFFSCREEN_EFFECT")
 )
 
+(define-object FlattenEffect
+  (in-module "Clutter")
+  (parent "ClutterOffscreenEffect")
+  (c-name "ClutterFlattenEffect")
+  (gtype-id "CLUTTER_TYPE_FLATTEN_EFFECT")
+)
+
 (define-object DeformEffect
   (in-module "Clutter")
   (parent "ClutterOffscreenEffect")
@@ -263,6 +241,13 @@
   (gtype-id "CLUTTER_TYPE_DEFORM_EFFECT")
 )
 
+(define-object PanAction
+  (in-module "Clutter")
+  (parent "ClutterGestureAction")
+  (c-name "ClutterPanAction")
+  (gtype-id "CLUTTER_TYPE_PAN_ACTION")
+)
+
 (define-object Path
   (in-module "Clutter")
   (parent "GInitiallyUnowned")
@@ -270,18 +255,11 @@
   (gtype-id "CLUTTER_TYPE_PATH")
 )
 
-(define-object Rectangle
-  (in-module "Clutter")
-  (parent "ClutterActor")
-  (c-name "ClutterRectangle")
-  (gtype-id "CLUTTER_TYPE_RECTANGLE")
-)
-
-(define-object Score
+(define-object RotateAction
   (in-module "Clutter")
-  (parent "GObject")
-  (c-name "ClutterScore")
-  (gtype-id "CLUTTER_TYPE_SCORE")
+  (parent "ClutterGestureAction")
+  (c-name "ClutterRotateAction")
+  (gtype-id "CLUTTER_TYPE_ROTATE_ACTION")
 )
 
 (define-object Script
@@ -297,11 +275,11 @@
   (gtype-id "CLUTTER_TYPE_SCRIPTABLE")
 )
 
-(define-object Shader
+(define-object ScrollActor
   (in-module "Clutter")
-  (parent "GObject")
-  (c-name "ClutterShader")
-  (gtype-id "CLUTTER_TYPE_SHADER")
+  (parent "ClutterActor")
+  (c-name "ClutterScrollActor")
+  (gtype-id "CLUTTER_TYPE_SCROLL_ACTOR")
 )
 
 (define-object ShaderEffect
@@ -313,7 +291,7 @@
 
 (define-object Stage
   (in-module "Clutter")
-  (parent "ClutterGroup")
+  (parent "ClutterActor")
   (c-name "ClutterStage")
   (gtype-id "CLUTTER_TYPE_STAGE")
 )
@@ -324,32 +302,39 @@
   (gtype-id "CLUTTER_TYPE_STAGE_WINDOW")
 )
 
-(define-object State
+(define-object SwipeAction
   (in-module "Clutter")
-  (parent "GObject")
-  (c-name "ClutterState")
-  (gtype-id "CLUTTER_TYPE_STATE")
+  (parent "ClutterGestureAction")
+  (c-name "ClutterSwipeAction")
+  (gtype-id "CLUTTER_TYPE_SWIPE_ACTION")
 )
 
-(define-object Text
+(define-object TableLayout
   (in-module "Clutter")
-  (parent "ClutterActor")
-  (c-name "ClutterText")
-  (gtype-id "CLUTTER_TYPE_TEXT")
+  (parent "ClutterLayoutManager")
+  (c-name "ClutterTableLayout")
+  (gtype-id "CLUTTER_TYPE_TABLE_LAYOUT")
 )
 
-(define-object Texture
+(define-object TapAction
+  (in-module "Clutter")
+  (parent "ClutterGestureAction")
+  (c-name "ClutterTapAction")
+  (gtype-id "CLUTTER_TYPE_TAP_ACTION")
+)
+
+(define-object Text
   (in-module "Clutter")
   (parent "ClutterActor")
-  (c-name "ClutterTexture")
-  (gtype-id "CLUTTER_TYPE_TEXTURE")
+  (c-name "ClutterText")
+  (gtype-id "CLUTTER_TYPE_TEXT")
 )
 
-(define-object CairoTexture
+(define-object TextBuffer
   (in-module "Clutter")
-  (parent "ClutterTexture")
-  (c-name "ClutterCairoTexture")
-  (gtype-id "CLUTTER_TYPE_CAIRO_TEXTURE")
+  (parent "GObject")
+  (c-name "ClutterTextBuffer")
+  (gtype-id "CLUTTER_TYPE_TEXT_BUFFER")
 )
 
 (define-object Timeline
@@ -359,106 +344,212 @@
   (gtype-id "CLUTTER_TYPE_TIMELINE")
 )
 
+(define-object Transition
+  (in-module "Clutter")
+  (parent "ClutterTimeline")
+  (c-name "ClutterTransition")
+  (gtype-id "CLUTTER_TYPE_TRANSITION")
+)
+
+(define-object PropertyTransition
+  (in-module "Clutter")
+  (parent "ClutterTransition")
+  (c-name "ClutterPropertyTransition")
+  (gtype-id "CLUTTER_TYPE_PROPERTY_TRANSITION")
+)
+
+(define-object KeyframeTransition
+  (in-module "Clutter")
+  (parent "ClutterPropertyTransition")
+  (c-name "ClutterKeyframeTransition")
+  (gtype-id "CLUTTER_TYPE_KEYFRAME_TRANSITION")
+)
+
+(define-object TransitionGroup
+  (in-module "Clutter")
+  (parent "ClutterTransition")
+  (c-name "ClutterTransitionGroup")
+  (gtype-id "CLUTTER_TYPE_TRANSITION_GROUP")
+)
+
+(define-object ZoomAction
+  (in-module "Clutter")
+  (parent "ClutterGestureAction")
+  (c-name "ClutterZoomAction")
+  (gtype-id "CLUTTER_TYPE_ZOOM_ACTION")
+)
+
 ;; Enumerations and flags ...
 
-(define-flags ActorFlags
+(define-flags RedrawFlags
   (in-module "Clutter")
-  (c-name "ClutterActorFlags")
-  (gtype-id "CLUTTER_TYPE_ACTOR_FLAGS")
+  (c-name "ClutterRedrawFlags")
+  (gtype-id "CLUTTER_TYPE_REDRAW_FLAGS")
   (values
-    '("mapped" "CLUTTER_ACTOR_MAPPED")
-    '("realized" "CLUTTER_ACTOR_REALIZED")
-    '("reactive" "CLUTTER_ACTOR_REACTIVE")
-    '("visible" "CLUTTER_ACTOR_VISIBLE")
-    '("no-layout" "CLUTTER_ACTOR_NO_LAYOUT")
+    '("allocation" "CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION")
   )
 )
 
-(define-flags AllocationFlags
+(define-flags ActorTraverseFlags
   (in-module "Clutter")
-  (c-name "ClutterAllocationFlags")
-  (gtype-id "CLUTTER_TYPE_ALLOCATION_FLAGS")
+  (c-name "ClutterActorTraverseFlags")
+  (gtype-id "CLUTTER_TYPE_ACTOR_TRAVERSE_FLAGS")
   (values
-    '("allocation-none" "CLUTTER_ALLOCATION_NONE")
-    '("absolute-origin-changed" "CLUTTER_ABSOLUTE_ORIGIN_CHANGED")
+    '("depth-first" "CLUTTER_ACTOR_TRAVERSE_DEPTH_FIRST")
+    '("breadth-first" "CLUTTER_ACTOR_TRAVERSE_BREADTH_FIRST")
   )
 )
 
-(define-flags RedrawFlags
+(define-flags ActorTraverseVisitFlags
   (in-module "Clutter")
-  (c-name "ClutterRedrawFlags")
-  (gtype-id "CLUTTER_TYPE_REDRAW_FLAGS")
+  (c-name "ClutterActorTraverseVisitFlags")
+  (gtype-id "CLUTTER_TYPE_ACTOR_TRAVERSE_VISIT_FLAGS")
   (values
-    '("box" "CLUTTER_REDRAW_CLIPPED_TO_BOX")
-    '("allocation" "CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION")
+    '("continue" "CLUTTER_ACTOR_TRAVERSE_VISIT_CONTINUE")
+    '("skip-children" "CLUTTER_ACTOR_TRAVERSE_VISIT_SKIP_CHILDREN")
+    '("break" "CLUTTER_ACTOR_TRAVERSE_VISIT_BREAK")
   )
 )
 
-(define-enum AlignAxis
+(define-flags DebugFlag
   (in-module "Clutter")
-  (c-name "ClutterAlignAxis")
-  (gtype-id "CLUTTER_TYPE_ALIGN_AXIS")
+  (c-name "ClutterDebugFlag")
+  (gtype-id "CLUTTER_TYPE_DEBUG_FLAG")
   (values
-    '("x-axis" "CLUTTER_ALIGN_X_AXIS")
-    '("y-axis" "CLUTTER_ALIGN_Y_AXIS")
+    '("misc" "CLUTTER_DEBUG_MISC")
+    '("actor" "CLUTTER_DEBUG_ACTOR")
+    '("texture" "CLUTTER_DEBUG_TEXTURE")
+    '("event" "CLUTTER_DEBUG_EVENT")
+    '("paint" "CLUTTER_DEBUG_PAINT")
+    '("pango" "CLUTTER_DEBUG_PANGO")
+    '("backend" "CLUTTER_DEBUG_BACKEND")
+    '("scheduler" "CLUTTER_DEBUG_SCHEDULER")
+    '("script" "CLUTTER_DEBUG_SCRIPT")
+    '("shader" "CLUTTER_DEBUG_SHADER")
+    '("multistage" "CLUTTER_DEBUG_MULTISTAGE")
+    '("animation" "CLUTTER_DEBUG_ANIMATION")
+    '("layout" "CLUTTER_DEBUG_LAYOUT")
+    '("pick" "CLUTTER_DEBUG_PICK")
+    '("eventloop" "CLUTTER_DEBUG_EVENTLOOP")
+    '("clipping" "CLUTTER_DEBUG_CLIPPING")
+    '("oob-transforms" "CLUTTER_DEBUG_OOB_TRANSFORMS")
+  )
+)
+
+(define-flags PickDebugFlag
+  (in-module "Clutter")
+  (c-name "ClutterPickDebugFlag")
+  (gtype-id "CLUTTER_TYPE_PICK_DEBUG_FLAG")
+  (values
+    '("nop-picking" "CLUTTER_DEBUG_NOP_PICKING")
+    '("dump-pick-buffers" "CLUTTER_DEBUG_DUMP_PICK_BUFFERS")
   )
 )
 
-(define-enum Interpolation
+(define-flags DrawDebugFlag
   (in-module "Clutter")
-  (c-name "ClutterInterpolation")
-  (gtype-id "CLUTTER_TYPE_INTERPOLATION")
+  (c-name "ClutterDrawDebugFlag")
+  (gtype-id "CLUTTER_TYPE_DRAW_DEBUG_FLAG")
   (values
-    '("linear" "CLUTTER_INTERPOLATION_LINEAR")
-    '("cubic" "CLUTTER_INTERPOLATION_CUBIC")
+    '("disable-swap-events" "CLUTTER_DEBUG_DISABLE_SWAP_EVENTS")
+    '("disable-clipped-redraws" "CLUTTER_DEBUG_DISABLE_CLIPPED_REDRAWS")
+    '("redraws" "CLUTTER_DEBUG_REDRAWS")
+    '("paint-volumes" "CLUTTER_DEBUG_PAINT_VOLUMES")
+    '("disable-culling" "CLUTTER_DEBUG_DISABLE_CULLING")
+    '("disable-offscreen-redirect" "CLUTTER_DEBUG_DISABLE_OFFSCREEN_REDIRECT")
+    '("continuous-redraw" "CLUTTER_DEBUG_CONTINUOUS_REDRAW")
+    '("paint-deform-tiles" "CLUTTER_DEBUG_PAINT_DEFORM_TILES")
   )
 )
 
-(define-enum BindCoordinate
+(define-enum RotateAxis
   (in-module "Clutter")
-  (c-name "ClutterBindCoordinate")
-  (gtype-id "CLUTTER_TYPE_BIND_COORDINATE")
+  (c-name "ClutterRotateAxis")
+  (gtype-id "CLUTTER_TYPE_ROTATE_AXIS")
   (values
-    '("x" "CLUTTER_BIND_X")
-    '("y" "CLUTTER_BIND_Y")
-    '("z" "CLUTTER_BIND_Z")
-    '("width" "CLUTTER_BIND_WIDTH")
-    '("height" "CLUTTER_BIND_HEIGHT")
+    '("x-axis" "CLUTTER_X_AXIS")
+    '("y-axis" "CLUTTER_Y_AXIS")
+    '("z-axis" "CLUTTER_Z_AXIS")
   )
 )
 
-(define-enum BinAlignment
+(define-enum RequestMode
   (in-module "Clutter")
-  (c-name "ClutterBinAlignment")
-  (gtype-id "CLUTTER_TYPE_BIN_ALIGNMENT")
+  (c-name "ClutterRequestMode")
+  (gtype-id "CLUTTER_TYPE_REQUEST_MODE")
   (values
-    '("fixed" "CLUTTER_BIN_ALIGNMENT_FIXED")
-    '("fill" "CLUTTER_BIN_ALIGNMENT_FILL")
-    '("start" "CLUTTER_BIN_ALIGNMENT_START")
-    '("end" "CLUTTER_BIN_ALIGNMENT_END")
-    '("center" "CLUTTER_BIN_ALIGNMENT_CENTER")
+    '("height-for-width" "CLUTTER_REQUEST_HEIGHT_FOR_WIDTH")
+    '("width-for-height" "CLUTTER_REQUEST_WIDTH_FOR_HEIGHT")
   )
 )
 
-(define-enum BoxAlignment
+(define-enum AnimationMode
   (in-module "Clutter")
-  (c-name "ClutterBoxAlignment")
-  (gtype-id "CLUTTER_TYPE_BOX_ALIGNMENT")
+  (c-name "ClutterAnimationMode")
+  (gtype-id "CLUTTER_TYPE_ANIMATION_MODE")
   (values
-    '("start" "CLUTTER_BOX_ALIGNMENT_START")
-    '("end" "CLUTTER_BOX_ALIGNMENT_END")
-    '("center" "CLUTTER_BOX_ALIGNMENT_CENTER")
+    '("custom-mode" "CLUTTER_CUSTOM_MODE")
+    '("linear" "CLUTTER_LINEAR")
+    '("ease-in-quad" "CLUTTER_EASE_IN_QUAD")
+    '("ease-out-quad" "CLUTTER_EASE_OUT_QUAD")
+    '("ease-in-out-quad" "CLUTTER_EASE_IN_OUT_QUAD")
+    '("ease-in-cubic" "CLUTTER_EASE_IN_CUBIC")
+    '("ease-out-cubic" "CLUTTER_EASE_OUT_CUBIC")
+    '("ease-in-out-cubic" "CLUTTER_EASE_IN_OUT_CUBIC")
+    '("ease-in-quart" "CLUTTER_EASE_IN_QUART")
+    '("ease-out-quart" "CLUTTER_EASE_OUT_QUART")
+    '("ease-in-out-quart" "CLUTTER_EASE_IN_OUT_QUART")
+    '("ease-in-quint" "CLUTTER_EASE_IN_QUINT")
+    '("ease-out-quint" "CLUTTER_EASE_OUT_QUINT")
+    '("ease-in-out-quint" "CLUTTER_EASE_IN_OUT_QUINT")
+    '("ease-in-sine" "CLUTTER_EASE_IN_SINE")
+    '("ease-out-sine" "CLUTTER_EASE_OUT_SINE")
+    '("ease-in-out-sine" "CLUTTER_EASE_IN_OUT_SINE")
+    '("ease-in-expo" "CLUTTER_EASE_IN_EXPO")
+    '("ease-out-expo" "CLUTTER_EASE_OUT_EXPO")
+    '("ease-in-out-expo" "CLUTTER_EASE_IN_OUT_EXPO")
+    '("ease-in-circ" "CLUTTER_EASE_IN_CIRC")
+    '("ease-out-circ" "CLUTTER_EASE_OUT_CIRC")
+    '("ease-in-out-circ" "CLUTTER_EASE_IN_OUT_CIRC")
+    '("ease-in-elastic" "CLUTTER_EASE_IN_ELASTIC")
+    '("ease-out-elastic" "CLUTTER_EASE_OUT_ELASTIC")
+    '("ease-in-out-elastic" "CLUTTER_EASE_IN_OUT_ELASTIC")
+    '("ease-in-back" "CLUTTER_EASE_IN_BACK")
+    '("ease-out-back" "CLUTTER_EASE_OUT_BACK")
+    '("ease-in-out-back" "CLUTTER_EASE_IN_OUT_BACK")
+    '("ease-in-bounce" "CLUTTER_EASE_IN_BOUNCE")
+    '("ease-out-bounce" "CLUTTER_EASE_OUT_BOUNCE")
+    '("ease-in-out-bounce" "CLUTTER_EASE_IN_OUT_BOUNCE")
+    '("steps" "CLUTTER_STEPS")
+    '("step-start" "CLUTTER_STEP_START")
+    '("step-end" "CLUTTER_STEP_END")
+    '("cubic-bezier" "CLUTTER_CUBIC_BEZIER")
+    '("ease" "CLUTTER_EASE")
+    '("ease-in" "CLUTTER_EASE_IN")
+    '("ease-out" "CLUTTER_EASE_OUT")
+    '("ease-in-out" "CLUTTER_EASE_IN_OUT")
+    '("animation-last" "CLUTTER_ANIMATION_LAST")
   )
 )
 
-(define-enum DragAxis
+(define-enum TextDirection
   (in-module "Clutter")
-  (c-name "ClutterDragAxis")
-  (gtype-id "CLUTTER_TYPE_DRAG_AXIS")
+  (c-name "ClutterTextDirection")
+  (gtype-id "CLUTTER_TYPE_TEXT_DIRECTION")
   (values
-    '("axis-none" "CLUTTER_DRAG_AXIS_NONE")
-    '("x-axis" "CLUTTER_DRAG_X_AXIS")
-    '("y-axis" "CLUTTER_DRAG_Y_AXIS")
+    '("default" "CLUTTER_TEXT_DIRECTION_DEFAULT")
+    '("ltr" "CLUTTER_TEXT_DIRECTION_LTR")
+    '("rtl" "CLUTTER_TEXT_DIRECTION_RTL")
+  )
+)
+
+(define-enum ShaderType
+  (in-module "Clutter")
+  (c-name "ClutterShaderType")
+  (gtype-id "CLUTTER_TYPE_SHADER_TYPE")
+  (values
+    '("vertex-shader" "CLUTTER_VERTEX_SHADER")
+    '("fragment-shader" "CLUTTER_FRAGMENT_SHADER")
   )
 )
 
@@ -480,65 +571,229 @@
     '("button3-mask" "CLUTTER_BUTTON3_MASK")
     '("button4-mask" "CLUTTER_BUTTON4_MASK")
     '("button5-mask" "CLUTTER_BUTTON5_MASK")
+    '("modifier-reserved-13-mask" "CLUTTER_MODIFIER_RESERVED_13_MASK")
+    '("modifier-reserved-14-mask" "CLUTTER_MODIFIER_RESERVED_14_MASK")
+    '("modifier-reserved-15-mask" "CLUTTER_MODIFIER_RESERVED_15_MASK")
+    '("modifier-reserved-16-mask" "CLUTTER_MODIFIER_RESERVED_16_MASK")
+    '("modifier-reserved-17-mask" "CLUTTER_MODIFIER_RESERVED_17_MASK")
+    '("modifier-reserved-18-mask" "CLUTTER_MODIFIER_RESERVED_18_MASK")
+    '("modifier-reserved-19-mask" "CLUTTER_MODIFIER_RESERVED_19_MASK")
+    '("modifier-reserved-20-mask" "CLUTTER_MODIFIER_RESERVED_20_MASK")
+    '("modifier-reserved-21-mask" "CLUTTER_MODIFIER_RESERVED_21_MASK")
+    '("modifier-reserved-22-mask" "CLUTTER_MODIFIER_RESERVED_22_MASK")
+    '("modifier-reserved-23-mask" "CLUTTER_MODIFIER_RESERVED_23_MASK")
+    '("modifier-reserved-24-mask" "CLUTTER_MODIFIER_RESERVED_24_MASK")
+    '("modifier-reserved-25-mask" "CLUTTER_MODIFIER_RESERVED_25_MASK")
     '("super-mask" "CLUTTER_SUPER_MASK")
     '("hyper-mask" "CLUTTER_HYPER_MASK")
     '("meta-mask" "CLUTTER_META_MASK")
+    '("modifier-reserved-29-mask" "CLUTTER_MODIFIER_RESERVED_29_MASK")
     '("release-mask" "CLUTTER_RELEASE_MASK")
     '("modifier-mask" "CLUTTER_MODIFIER_MASK")
   )
 )
 
-(define-flags EventFlags
+(define-flags ActorFlags
   (in-module "Clutter")
-  (c-name "ClutterEventFlags")
-  (gtype-id "CLUTTER_TYPE_EVENT_FLAGS")
+  (c-name "ClutterActorFlags")
+  (gtype-id "CLUTTER_TYPE_ACTOR_FLAGS")
   (values
-    '("none" "CLUTTER_EVENT_NONE")
-    '("flag-synthetic" "CLUTTER_EVENT_FLAG_SYNTHETIC")
+    '("mapped" "CLUTTER_ACTOR_MAPPED")
+    '("realized" "CLUTTER_ACTOR_REALIZED")
+    '("reactive" "CLUTTER_ACTOR_REACTIVE")
+    '("visible" "CLUTTER_ACTOR_VISIBLE")
+    '("no-layout" "CLUTTER_ACTOR_NO_LAYOUT")
   )
 )
 
-(define-enum EventType
+(define-flags OffscreenRedirect
   (in-module "Clutter")
-  (c-name "ClutterEventType")
-  (gtype-id "CLUTTER_TYPE_EVENT_TYPE")
+  (c-name "ClutterOffscreenRedirect")
+  (gtype-id "CLUTTER_TYPE_OFFSCREEN_REDIRECT")
   (values
-    '("nothing" "CLUTTER_NOTHING")
-    '("key-press" "CLUTTER_KEY_PRESS")
-    '("key-release" "CLUTTER_KEY_RELEASE")
-    '("motion" "CLUTTER_MOTION")
-    '("enter" "CLUTTER_ENTER")
-    '("leave" "CLUTTER_LEAVE")
-    '("button-press" "CLUTTER_BUTTON_PRESS")
-    '("button-release" "CLUTTER_BUTTON_RELEASE")
-    '("scroll" "CLUTTER_SCROLL")
-    '("stage-state" "CLUTTER_STAGE_STATE")
-    '("destroy-notify" "CLUTTER_DESTROY_NOTIFY")
-    '("client-message" "CLUTTER_CLIENT_MESSAGE")
-    '("delete" "CLUTTER_DELETE")
+    '("automatic-for-opacity" "CLUTTER_OFFSCREEN_REDIRECT_AUTOMATIC_FOR_OPACITY")
+    '("always" "CLUTTER_OFFSCREEN_REDIRECT_ALWAYS")
   )
 )
 
-(define-enum ScrollDirection
+(define-flags AllocationFlags
   (in-module "Clutter")
-  (c-name "ClutterScrollDirection")
-  (gtype-id "CLUTTER_TYPE_SCROLL_DIRECTION")
+  (c-name "ClutterAllocationFlags")
+  (gtype-id "CLUTTER_TYPE_ALLOCATION_FLAGS")
   (values
-    '("up" "CLUTTER_SCROLL_UP")
-    '("down" "CLUTTER_SCROLL_DOWN")
-    '("left" "CLUTTER_SCROLL_LEFT")
-    '("right" "CLUTTER_SCROLL_RIGHT")
+    '("allocation-none" "CLUTTER_ALLOCATION_NONE")
+    '("absolute-origin-changed" "CLUTTER_ABSOLUTE_ORIGIN_CHANGED")
+    '("delegate-layout" "CLUTTER_DELEGATE_LAYOUT")
   )
 )
 
-(define-flags StageState
+(define-enum AlignAxis
   (in-module "Clutter")
-  (c-name "ClutterStageState")
-  (gtype-id "CLUTTER_TYPE_STAGE_STATE")
+  (c-name "ClutterAlignAxis")
+  (gtype-id "CLUTTER_TYPE_ALIGN_AXIS")
   (values
-    '("fullscreen" "CLUTTER_STAGE_STATE_FULLSCREEN")
-    '("offscreen" "CLUTTER_STAGE_STATE_OFFSCREEN")
-    '("activated" "CLUTTER_STAGE_STATE_ACTIVATED")
+    '("x-axis" "CLUTTER_ALIGN_X_AXIS")
+    '("y-axis" "CLUTTER_ALIGN_Y_AXIS")
+    '("both" "CLUTTER_ALIGN_BOTH")
+  )
+)
+
+(define-enum BindCoordinate
+  (in-module "Clutter")
+  (c-name "ClutterBindCoordinate")
+  (gtype-id "CLUTTER_TYPE_BIND_COORDINATE")
+  (values
+    '("x" "CLUTTER_BIND_X")
+    '("y" "CLUTTER_BIND_Y")
+    '("width" "CLUTTER_BIND_WIDTH")
+    '("height" "CLUTTER_BIND_HEIGHT")
+    '("position" "CLUTTER_BIND_POSITION")
+    '("size" "CLUTTER_BIND_SIZE")
+    '("all" "CLUTTER_BIND_ALL")
+  )
+)
+
+(define-flags EffectPaintFlags
+  (in-module "Clutter")
+  (c-name "ClutterEffectPaintFlags")
+  (gtype-id "CLUTTER_TYPE_EFFECT_PAINT_FLAGS")
+  (values
+    '("dirty" "CLUTTER_EFFECT_PAINT_ACTOR_DIRTY")
+  )
+)
+
+(define-enum LongPressState
+  (in-module "Clutter")
+  (c-name "ClutterLongPressState")
+  (gtype-id "CLUTTER_TYPE_LONG_PRESS_STATE")
+  (values
+    '("query" "CLUTTER_LONG_PRESS_QUERY")
+    '("activate" "CLUTTER_LONG_PRESS_ACTIVATE")
+    '("cancel" "CLUTTER_LONG_PRESS_CANCEL")
+  )
+)
+
+(define-enum StaticColor
+  (in-module "Clutter")
+  (c-name "ClutterStaticColor")
+  (gtype-id "CLUTTER_TYPE_STATIC_COLOR")
+  (values
+    '("white" "CLUTTER_COLOR_WHITE")
+    '("black" "CLUTTER_COLOR_BLACK")
+    '("red" "CLUTTER_COLOR_RED")
+    '("dark-red" "CLUTTER_COLOR_DARK_RED")
+    '("green" "CLUTTER_COLOR_GREEN")
+    '("dark-green" "CLUTTER_COLOR_DARK_GREEN")
+    '("blue" "CLUTTER_COLOR_BLUE")
+    '("dark-blue" "CLUTTER_COLOR_DARK_BLUE")
+    '("cyan" "CLUTTER_COLOR_CYAN")
+    '("dark-cyan" "CLUTTER_COLOR_DARK_CYAN")
+    '("magenta" "CLUTTER_COLOR_MAGENTA")
+    '("dark-magenta" "CLUTTER_COLOR_DARK_MAGENTA")
+    '("yellow" "CLUTTER_COLOR_YELLOW")
+    '("dark-yellow" "CLUTTER_COLOR_DARK_YELLOW")
+    '("gray" "CLUTTER_COLOR_GRAY")
+    '("dark-gray" "CLUTTER_COLOR_DARK_GRAY")
+    '("light-gray" "CLUTTER_COLOR_LIGHT_GRAY")
+    '("butter" "CLUTTER_COLOR_BUTTER")
+    '("butter-light" "CLUTTER_COLOR_BUTTER_LIGHT")
+    '("butter-dark" "CLUTTER_COLOR_BUTTER_DARK")
+    '("orange" "CLUTTER_COLOR_ORANGE")
+    '("orange-light" "CLUTTER_COLOR_ORANGE_LIGHT")
+    '("orange-dark" "CLUTTER_COLOR_ORANGE_DARK")
+    '("chocolate" "CLUTTER_COLOR_CHOCOLATE")
+    '("chocolate-light" "CLUTTER_COLOR_CHOCOLATE_LIGHT")
+    '("chocolate-dark" "CLUTTER_COLOR_CHOCOLATE_DARK")
+    '("chameleon" "CLUTTER_COLOR_CHAMELEON")
+    '("chameleon-light" "CLUTTER_COLOR_CHAMELEON_LIGHT")
+    '("chameleon-dark" "CLUTTER_COLOR_CHAMELEON_DARK")
+    '("sky-blue" "CLUTTER_COLOR_SKY_BLUE")
+    '("sky-blue-light" "CLUTTER_COLOR_SKY_BLUE_LIGHT")
+    '("sky-blue-dark" "CLUTTER_COLOR_SKY_BLUE_DARK")
+    '("plum" "CLUTTER_COLOR_PLUM")
+    '("plum-light" "CLUTTER_COLOR_PLUM_LIGHT")
+    '("plum-dark" "CLUTTER_COLOR_PLUM_DARK")
+    '("scarlet-red" "CLUTTER_COLOR_SCARLET_RED")
+    '("scarlet-red-light" "CLUTTER_COLOR_SCARLET_RED_LIGHT")
+    '("scarlet-red-dark" "CLUTTER_COLOR_SCARLET_RED_DARK")
+    '("aluminium-1" "CLUTTER_COLOR_ALUMINIUM_1")
+    '("aluminium-2" "CLUTTER_COLOR_ALUMINIUM_2")
+    '("aluminium-3" "CLUTTER_COLOR_ALUMINIUM_3")
+    '("aluminium-4" "CLUTTER_COLOR_ALUMINIUM_4")
+    '("aluminium-5" "CLUTTER_COLOR_ALUMINIUM_5")
+    '("aluminium-6" "CLUTTER_COLOR_ALUMINIUM_6")
+    '("transparent" "CLUTTER_COLOR_TRANSPARENT")
+  )
+)
+
+(define-enum DragAxis
+  (in-module "Clutter")
+  (c-name "ClutterDragAxis")
+  (gtype-id "CLUTTER_TYPE_DRAG_AXIS")
+  (values
+    '("axis-none" "CLUTTER_DRAG_AXIS_NONE")
+    '("x-axis" "CLUTTER_DRAG_X_AXIS")
+    '("y-axis" "CLUTTER_DRAG_Y_AXIS")
+  )
+)
+
+(define-flags EventFlags
+  (in-module "Clutter")
+  (c-name "ClutterEventFlags")
+  (gtype-id "CLUTTER_TYPE_EVENT_FLAGS")
+  (values
+    '("none" "CLUTTER_EVENT_NONE")
+    '("flag-synthetic" "CLUTTER_EVENT_FLAG_SYNTHETIC")
+  )
+)
+
+(define-enum EventType
+  (in-module "Clutter")
+  (c-name "ClutterEventType")
+  (gtype-id "CLUTTER_TYPE_EVENT_TYPE")
+  (values
+    '("nothing" "CLUTTER_NOTHING")
+    '("key-press" "CLUTTER_KEY_PRESS")
+    '("key-release" "CLUTTER_KEY_RELEASE")
+    '("motion" "CLUTTER_MOTION")
+    '("enter" "CLUTTER_ENTER")
+    '("leave" "CLUTTER_LEAVE")
+    '("button-press" "CLUTTER_BUTTON_PRESS")
+    '("button-release" "CLUTTER_BUTTON_RELEASE")
+    '("scroll" "CLUTTER_SCROLL")
+    '("stage-state" "CLUTTER_STAGE_STATE")
+    '("destroy-notify" "CLUTTER_DESTROY_NOTIFY")
+    '("client-message" "CLUTTER_CLIENT_MESSAGE")
+    '("delete" "CLUTTER_DELETE")
+    '("touch-begin" "CLUTTER_TOUCH_BEGIN")
+    '("touch-update" "CLUTTER_TOUCH_UPDATE")
+    '("touch-end" "CLUTTER_TOUCH_END")
+    '("touch-cancel" "CLUTTER_TOUCH_CANCEL")
+    '("event-last" "CLUTTER_EVENT_LAST")
+  )
+)
+
+(define-enum ScrollDirection
+  (in-module "Clutter")
+  (c-name "ClutterScrollDirection")
+  (gtype-id "CLUTTER_TYPE_SCROLL_DIRECTION")
+  (values
+    '("up" "CLUTTER_SCROLL_UP")
+    '("down" "CLUTTER_SCROLL_DOWN")
+    '("left" "CLUTTER_SCROLL_LEFT")
+    '("right" "CLUTTER_SCROLL_RIGHT")
+    '("smooth" "CLUTTER_SCROLL_SMOOTH")
+  )
+)
+
+(define-flags StageState
+  (in-module "Clutter")
+  (c-name "ClutterStageState")
+  (gtype-id "CLUTTER_TYPE_STAGE_STATE")
+  (values
+    '("fullscreen" "CLUTTER_STAGE_STATE_FULLSCREEN")
+    '("offscreen" "CLUTTER_STAGE_STATE_OFFSCREEN")
+    '("activated" "CLUTTER_STAGE_STATE_ACTIVATED")
   )
 )
 
@@ -579,57 +834,54 @@
     '("pointer-device" "CLUTTER_POINTER_DEVICE")
     '("keyboard-device" "CLUTTER_KEYBOARD_DEVICE")
     '("extension-device" "CLUTTER_EXTENSION_DEVICE")
+    '("joystick-device" "CLUTTER_JOYSTICK_DEVICE")
+    '("tablet-device" "CLUTTER_TABLET_DEVICE")
+    '("touchpad-device" "CLUTTER_TOUCHPAD_DEVICE")
+    '("touchscreen-device" "CLUTTER_TOUCHSCREEN_DEVICE")
+    '("pen-device" "CLUTTER_PEN_DEVICE")
+    '("eraser-device" "CLUTTER_ERASER_DEVICE")
+    '("cursor-device" "CLUTTER_CURSOR_DEVICE")
     '("n-device-types" "CLUTTER_N_DEVICE_TYPES")
   )
 )
 
-(define-enum InitError
-  (in-module "Clutter")
-  (c-name "ClutterInitError")
-  (gtype-id "CLUTTER_TYPE_INIT_ERROR")
-  (values
-    '("success" "CLUTTER_INIT_SUCCESS")
-    '("error-unknown" "CLUTTER_INIT_ERROR_UNKNOWN")
-    '("error-threads" "CLUTTER_INIT_ERROR_THREADS")
-    '("error-backend" "CLUTTER_INIT_ERROR_BACKEND")
-    '("error-internal" "CLUTTER_INIT_ERROR_INTERNAL")
-  )
-)
-
-(define-enum PathNodeType
+(define-enum InputMode
   (in-module "Clutter")
-  (c-name "ClutterPathNodeType")
-  (gtype-id "CLUTTER_TYPE_PATH_NODE_TYPE")
+  (c-name "ClutterInputMode")
+  (gtype-id "CLUTTER_TYPE_INPUT_MODE")
   (values
-    '("move-to" "CLUTTER_PATH_MOVE_TO")
-    '("line-to" "CLUTTER_PATH_LINE_TO")
-    '("curve-to" "CLUTTER_PATH_CURVE_TO")
-    '("close" "CLUTTER_PATH_CLOSE")
-    '("rel-move-to" "CLUTTER_PATH_REL_MOVE_TO")
-    '("rel-line-to" "CLUTTER_PATH_REL_LINE_TO")
-    '("rel-curve-to" "CLUTTER_PATH_REL_CURVE_TO")
+    '("master" "CLUTTER_INPUT_MODE_MASTER")
+    '("slave" "CLUTTER_INPUT_MODE_SLAVE")
+    '("floating" "CLUTTER_INPUT_MODE_FLOATING")
   )
 )
 
-(define-enum ScriptError
+(define-enum InputAxis
   (in-module "Clutter")
-  (c-name "ClutterScriptError")
-  (gtype-id "CLUTTER_TYPE_SCRIPT_ERROR")
+  (c-name "ClutterInputAxis")
+  (gtype-id "CLUTTER_TYPE_INPUT_AXIS")
   (values
-    '("type-function" "CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION")
-    '("property" "CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY")
-    '("value" "CLUTTER_SCRIPT_ERROR_INVALID_VALUE")
+    '("ignore" "CLUTTER_INPUT_AXIS_IGNORE")
+    '("x" "CLUTTER_INPUT_AXIS_X")
+    '("y" "CLUTTER_INPUT_AXIS_Y")
+    '("pressure" "CLUTTER_INPUT_AXIS_PRESSURE")
+    '("xtilt" "CLUTTER_INPUT_AXIS_XTILT")
+    '("ytilt" "CLUTTER_INPUT_AXIS_YTILT")
+    '("wheel" "CLUTTER_INPUT_AXIS_WHEEL")
+    '("distance" "CLUTTER_INPUT_AXIS_DISTANCE")
+    '("last" "CLUTTER_INPUT_AXIS_LAST")
   )
 )
 
-(define-enum ShaderError
+(define-enum SnapEdge
   (in-module "Clutter")
-  (c-name "ClutterShaderError")
-  (gtype-id "CLUTTER_TYPE_SHADER_ERROR")
+  (c-name "ClutterSnapEdge")
+  (gtype-id "CLUTTER_TYPE_SNAP_EDGE")
   (values
-    '("no-asm" "CLUTTER_SHADER_ERROR_NO_ASM")
-    '("no-glsl" "CLUTTER_SHADER_ERROR_NO_GLSL")
-    '("compile" "CLUTTER_SHADER_ERROR_COMPILE")
+    '("top" "CLUTTER_SNAP_EDGE_TOP")
+    '("right" "CLUTTER_SNAP_EDGE_RIGHT")
+    '("bottom" "CLUTTER_SNAP_EDGE_BOTTOM")
+    '("left" "CLUTTER_SNAP_EDGE_LEFT")
   )
 )
 
@@ -644,37 +896,26 @@
   )
 )
 
-(define-enum TextureError
-  (in-module "Clutter")
-  (c-name "ClutterTextureError")
-  (gtype-id "CLUTTER_TYPE_TEXTURE_ERROR")
-  (values
-    '("out-of-memory" "CLUTTER_TEXTURE_ERROR_OUT_OF_MEMORY")
-    '("no-yuv" "CLUTTER_TEXTURE_ERROR_NO_YUV")
-    '("bad-format" "CLUTTER_TEXTURE_ERROR_BAD_FORMAT")
-  )
-)
-
-(define-flags TextureFlags
+(define-flags SwipeDirection
   (in-module "Clutter")
-  (c-name "ClutterTextureFlags")
-  (gtype-id "CLUTTER_TYPE_TEXTURE_FLAGS")
+  (c-name "ClutterSwipeDirection")
+  (gtype-id "CLUTTER_TYPE_SWIPE_DIRECTION")
   (values
-    '("none" "CLUTTER_TEXTURE_NONE")
-    '("rgb-flag-bgr" "CLUTTER_TEXTURE_RGB_FLAG_BGR")
-    '("rgb-flag-premult" "CLUTTER_TEXTURE_RGB_FLAG_PREMULT")
-    '("yuv-flag-yuv2" "CLUTTER_TEXTURE_YUV_FLAG_YUV2")
+    '("up" "CLUTTER_SWIPE_DIRECTION_UP")
+    '("down" "CLUTTER_SWIPE_DIRECTION_DOWN")
+    '("left" "CLUTTER_SWIPE_DIRECTION_LEFT")
+    '("right" "CLUTTER_SWIPE_DIRECTION_RIGHT")
   )
 )
 
-(define-enum TextureQuality
+(define-enum PanAxis
   (in-module "Clutter")
-  (c-name "ClutterTextureQuality")
-  (gtype-id "CLUTTER_TYPE_TEXTURE_QUALITY")
+  (c-name "ClutterPanAxis")
+  (gtype-id "CLUTTER_TYPE_PAN_AXIS")
   (values
-    '("low" "CLUTTER_TEXTURE_QUALITY_LOW")
-    '("medium" "CLUTTER_TEXTURE_QUALITY_MEDIUM")
-    '("high" "CLUTTER_TEXTURE_QUALITY_HIGH")
+    '("axis-none" "CLUTTER_PAN_AXIS_NONE")
+    '("x-axis" "CLUTTER_PAN_X_AXIS")
+    '("y-axis" "CLUTTER_PAN_Y_AXIS")
   )
 )
 
@@ -688,187 +929,294 @@
   )
 )
 
-(define-enum Gravity
+(define-enum UnitType
   (in-module "Clutter")
-  (c-name "ClutterGravity")
-  (gtype-id "CLUTTER_TYPE_GRAVITY")
+  (c-name "ClutterUnitType")
+  (gtype-id "CLUTTER_TYPE_UNIT_TYPE")
   (values
-    '("none" "CLUTTER_GRAVITY_NONE")
-    '("north" "CLUTTER_GRAVITY_NORTH")
-    '("north-east" "CLUTTER_GRAVITY_NORTH_EAST")
-    '("east" "CLUTTER_GRAVITY_EAST")
-    '("south-east" "CLUTTER_GRAVITY_SOUTH_EAST")
-    '("south" "CLUTTER_GRAVITY_SOUTH")
-    '("south-west" "CLUTTER_GRAVITY_SOUTH_WEST")
-    '("west" "CLUTTER_GRAVITY_WEST")
-    '("north-west" "CLUTTER_GRAVITY_NORTH_WEST")
-    '("center" "CLUTTER_GRAVITY_CENTER")
+    '("pixel" "CLUTTER_UNIT_PIXEL")
+    '("em" "CLUTTER_UNIT_EM")
+    '("mm" "CLUTTER_UNIT_MM")
+    '("point" "CLUTTER_UNIT_POINT")
+    '("cm" "CLUTTER_UNIT_CM")
   )
 )
 
-(define-enum RotateAxis
+(define-enum PathNodeType
   (in-module "Clutter")
-  (c-name "ClutterRotateAxis")
-  (gtype-id "CLUTTER_TYPE_ROTATE_AXIS")
+  (c-name "ClutterPathNodeType")
+  (gtype-id "CLUTTER_TYPE_PATH_NODE_TYPE")
   (values
-    '("x-axis" "CLUTTER_X_AXIS")
-    '("y-axis" "CLUTTER_Y_AXIS")
-    '("z-axis" "CLUTTER_Z_AXIS")
+    '("move-to" "CLUTTER_PATH_MOVE_TO")
+    '("line-to" "CLUTTER_PATH_LINE_TO")
+    '("curve-to" "CLUTTER_PATH_CURVE_TO")
+    '("close" "CLUTTER_PATH_CLOSE")
+    '("rel-move-to" "CLUTTER_PATH_REL_MOVE_TO")
+    '("rel-line-to" "CLUTTER_PATH_REL_LINE_TO")
+    '("rel-curve-to" "CLUTTER_PATH_REL_CURVE_TO")
   )
 )
 
-(define-enum RotateDirection
+(define-enum ActorAlign
   (in-module "Clutter")
-  (c-name "ClutterRotateDirection")
-  (gtype-id "CLUTTER_TYPE_ROTATE_DIRECTION")
+  (c-name "ClutterActorAlign")
+  (gtype-id "CLUTTER_TYPE_ACTOR_ALIGN")
   (values
-    '("cw" "CLUTTER_ROTATE_CW")
-    '("ccw" "CLUTTER_ROTATE_CCW")
+    '("fill" "CLUTTER_ACTOR_ALIGN_FILL")
+    '("start" "CLUTTER_ACTOR_ALIGN_START")
+    '("center" "CLUTTER_ACTOR_ALIGN_CENTER")
+    '("end" "CLUTTER_ACTOR_ALIGN_END")
   )
 )
 
-(define-enum RequestMode
+(define-flags RepaintFlags
   (in-module "Clutter")
-  (c-name "ClutterRequestMode")
-  (gtype-id "CLUTTER_TYPE_REQUEST_MODE")
+  (c-name "ClutterRepaintFlags")
+  (gtype-id "CLUTTER_TYPE_REPAINT_FLAGS")
   (values
-    '("height-for-width" "CLUTTER_REQUEST_HEIGHT_FOR_WIDTH")
-    '("width-for-height" "CLUTTER_REQUEST_WIDTH_FOR_HEIGHT")
+    '("pre-paint" "CLUTTER_REPAINT_FLAGS_PRE_PAINT")
+    '("post-paint" "CLUTTER_REPAINT_FLAGS_POST_PAINT")
+    '("queue-redraw-on-add" "CLUTTER_REPAINT_FLAGS_QUEUE_REDRAW_ON_ADD")
   )
 )
 
-(define-enum AnimationMode
+(define-enum ContentGravity
   (in-module "Clutter")
-  (c-name "ClutterAnimationMode")
-  (gtype-id "CLUTTER_TYPE_ANIMATION_MODE")
+  (c-name "ClutterContentGravity")
+  (gtype-id "CLUTTER_TYPE_CONTENT_GRAVITY")
   (values
-    '("custom-mode" "CLUTTER_CUSTOM_MODE")
-    '("linear" "CLUTTER_LINEAR")
-    '("ease-in-quad" "CLUTTER_EASE_IN_QUAD")
-    '("ease-out-quad" "CLUTTER_EASE_OUT_QUAD")
-    '("ease-in-out-quad" "CLUTTER_EASE_IN_OUT_QUAD")
-    '("ease-in-cubic" "CLUTTER_EASE_IN_CUBIC")
-    '("ease-out-cubic" "CLUTTER_EASE_OUT_CUBIC")
-    '("ease-in-out-cubic" "CLUTTER_EASE_IN_OUT_CUBIC")
-    '("ease-in-quart" "CLUTTER_EASE_IN_QUART")
-    '("ease-out-quart" "CLUTTER_EASE_OUT_QUART")
-    '("ease-in-out-quart" "CLUTTER_EASE_IN_OUT_QUART")
-    '("ease-in-quint" "CLUTTER_EASE_IN_QUINT")
-    '("ease-out-quint" "CLUTTER_EASE_OUT_QUINT")
-    '("ease-in-out-quint" "CLUTTER_EASE_IN_OUT_QUINT")
-    '("ease-in-sine" "CLUTTER_EASE_IN_SINE")
-    '("ease-out-sine" "CLUTTER_EASE_OUT_SINE")
-    '("ease-in-out-sine" "CLUTTER_EASE_IN_OUT_SINE")
-    '("ease-in-expo" "CLUTTER_EASE_IN_EXPO")
-    '("ease-out-expo" "CLUTTER_EASE_OUT_EXPO")
-    '("ease-in-out-expo" "CLUTTER_EASE_IN_OUT_EXPO")
-    '("ease-in-circ" "CLUTTER_EASE_IN_CIRC")
-    '("ease-out-circ" "CLUTTER_EASE_OUT_CIRC")
-    '("ease-in-out-circ" "CLUTTER_EASE_IN_OUT_CIRC")
-    '("ease-in-elastic" "CLUTTER_EASE_IN_ELASTIC")
-    '("ease-out-elastic" "CLUTTER_EASE_OUT_ELASTIC")
-    '("ease-in-out-elastic" "CLUTTER_EASE_IN_OUT_ELASTIC")
-    '("ease-in-back" "CLUTTER_EASE_IN_BACK")
-    '("ease-out-back" "CLUTTER_EASE_OUT_BACK")
-    '("ease-in-out-back" "CLUTTER_EASE_IN_OUT_BACK")
-    '("ease-in-bounce" "CLUTTER_EASE_IN_BOUNCE")
-    '("ease-out-bounce" "CLUTTER_EASE_OUT_BOUNCE")
-    '("ease-in-out-bounce" "CLUTTER_EASE_IN_OUT_BOUNCE")
-    '("animation-last" "CLUTTER_ANIMATION_LAST")
+    '("top-left" "CLUTTER_CONTENT_GRAVITY_TOP_LEFT")
+    '("top" "CLUTTER_CONTENT_GRAVITY_TOP")
+    '("top-right" "CLUTTER_CONTENT_GRAVITY_TOP_RIGHT")
+    '("left" "CLUTTER_CONTENT_GRAVITY_LEFT")
+    '("center" "CLUTTER_CONTENT_GRAVITY_CENTER")
+    '("right" "CLUTTER_CONTENT_GRAVITY_RIGHT")
+    '("bottom-left" "CLUTTER_CONTENT_GRAVITY_BOTTOM_LEFT")
+    '("bottom" "CLUTTER_CONTENT_GRAVITY_BOTTOM")
+    '("bottom-right" "CLUTTER_CONTENT_GRAVITY_BOTTOM_RIGHT")
+    '("resize-fill" "CLUTTER_CONTENT_GRAVITY_RESIZE_FILL")
+    '("resize-aspect" "CLUTTER_CONTENT_GRAVITY_RESIZE_ASPECT")
   )
 )
 
-(define-flags FontFlags
+(define-enum ScalingFilter
   (in-module "Clutter")
-  (c-name "ClutterFontFlags")
-  (gtype-id "CLUTTER_TYPE_FONT_FLAGS")
+  (c-name "ClutterScalingFilter")
+  (gtype-id "CLUTTER_TYPE_SCALING_FILTER")
   (values
-    '("mipmapping" "CLUTTER_FONT_MIPMAPPING")
-    '("hinting" "CLUTTER_FONT_HINTING")
+    '("linear" "CLUTTER_SCALING_FILTER_LINEAR")
+    '("nearest" "CLUTTER_SCALING_FILTER_NEAREST")
+    '("trilinear" "CLUTTER_SCALING_FILTER_TRILINEAR")
   )
 )
 
-(define-enum TextDirection
+(define-enum Orientation
   (in-module "Clutter")
-  (c-name "ClutterTextDirection")
-  (gtype-id "CLUTTER_TYPE_TEXT_DIRECTION")
+  (c-name "ClutterOrientation")
+  (gtype-id "CLUTTER_TYPE_ORIENTATION")
   (values
-    '("default" "CLUTTER_TEXT_DIRECTION_DEFAULT")
-    '("ltr" "CLUTTER_TEXT_DIRECTION_LTR")
-    '("rtl" "CLUTTER_TEXT_DIRECTION_RTL")
+    '("horizontal" "CLUTTER_ORIENTATION_HORIZONTAL")
+    '("vertical" "CLUTTER_ORIENTATION_VERTICAL")
   )
 )
 
-(define-enum ShaderType
+(define-flags ScrollMode
   (in-module "Clutter")
-  (c-name "ClutterShaderType")
-  (gtype-id "CLUTTER_TYPE_SHADER_TYPE")
+  (c-name "ClutterScrollMode")
+  (gtype-id "CLUTTER_TYPE_SCROLL_MODE")
   (values
-    '("vertex-shader" "CLUTTER_VERTEX_SHADER")
-    '("fragment-shader" "CLUTTER_FRAGMENT_SHADER")
+    '("none" "CLUTTER_SCROLL_NONE")
+    '("horizontally" "CLUTTER_SCROLL_HORIZONTALLY")
+    '("vertically" "CLUTTER_SCROLL_VERTICALLY")
+    '("both" "CLUTTER_SCROLL_BOTH")
   )
 )
 
-(define-enum UnitType
+(define-enum GridPosition
   (in-module "Clutter")
-  (c-name "ClutterUnitType")
-  (gtype-id "CLUTTER_TYPE_UNIT_TYPE")
+  (c-name "ClutterGridPosition")
+  (gtype-id "CLUTTER_TYPE_GRID_POSITION")
   (values
-    '("pixel" "CLUTTER_UNIT_PIXEL")
-    '("em" "CLUTTER_UNIT_EM")
-    '("mm" "CLUTTER_UNIT_MM")
-    '("point" "CLUTTER_UNIT_POINT")
-    '("cm" "CLUTTER_UNIT_CM")
+    '("left" "CLUTTER_GRID_POSITION_LEFT")
+    '("right" "CLUTTER_GRID_POSITION_RIGHT")
+    '("top" "CLUTTER_GRID_POSITION_TOP")
+    '("bottom" "CLUTTER_GRID_POSITION_BOTTOM")
   )
 )
 
-
-;; From clutter-action.h
-
-(define-function clutter_action_get_type
-  (c-name "clutter_action_get_type")
-  (return-type "GType")
+(define-flags ContentRepeat
+  (in-module "Clutter")
+  (c-name "ClutterContentRepeat")
+  (gtype-id "CLUTTER_TYPE_CONTENT_REPEAT")
+  (values
+    '("none" "CLUTTER_REPEAT_NONE")
+    '("x-axis" "CLUTTER_REPEAT_X_AXIS")
+    '("y-axis" "CLUTTER_REPEAT_Y_AXIS")
+    '("both" "CLUTTER_REPEAT_BOTH")
+  )
 )
 
-(define-method add_action
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_add_action")
-  (return-type "none")
-  (parameters
-    '("ClutterAction*" "action")
+(define-enum StepMode
+  (in-module "Clutter")
+  (c-name "ClutterStepMode")
+  (gtype-id "CLUTTER_TYPE_STEP_MODE")
+  (values
+    '("start" "CLUTTER_STEP_MODE_START")
+    '("end" "CLUTTER_STEP_MODE_END")
   )
 )
 
-(define-method add_action_with_name
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_add_action_with_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "name")
-    '("ClutterAction*" "action")
+(define-enum ZoomAxis
+  (in-module "Clutter")
+  (c-name "ClutterZoomAxis")
+  (gtype-id "CLUTTER_TYPE_ZOOM_AXIS")
+  (values
+    '("x-axis" "CLUTTER_ZOOM_X_AXIS")
+    '("y-axis" "CLUTTER_ZOOM_Y_AXIS")
+    '("both" "CLUTTER_ZOOM_BOTH")
   )
 )
 
-(define-method remove_action
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_action")
-  (return-type "none")
-  (parameters
-    '("ClutterAction*" "action")
+(define-enum TranslateReturn
+  (in-module "Clutter")
+  (c-name "ClutterTranslateReturn")
+  (gtype-id "CLUTTER_TYPE_TRANSLATE_RETURN")
+  (values
+    '("continue" "CLUTTER_TRANSLATE_CONTINUE")
+    '("remove" "CLUTTER_TRANSLATE_REMOVE")
+    '("queue" "CLUTTER_TRANSLATE_QUEUE")
   )
 )
 
-(define-method remove_action_by_name
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_action_by_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "name")
+(define-enum GestureTriggerEdge
+  (in-module "Clutter")
+  (c-name "ClutterGestureTriggerEdge")
+  (gtype-id "CLUTTER_TYPE_GESTURE_TRIGGER_EDGE")
+  (values
+    '("none" "CLUTTER_GESTURE_TRIGGER_EDGE_NONE")
+    '("after" "CLUTTER_GESTURE_TRIGGER_EDGE_AFTER")
+    '("before" "CLUTTER_GESTURE_TRIGGER_EDGE_BEFORE")
   )
 )
 
-(define-method get_action
-  (of-object "ClutterActor")
+(define-enum ImageError
+  (in-module "Clutter")
+  (c-name "ClutterImageError")
+  (gtype-id "CLUTTER_TYPE_IMAGE_ERROR")
+  (values
+    '("data" "CLUTTER_IMAGE_ERROR_INVALID_DATA")
+  )
+)
+
+(define-enum InitError
+  (in-module "Clutter")
+  (c-name "ClutterInitError")
+  (gtype-id "CLUTTER_TYPE_INIT_ERROR")
+  (values
+    '("success" "CLUTTER_INIT_SUCCESS")
+    '("error-unknown" "CLUTTER_INIT_ERROR_UNKNOWN")
+    '("error-threads" "CLUTTER_INIT_ERROR_THREADS")
+    '("error-backend" "CLUTTER_INIT_ERROR_BACKEND")
+    '("error-internal" "CLUTTER_INIT_ERROR_INTERNAL")
+  )
+)
+
+(define-enum OpCode
+  (in-module "Paint")
+  (c-name "PaintOpCode")
+  (gtype-id "PAINT_TYPE_OP_CODE")
+  (values
+    '("invalid" "PAINT_OP_INVALID")
+    '("tex-rect" "PAINT_OP_TEX_RECT")
+    '("path" "PAINT_OP_PATH")
+    '("primitive" "PAINT_OP_PRIMITIVE")
+  )
+)
+
+(define-flags PrivateFlags
+  (in-module "Clutter")
+  (c-name "ClutterPrivateFlags")
+  (gtype-id "CLUTTER_TYPE_PRIVATE_FLAGS")
+  (values
+    '("actor-unused-flag" "CLUTTER_ACTOR_UNUSED_FLAG")
+    '("in-destruction" "CLUTTER_IN_DESTRUCTION")
+    '("is-toplevel" "CLUTTER_IS_TOPLEVEL")
+    '("in-reparent" "CLUTTER_IN_REPARENT")
+    '("in-paint" "CLUTTER_IN_PAINT")
+    '("in-relayout" "CLUTTER_IN_RELAYOUT")
+    '("in-resize" "CLUTTER_IN_RESIZE")
+    '("internal-child" "CLUTTER_INTERNAL_CHILD")
+  )
+)
+
+(define-flags ProfileFlag
+  (in-module "Clutter")
+  (c-name "ClutterProfileFlag")
+  (gtype-id "CLUTTER_TYPE_PROFILE_FLAG")
+  (values
+    '("picking-only" "CLUTTER_PROFILE_PICKING_ONLY")
+    '("disable-report" "CLUTTER_PROFILE_DISABLE_REPORT")
+  )
+)
+
+(define-enum ScriptError
+  (in-module "Clutter")
+  (c-name "ClutterScriptError")
+  (gtype-id "CLUTTER_TYPE_SCRIPT_ERROR")
+  (values
+    '("type-function" "CLUTTER_SCRIPT_ERROR_INVALID_TYPE_FUNCTION")
+    '("property" "CLUTTER_SCRIPT_ERROR_INVALID_PROPERTY")
+    '("value" "CLUTTER_SCRIPT_ERROR_INVALID_VALUE")
+  )
+)
+
+
+;; From clutter-action.h
+
+(define-function clutter_action_get_type
+  (c-name "clutter_action_get_type")
+  (return-type "GType")
+)
+
+(define-method add_action
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_action")
+  (return-type "none")
+  (parameters
+    '("ClutterAction*" "action")
+  )
+)
+
+(define-method add_action_with_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_action_with_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+    '("ClutterAction*" "action")
+  )
+)
+
+(define-method remove_action
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_action")
+  (return-type "none")
+  (parameters
+    '("ClutterAction*" "action")
+  )
+)
+
+(define-method remove_action_by_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_action_by_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+  )
+)
+
+(define-method get_action
+  (of-object "ClutterActor")
   (c-name "clutter_actor_get_action")
   (return-type "ClutterAction*")
   (parameters
@@ -888,15 +1236,55 @@
   (return-type "none")
 )
 
+(define-method has_actions
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_has_actions")
+  (return-type "gboolean")
+)
+
 
 
 ;; From clutter-actor.h
 
+(define-function CLUTTER_PRIVATE_FIELD
+  (c-name "CLUTTER_PRIVATE_FIELD")
+  (return-type "gpointer")
+  (parameters
+  )
+)
+
+(define-function CLUTTER_PRIVATE_FIELD
+  (c-name "CLUTTER_PRIVATE_FIELD")
+  (return-type "gpointer")
+  (parameters
+  )
+)
+
+(define-function CLUTTER_PRIVATE_FIELD
+  (c-name "CLUTTER_PRIVATE_FIELD")
+  (return-type "gint")
+  (parameters
+  )
+)
+
+(define-function CLUTTER_PRIVATE_FIELD
+  (c-name "CLUTTER_PRIVATE_FIELD")
+  (return-type "gpointer")
+  (parameters
+  )
+)
+
 (define-function clutter_actor_get_type
   (c-name "clutter_actor_get_type")
   (return-type "GType")
 )
 
+(define-function clutter_actor_new
+  (c-name "clutter_actor_new")
+  (is-constructor-of "ClutterActor")
+  (return-type "ClutterActor*")
+)
+
 (define-method set_flags
   (of-object "ClutterActor")
   (c-name "clutter_actor_set_flags")
@@ -927,24 +1315,12 @@
   (return-type "none")
 )
 
-(define-method show_all
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_show_all")
-  (return-type "none")
-)
-
 (define-method hide
   (of-object "ClutterActor")
   (c-name "clutter_actor_hide")
   (return-type "none")
 )
 
-(define-method hide_all
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_hide_all")
-  (return-type "none")
-)
-
 (define-method realize
   (of-object "ClutterActor")
   (c-name "clutter_actor_realize")
@@ -975,12 +1351,27 @@
   (return-type "none")
 )
 
+(define-method continue_paint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_continue_paint")
+  (return-type "none")
+)
+
 (define-method queue_redraw
   (of-object "ClutterActor")
   (c-name "clutter_actor_queue_redraw")
   (return-type "none")
 )
 
+(define-method queue_redraw_with_clip
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_queue_redraw_with_clip")
+  (return-type "none")
+  (parameters
+    '("const-cairo_rectangle_int_t*" "clip")
+  )
+)
+
 (define-method queue_relayout
   (of-object "ClutterActor")
   (c-name "clutter_actor_queue_relayout")
@@ -993,6 +1384,27 @@
   (return-type "none")
 )
 
+(define-method set_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+  )
+)
+
+(define-method get_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_name")
+  (return-type "const-gchar*")
+)
+
+(define-method get_accessible
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_accessible")
+  (return-type "AtkObject*")
+)
+
 (define-method set_request_mode
   (of-object "ClutterActor")
   (c-name "clutter_actor_set_request_mode")
@@ -1074,50 +1486,53 @@
   )
 )
 
-(define-method get_allocation_box
+(define-method allocate_align_fill
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_allocation_box")
+  (c-name "clutter_actor_allocate_align_fill")
   (return-type "none")
   (parameters
-    '("ClutterActorBox*" "box")
+    '("const-ClutterActorBox*" "box")
+    '("gdouble" "x_align")
+    '("gdouble" "y_align")
+    '("gboolean" "x_fill")
+    '("gboolean" "y_fill")
+    '("ClutterAllocationFlags" "flags")
   )
 )
 
-(define-method get_allocation_geometry
+(define-method set_allocation
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_allocation_geometry")
+  (c-name "clutter_actor_set_allocation")
   (return-type "none")
   (parameters
-    '("ClutterGeometry*" "geom")
+    '("const-ClutterActorBox*" "box")
+    '("ClutterAllocationFlags" "flags")
   )
 )
 
-(define-method get_allocation_vertices
+(define-method get_allocation_box
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_allocation_vertices")
+  (c-name "clutter_actor_get_allocation_box")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "ancestor")
-    '("ClutterVertex[]" "verts")
+    '("ClutterActorBox*" "box")
   )
 )
 
-(define-method set_geometry
+(define-method get_allocation_vertices
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_geometry")
+  (c-name "clutter_actor_get_allocation_vertices")
   (return-type "none")
   (parameters
-    '("const-ClutterGeometry*" "geometry")
+    '("ClutterActor*" "ancestor")
+    '("ClutterVertex[]" "verts")
   )
 )
 
-(define-method get_geometry
+(define-method has_allocation
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_geometry")
-  (return-type "none")
-  (parameters
-    '("ClutterGeometry*" "geometry")
-  )
+  (c-name "clutter_actor_has_allocation")
+  (return-type "gboolean")
 )
 
 (define-method set_size
@@ -1140,16 +1555,6 @@
   )
 )
 
-(define-method get_transformed_size
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_get_transformed_size")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "width")
-    '("gfloat*" "height")
-  )
-)
-
 (define-method set_position
   (of-object "ClutterActor")
   (c-name "clutter_actor_set_position")
@@ -1170,16 +1575,6 @@
   )
 )
 
-(define-method get_transformed_position
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_get_transformed_position")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "x")
-    '("gfloat*" "y")
-  )
-)
-
 (define-method get_fixed_position_set
   (of-object "ClutterActor")
   (c-name "clutter_actor_get_fixed_position_set")
@@ -1195,6 +1590,16 @@
   )
 )
 
+(define-method move_by
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_move_by")
+  (return-type "none")
+  (parameters
+    '("gfloat" "dx")
+    '("gfloat" "dy")
+  )
+)
+
 (define-method get_width
   (of-object "ClutterActor")
   (c-name "clutter_actor_get_width")
@@ -1255,495 +1660,435 @@
   )
 )
 
-(define-method set_rotation
+(define-method set_z_position
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_rotation")
+  (c-name "clutter_actor_set_z_position")
   (return-type "none")
   (parameters
-    '("ClutterRotateAxis" "axis")
-    '("gdouble" "angle")
-    '("gfloat" "x")
-    '("gfloat" "y")
-    '("gfloat" "z")
+    '("gfloat" "z_position")
   )
 )
 
-(define-method set_z_rotation_from_gravity
+(define-method get_z_position
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_z_rotation_from_gravity")
-  (return-type "none")
-  (parameters
-    '("gdouble" "angle")
-    '("ClutterGravity" "gravity")
-  )
+  (c-name "clutter_actor_get_z_position")
+  (return-type "gfloat")
 )
 
-(define-method get_rotation
+(define-method set_layout_manager
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_rotation")
-  (return-type "gdouble")
+  (c-name "clutter_actor_set_layout_manager")
+  (return-type "none")
   (parameters
-    '("ClutterRotateAxis" "axis")
-    '("gfloat*" "x")
-    '("gfloat*" "y")
-    '("gfloat*" "z")
+    '("ClutterLayoutManager*" "manager")
   )
 )
 
-(define-method get_z_rotation_gravity
+(define-method get_layout_manager
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_z_rotation_gravity")
-  (return-type "ClutterGravity")
+  (c-name "clutter_actor_get_layout_manager")
+  (return-type "ClutterLayoutManager*")
 )
 
-(define-method set_opacity
+(define-method set_x_align
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_opacity")
+  (c-name "clutter_actor_set_x_align")
   (return-type "none")
   (parameters
-    '("guint8" "opacity")
+    '("ClutterActorAlign" "x_align")
   )
 )
 
-(define-method get_opacity
+(define-method get_x_align
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_opacity")
-  (return-type "guint8")
+  (c-name "clutter_actor_get_x_align")
+  (return-type "ClutterActorAlign")
 )
 
-(define-method get_paint_opacity
+(define-method set_y_align
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_paint_opacity")
-  (return-type "guint8")
+  (c-name "clutter_actor_set_y_align")
+  (return-type "none")
+  (parameters
+    '("ClutterActorAlign" "y_align")
+  )
 )
 
-(define-method get_paint_visibility
+(define-method get_y_align
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_paint_visibility")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_y_align")
+  (return-type "ClutterActorAlign")
 )
 
-(define-method set_name
+(define-method set_margin_top
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_name")
+  (c-name "clutter_actor_set_margin_top")
   (return-type "none")
   (parameters
-    '("const-gchar*" "name")
+    '("gfloat" "margin")
   )
 )
 
-(define-method get_name
+(define-method get_margin_top
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_name")
-  (return-type "const-gchar*")
+  (c-name "clutter_actor_get_margin_top")
+  (return-type "gfloat")
 )
 
-(define-method get_gid
+(define-method set_margin_bottom
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_gid")
-  (return-type "guint32")
+  (c-name "clutter_actor_set_margin_bottom")
+  (return-type "none")
+  (parameters
+    '("gfloat" "margin")
+  )
 )
 
-(define-method set_clip
+(define-method get_margin_bottom
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_clip")
-  (return-type "none")
-  (parameters
-    '("gfloat" "xoff")
-    '("gfloat" "yoff")
-    '("gfloat" "width")
-    '("gfloat" "height")
-  )
+  (c-name "clutter_actor_get_margin_bottom")
+  (return-type "gfloat")
 )
 
-(define-method remove_clip
+(define-method set_margin_left
   (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_clip")
+  (c-name "clutter_actor_set_margin_left")
   (return-type "none")
+  (parameters
+    '("gfloat" "margin")
+  )
 )
 
-(define-method has_clip
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_has_clip")
-  (return-type "gboolean")
-)
-
-(define-method get_clip
+(define-method get_margin_left
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_clip")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "xoff")
-    '("gfloat*" "yoff")
-    '("gfloat*" "width")
-    '("gfloat*" "height")
-  )
+  (c-name "clutter_actor_get_margin_left")
+  (return-type "gfloat")
 )
 
-(define-method set_clip_to_allocation
+(define-method set_margin_right
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_clip_to_allocation")
+  (c-name "clutter_actor_set_margin_right")
   (return-type "none")
   (parameters
-    '("gboolean" "clip_set")
+    '("gfloat" "margin")
   )
 )
 
-(define-method get_clip_to_allocation
+(define-method get_margin_right
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_clip_to_allocation")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_margin_right")
+  (return-type "gfloat")
 )
 
-(define-method set_parent
+(define-method set_margin
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_parent")
+  (c-name "clutter_actor_set_margin")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "parent")
+    '("const-ClutterMargin*" "margin")
   )
 )
 
-(define-method get_parent
+(define-method get_margin
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_parent")
-  (return-type "ClutterActor*")
+  (c-name "clutter_actor_get_margin")
+  (return-type "none")
+  (parameters
+    '("ClutterMargin*" "margin")
+  )
 )
 
-(define-method reparent
+(define-method set_x_expand
   (of-object "ClutterActor")
-  (c-name "clutter_actor_reparent")
+  (c-name "clutter_actor_set_x_expand")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "new_parent")
+    '("gboolean" "expand")
   )
 )
 
-(define-method unparent
+(define-method get_x_expand
   (of-object "ClutterActor")
-  (c-name "clutter_actor_unparent")
-  (return-type "none")
+  (c-name "clutter_actor_get_x_expand")
+  (return-type "gboolean")
 )
 
-(define-method contains
+(define-method set_y_expand
   (of-object "ClutterActor")
-  (c-name "clutter_actor_contains")
-  (return-type "gboolean")
+  (c-name "clutter_actor_set_y_expand")
+  (return-type "none")
   (parameters
-    '("ClutterActor*" "descendant")
+    '("gboolean" "expand")
   )
 )
 
-(define-method get_stage
+(define-method get_y_expand
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_stage")
-  (return-type "ClutterActor*")
+  (c-name "clutter_actor_get_y_expand")
+  (return-type "gboolean")
 )
 
-(define-method raise
+(define-method needs_expand
   (of-object "ClutterActor")
-  (c-name "clutter_actor_raise")
-  (return-type "none")
+  (c-name "clutter_actor_needs_expand")
+  (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "below")
+    '("ClutterOrientation" "orientation")
   )
 )
 
-(define-method lower
+(define-method set_clip
   (of-object "ClutterActor")
-  (c-name "clutter_actor_lower")
+  (c-name "clutter_actor_set_clip")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "above")
+    '("gfloat" "xoff")
+    '("gfloat" "yoff")
+    '("gfloat" "width")
+    '("gfloat" "height")
   )
 )
 
-(define-method raise_top
+(define-method remove_clip
   (of-object "ClutterActor")
-  (c-name "clutter_actor_raise_top")
+  (c-name "clutter_actor_remove_clip")
   (return-type "none")
 )
 
-(define-method lower_bottom
+(define-method has_clip
   (of-object "ClutterActor")
-  (c-name "clutter_actor_lower_bottom")
-  (return-type "none")
+  (c-name "clutter_actor_has_clip")
+  (return-type "gboolean")
 )
 
-(define-method set_depth
+(define-method get_clip
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_depth")
+  (c-name "clutter_actor_get_clip")
   (return-type "none")
   (parameters
-    '("gfloat" "depth")
+    '("gfloat*" "xoff")
+    '("gfloat*" "yoff")
+    '("gfloat*" "width")
+    '("gfloat*" "height")
   )
 )
 
-(define-method get_depth
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_get_depth")
-  (return-type "gfloat")
-)
-
-(define-method set_scale
+(define-method set_clip_to_allocation
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_scale")
+  (c-name "clutter_actor_set_clip_to_allocation")
   (return-type "none")
   (parameters
-    '("gdouble" "scale_x")
-    '("gdouble" "scale_y")
+    '("gboolean" "clip_set")
   )
 )
 
-(define-method set_scale_full
+(define-method get_clip_to_allocation
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_scale_full")
-  (return-type "none")
-  (parameters
-    '("gdouble" "scale_x")
-    '("gdouble" "scale_y")
-    '("gfloat" "center_x")
-    '("gfloat" "center_y")
-  )
+  (c-name "clutter_actor_get_clip_to_allocation")
+  (return-type "gboolean")
 )
 
-(define-method set_scale_with_gravity
+(define-method set_opacity
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_scale_with_gravity")
+  (c-name "clutter_actor_set_opacity")
   (return-type "none")
   (parameters
-    '("gdouble" "scale_x")
-    '("gdouble" "scale_y")
-    '("ClutterGravity" "gravity")
+    '("guint8" "opacity")
   )
 )
 
-(define-method get_scale
+(define-method get_opacity
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_scale")
-  (return-type "none")
-  (parameters
-    '("gdouble*" "scale_x")
-    '("gdouble*" "scale_y")
-  )
+  (c-name "clutter_actor_get_opacity")
+  (return-type "guint8")
 )
 
-(define-method get_scale_center
+(define-method get_paint_opacity
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_scale_center")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "center_x")
-    '("gfloat*" "center_y")
-  )
+  (c-name "clutter_actor_get_paint_opacity")
+  (return-type "guint8")
 )
 
-(define-method get_scale_gravity
+(define-method get_paint_visibility
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_scale_gravity")
-  (return-type "ClutterGravity")
+  (c-name "clutter_actor_get_paint_visibility")
+  (return-type "gboolean")
 )
 
-(define-method move_by
+(define-method set_offscreen_redirect
   (of-object "ClutterActor")
-  (c-name "clutter_actor_move_by")
+  (c-name "clutter_actor_set_offscreen_redirect")
   (return-type "none")
   (parameters
-    '("gfloat" "dx")
-    '("gfloat" "dy")
+    '("ClutterOffscreenRedirect" "redirect")
   )
 )
 
-(define-method set_reactive
+(define-method get_offscreen_redirect
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_reactive")
-  (return-type "none")
-  (parameters
-    '("gboolean" "reactive")
-  )
+  (c-name "clutter_actor_get_offscreen_redirect")
+  (return-type "ClutterOffscreenRedirect")
 )
 
-(define-method get_reactive
+(define-method should_pick_paint
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_reactive")
+  (c-name "clutter_actor_should_pick_paint")
   (return-type "gboolean")
 )
 
-(define-method event
+(define-method is_in_clone_paint
   (of-object "ClutterActor")
-  (c-name "clutter_actor_event")
+  (c-name "clutter_actor_is_in_clone_paint")
   (return-type "gboolean")
-  (parameters
-    '("ClutterEvent*" "event")
-    '("gboolean" "capture")
-  )
-)
-
-(define-function clutter_get_actor_by_gid
-  (c-name "clutter_get_actor_by_gid")
-  (return-type "ClutterActor*")
-  (parameters
-    '("guint32" "id")
-  )
 )
 
-(define-method set_shader
+(define-method get_paint_box
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_shader")
+  (c-name "clutter_actor_get_paint_box")
   (return-type "gboolean")
   (parameters
-    '("ClutterShader*" "shader")
+    '("ClutterActorBox*" "box")
   )
 )
 
-(define-method get_shader
+(define-method has_overlaps
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_shader")
-  (return-type "ClutterShader*")
+  (c-name "clutter_actor_has_overlaps")
+  (return-type "gboolean")
 )
 
-(define-method set_shader_param
+(define-method set_content
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_shader_param")
+  (c-name "clutter_actor_set_content")
   (return-type "none")
   (parameters
-    '("const-gchar*" "param")
-    '("const-GValue*" "value")
+    '("ClutterContent*" "content")
   )
 )
 
-(define-method set_shader_param_int
+(define-method get_content
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_shader_param_int")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "param")
-    '("gint" "value")
-  )
+  (c-name "clutter_actor_get_content")
+  (return-type "ClutterContent*")
 )
 
-(define-method set_shader_param_float
+(define-method set_content_gravity
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_shader_param_float")
+  (c-name "clutter_actor_set_content_gravity")
   (return-type "none")
   (parameters
-    '("const-gchar*" "param")
-    '("gfloat" "value")
+    '("ClutterContentGravity" "gravity")
   )
 )
 
-(define-method set_anchor_point
+(define-method get_content_gravity
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_content_gravity")
+  (return-type "ClutterContentGravity")
+)
+
+(define-method set_content_scaling_filters
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_anchor_point")
+  (c-name "clutter_actor_set_content_scaling_filters")
   (return-type "none")
   (parameters
-    '("gfloat" "anchor_x")
-    '("gfloat" "anchor_y")
+    '("ClutterScalingFilter" "min_filter")
+    '("ClutterScalingFilter" "mag_filter")
   )
 )
 
-(define-method move_anchor_point
+(define-method get_content_scaling_filters
   (of-object "ClutterActor")
-  (c-name "clutter_actor_move_anchor_point")
+  (c-name "clutter_actor_get_content_scaling_filters")
   (return-type "none")
   (parameters
-    '("gfloat" "anchor_x")
-    '("gfloat" "anchor_y")
+    '("ClutterScalingFilter*" "min_filter")
+    '("ClutterScalingFilter*" "mag_filter")
   )
 )
 
-(define-method get_anchor_point
+(define-method set_content_repeat
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_anchor_point")
+  (c-name "clutter_actor_set_content_repeat")
   (return-type "none")
   (parameters
-    '("gfloat*" "anchor_x")
-    '("gfloat*" "anchor_y")
+    '("ClutterContentRepeat" "repeat")
   )
 )
 
-(define-method get_anchor_point_gravity
+(define-method get_content_repeat
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_anchor_point_gravity")
-  (return-type "ClutterGravity")
+  (c-name "clutter_actor_get_content_repeat")
+  (return-type "ClutterContentRepeat")
 )
 
-(define-method set_anchor_point_from_gravity
+(define-method get_content_box
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_anchor_point_from_gravity")
+  (c-name "clutter_actor_get_content_box")
   (return-type "none")
   (parameters
-    '("ClutterGravity" "gravity")
+    '("ClutterActorBox*" "box")
   )
 )
 
-(define-method move_anchor_point_from_gravity
+(define-method set_background_color
   (of-object "ClutterActor")
-  (c-name "clutter_actor_move_anchor_point_from_gravity")
+  (c-name "clutter_actor_set_background_color")
   (return-type "none")
   (parameters
-    '("ClutterGravity" "gravity")
+    '("const-ClutterColor*" "color")
   )
 )
 
-(define-method transform_stage_point
+(define-method get_background_color
   (of-object "ClutterActor")
-  (c-name "clutter_actor_transform_stage_point")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_background_color")
+  (return-type "none")
   (parameters
-    '("gfloat" "x")
-    '("gfloat" "y")
-    '("gfloat*" "x_out")
-    '("gfloat*" "y_out")
+    '("ClutterColor*" "color")
   )
 )
 
-(define-method is_rotated
+(define-method get_paint_volume
   (of-object "ClutterActor")
-  (c-name "clutter_actor_is_rotated")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_paint_volume")
+  (return-type "const-ClutterPaintVolume*")
 )
 
-(define-method is_scaled
+(define-method get_transformed_paint_volume
   (of-object "ClutterActor")
-  (c-name "clutter_actor_is_scaled")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_transformed_paint_volume")
+  (return-type "const-ClutterPaintVolume*")
+  (parameters
+    '("ClutterActor*" "relative_to_ancestor")
+  )
 )
 
-(define-method should_pick_paint
+(define-method get_default_paint_volume
   (of-object "ClutterActor")
-  (c-name "clutter_actor_should_pick_paint")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_default_paint_volume")
+  (return-type "const-ClutterPaintVolume*")
 )
 
-(define-method get_abs_allocation_vertices
+(define-method set_reactive
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_abs_allocation_vertices")
+  (c-name "clutter_actor_set_reactive")
   (return-type "none")
   (parameters
-    '("ClutterVertex[]" "verts")
+    '("gboolean" "reactive")
   )
 )
 
-(define-method apply_transform_to_point
+(define-method get_reactive
   (of-object "ClutterActor")
-  (c-name "clutter_actor_apply_transform_to_point")
-  (return-type "none")
-  (parameters
-    '("const-ClutterVertex*" "point")
-    '("ClutterVertex*" "vertex")
-  )
+  (c-name "clutter_actor_get_reactive")
+  (return-type "gboolean")
 )
 
-(define-method apply_relative_transform_to_point
+(define-method has_key_focus
   (of-object "ClutterActor")
-  (c-name "clutter_actor_apply_relative_transform_to_point")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "ancestor")
-    '("const-ClutterVertex*" "point")
-    '("ClutterVertex*" "vertex")
-  )
+  (c-name "clutter_actor_has_key_focus")
+  (return-type "gboolean")
 )
 
 (define-method grab_key_focus
@@ -1752,6 +2097,22 @@
   (return-type "none")
 )
 
+(define-method event
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_event")
+  (return-type "gboolean")
+  (parameters
+    '("const-ClutterEvent*" "event")
+    '("gboolean" "capture")
+  )
+)
+
+(define-method has_pointer
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_has_pointer")
+  (return-type "gboolean")
+)
+
 (define-method get_pango_context
   (of-object "ClutterActor")
   (c-name "clutter_actor_get_pango_context")
@@ -1773,786 +2134,714 @@
   )
 )
 
-(define-method get_transformation_matrix
+(define-method set_text_direction
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_transformation_matrix")
+  (c-name "clutter_actor_set_text_direction")
   (return-type "none")
   (parameters
-    '("CoglMatrix*" "matrix")
+    '("ClutterTextDirection" "text_dir")
   )
 )
 
-(define-method is_in_clone_paint
+(define-method get_text_direction
   (of-object "ClutterActor")
-  (c-name "clutter_actor_is_in_clone_paint")
-  (return-type "gboolean")
+  (c-name "clutter_actor_get_text_direction")
+  (return-type "ClutterTextDirection")
 )
 
-(define-method has_pointer
+(define-method add_child
   (of-object "ClutterActor")
-  (c-name "clutter_actor_has_pointer")
-  (return-type "gboolean")
+  (c-name "clutter_actor_add_child")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+  )
 )
 
-(define-method set_text_direction
+(define-method insert_child_at_index
   (of-object "ClutterActor")
-  (c-name "clutter_actor_set_text_direction")
+  (c-name "clutter_actor_insert_child_at_index")
   (return-type "none")
   (parameters
-    '("ClutterTextDirection" "text_dir")
+    '("ClutterActor*" "child")
+    '("gint" "index_")
   )
 )
 
-(define-method get_text_direction
+(define-method insert_child_above
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_text_direction")
-  (return-type "ClutterTextDirection")
+  (c-name "clutter_actor_insert_child_above")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+    '("ClutterActor*" "sibling")
+  )
 )
 
-(define-method push_internal
+(define-method insert_child_below
   (of-object "ClutterActor")
-  (c-name "clutter_actor_push_internal")
+  (c-name "clutter_actor_insert_child_below")
   (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+    '("ClutterActor*" "sibling")
+  )
 )
 
-(define-method pop_internal
+(define-method replace_child
   (of-object "ClutterActor")
-  (c-name "clutter_actor_pop_internal")
+  (c-name "clutter_actor_replace_child")
   (return-type "none")
+  (parameters
+    '("ClutterActor*" "old_child")
+    '("ClutterActor*" "new_child")
+  )
 )
 
-(define-method has_allocation
+(define-method remove_child
   (of-object "ClutterActor")
-  (c-name "clutter_actor_has_allocation")
-  (return-type "gboolean")
+  (c-name "clutter_actor_remove_child")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+  )
 )
 
-(define-method get_accessible
+(define-method remove_all_children
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_accessible")
-  (return-type "AtkObject*")
+  (c-name "clutter_actor_remove_all_children")
+  (return-type "none")
 )
 
-
-
-;; From clutter-actor-meta.h
-
-(define-function clutter_actor_meta_get_type
-  (c-name "clutter_actor_meta_get_type")
-  (return-type "GType")
+(define-method destroy_all_children
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_destroy_all_children")
+  (return-type "none")
 )
 
-(define-method set_name
-  (of-object "ClutterActorMeta")
-  (c-name "clutter_actor_meta_set_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "name")
-  )
+(define-method get_children
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_children")
+  (return-type "GList*")
 )
 
-(define-method get_name
-  (of-object "ClutterActorMeta")
-  (c-name "clutter_actor_meta_get_name")
-  (return-type "const-gchar*")
+(define-method get_n_children
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_n_children")
+  (return-type "gint")
 )
 
-(define-method set_enabled
-  (of-object "ClutterActorMeta")
-  (c-name "clutter_actor_meta_set_enabled")
-  (return-type "none")
+(define-method get_child_at_index
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_child_at_index")
+  (return-type "ClutterActor*")
   (parameters
-    '("gboolean" "is_enabled")
+    '("gint" "index_")
   )
 )
 
-(define-method get_enabled
-  (of-object "ClutterActorMeta")
-  (c-name "clutter_actor_meta_get_enabled")
-  (return-type "gboolean")
+(define-method get_previous_sibling
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_previous_sibling")
+  (return-type "ClutterActor*")
 )
 
-(define-method get_actor
-  (of-object "ClutterActorMeta")
-  (c-name "clutter_actor_meta_get_actor")
+(define-method get_next_sibling
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_next_sibling")
   (return-type "ClutterActor*")
 )
 
+(define-method get_first_child
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_first_child")
+  (return-type "ClutterActor*")
+)
 
-
-;; From clutter-align-constraint.h
-
-(define-function clutter_align_constraint_get_type
-  (c-name "clutter_align_constraint_get_type")
-  (return-type "GType")
+(define-method get_last_child
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_last_child")
+  (return-type "ClutterActor*")
 )
 
-(define-function clutter_align_constraint_new
-  (c-name "clutter_align_constraint_new")
-  (is-constructor-of "ClutterAlignConstraint")
-  (return-type "ClutterConstraint*")
-  (parameters
-    '("ClutterActor*" "source")
-    '("ClutterAlignAxis" "axis")
-    '("gfloat" "factor")
-  )
+(define-method get_parent
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_parent")
+  (return-type "ClutterActor*")
 )
 
-(define-method set_source
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_set_source")
-  (return-type "none")
+(define-method contains
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_contains")
+  (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "source")
+    '("ClutterActor*" "descendant")
   )
 )
 
-(define-method get_source
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_get_source")
+(define-method get_stage
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_stage")
   (return-type "ClutterActor*")
 )
 
-(define-method set_align_axis
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_set_align_axis")
+(define-method set_child_below_sibling
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_child_below_sibling")
   (return-type "none")
   (parameters
-    '("ClutterAlignAxis" "axis")
+    '("ClutterActor*" "child")
+    '("ClutterActor*" "sibling")
   )
 )
 
-(define-method get_align_axis
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_get_align_axis")
-  (return-type "ClutterAlignAxis")
-)
-
-(define-method set_factor
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_set_factor")
+(define-method set_child_above_sibling
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_child_above_sibling")
   (return-type "none")
   (parameters
-    '("gfloat" "factor")
+    '("ClutterActor*" "child")
+    '("ClutterActor*" "sibling")
   )
 )
 
-(define-method get_factor
-  (of-object "ClutterAlignConstraint")
-  (c-name "clutter_align_constraint_get_factor")
-  (return-type "gfloat")
-)
-
-
-
-;; From clutter-alpha.h
-
-(define-function clutter_alpha_get_type
-  (c-name "clutter_alpha_get_type")
-  (return-type "GType")
+(define-method set_child_at_index
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_child_at_index")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+    '("gint" "index_")
+  )
 )
 
-(define-function clutter_alpha_new
-  (c-name "clutter_alpha_new")
-  (is-constructor-of "ClutterAlpha")
-  (return-type "ClutterAlpha*")
+(define-method init
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_init")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "root")
+  )
 )
 
-(define-function clutter_alpha_new_full
-  (c-name "clutter_alpha_new_full")
-  (return-type "ClutterAlpha*")
+(define-method next
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_next")
+  (return-type "gboolean")
   (parameters
-    '("ClutterTimeline*" "timeline")
-    '("gulong" "mode")
+    '("ClutterActor**" "child")
   )
 )
 
-(define-function clutter_alpha_new_with_func
-  (c-name "clutter_alpha_new_with_func")
-  (return-type "ClutterAlpha*")
+(define-method prev
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_prev")
+  (return-type "gboolean")
   (parameters
-    '("ClutterTimeline*" "timeline")
-    '("ClutterAlphaFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "destroy")
+    '("ClutterActor**" "child")
   )
 )
 
-(define-method get_alpha
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_get_alpha")
-  (return-type "gdouble")
+(define-method remove
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_remove")
+  (return-type "none")
 )
 
-(define-method set_func
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_set_func")
+(define-method destroy
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_destroy")
   (return-type "none")
-  (parameters
-    '("ClutterAlphaFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "destroy")
-  )
 )
 
-(define-method set_closure
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_set_closure")
-  (return-type "none")
-  (parameters
-    '("GClosure*" "closure")
-  )
+(define-method is_valid
+  (of-object "ClutterActorIter")
+  (c-name "clutter_actor_iter_is_valid")
+  (return-type "gboolean")
 )
 
-(define-method set_timeline
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_set_timeline")
-  (return-type "none")
-  (parameters
-    '("ClutterTimeline*" "timeline")
-  )
+(define-method is_rotated
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_is_rotated")
+  (return-type "gboolean")
 )
 
-(define-method get_timeline
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_get_timeline")
-  (return-type "ClutterTimeline*")
+(define-method is_scaled
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_is_scaled")
+  (return-type "gboolean")
 )
 
-(define-method set_mode
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_set_mode")
+(define-method set_pivot_point
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_pivot_point")
   (return-type "none")
   (parameters
-    '("gulong" "mode")
+    '("gfloat" "pivot_x")
+    '("gfloat" "pivot_y")
   )
 )
 
-(define-method get_mode
-  (of-object "ClutterAlpha")
-  (c-name "clutter_alpha_get_mode")
-  (return-type "gulong")
-)
-
-(define-function clutter_alpha_register_func
-  (c-name "clutter_alpha_register_func")
-  (return-type "gulong")
+(define-method get_pivot_point
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_pivot_point")
+  (return-type "none")
   (parameters
-    '("ClutterAlphaFunc" "func")
-    '("gpointer" "data")
+    '("gfloat*" "pivot_x")
+    '("gfloat*" "pivot_y")
   )
 )
 
-(define-function clutter_alpha_register_closure
-  (c-name "clutter_alpha_register_closure")
-  (return-type "gulong")
+(define-method set_pivot_point_z
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_pivot_point_z")
+  (return-type "none")
   (parameters
-    '("GClosure*" "closure")
+    '("gfloat" "pivot_z")
   )
 )
 
-
-
-;; From clutter-animatable.h
-
-(define-function clutter_animatable_get_type
-  (c-name "clutter_animatable_get_type")
-  (return-type "GType")
+(define-method get_pivot_point_z
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_pivot_point_z")
+  (return-type "gfloat")
 )
 
-(define-method animate_property
-  (of-object "ClutterAnimatable")
-  (c-name "clutter_animatable_animate_property")
-  (return-type "gboolean")
+(define-method set_rotation_angle
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_rotation_angle")
+  (return-type "none")
   (parameters
-    '("ClutterAnimation*" "animation")
-    '("const-gchar*" "property_name")
-    '("const-GValue*" "initial_value")
-    '("const-GValue*" "final_value")
-    '("gdouble" "progress")
-    '("GValue*" "value")
+    '("ClutterRotateAxis" "axis")
+    '("gdouble" "angle")
   )
 )
 
-(define-method find_property
-  (of-object "ClutterAnimatable")
-  (c-name "clutter_animatable_find_property")
-  (return-type "GParamSpec*")
+(define-method get_rotation_angle
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_rotation_angle")
+  (return-type "gdouble")
   (parameters
-    '("const-gchar*" "property_name")
+    '("ClutterRotateAxis" "axis")
   )
 )
 
-(define-method get_initial_state
-  (of-object "ClutterAnimatable")
-  (c-name "clutter_animatable_get_initial_state")
+(define-method set_scale
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_scale")
   (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
-    '("GValue*" "value")
+    '("gdouble" "scale_x")
+    '("gdouble" "scale_y")
   )
 )
 
-(define-method set_final_state
-  (of-object "ClutterAnimatable")
-  (c-name "clutter_animatable_set_final_state")
+(define-method get_scale
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_scale")
   (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
-    '("const-GValue*" "value")
+    '("gdouble*" "scale_x")
+    '("gdouble*" "scale_y")
   )
 )
 
-
-
-;; From clutter-animation.h
-
-(define-function clutter_animation_get_type
-  (c-name "clutter_animation_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_animation_new
-  (c-name "clutter_animation_new")
-  (is-constructor-of "ClutterAnimation")
-  (return-type "ClutterAnimation*")
-)
-
-(define-method set_object
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_object")
+(define-method set_scale_z
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_scale_z")
   (return-type "none")
   (parameters
-    '("GObject*" "object")
+    '("gdouble" "scale_z")
   )
 )
 
-(define-method get_object
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_object")
-  (return-type "GObject*")
+(define-method get_scale_z
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_scale_z")
+  (return-type "gdouble")
 )
 
-(define-method set_mode
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_mode")
+(define-method set_translation
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_translation")
   (return-type "none")
   (parameters
-    '("gulong" "mode")
+    '("gfloat" "translate_x")
+    '("gfloat" "translate_y")
+    '("gfloat" "translate_z")
   )
 )
 
-(define-method get_mode
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_mode")
-  (return-type "gulong")
-)
-
-(define-method set_duration
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_duration")
+(define-method get_translation
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_translation")
   (return-type "none")
   (parameters
-    '("guint" "msecs")
+    '("gfloat*" "translate_x")
+    '("gfloat*" "translate_y")
+    '("gfloat*" "translate_z")
   )
 )
 
-(define-method get_duration
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_duration")
-  (return-type "guint")
-)
-
-(define-method set_loop
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_loop")
+(define-method set_transform
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_transform")
   (return-type "none")
   (parameters
-    '("gboolean" "loop")
+    '("const-ClutterMatrix*" "transform")
   )
 )
 
-(define-method get_loop
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_loop")
-  (return-type "gboolean")
-)
-
-(define-method set_timeline
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_timeline")
+(define-method get_transform
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_transform")
   (return-type "none")
   (parameters
-    '("ClutterTimeline*" "timeline")
+    '("ClutterMatrix*" "transform")
   )
 )
 
-(define-method get_timeline
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_timeline")
-  (return-type "ClutterTimeline*")
-)
-
-(define-method set_alpha
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_set_alpha")
+(define-method set_child_transform
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_set_child_transform")
   (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
+    '("const-ClutterMatrix*" "transform")
   )
 )
 
-(define-method get_alpha
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_alpha")
-  (return-type "ClutterAlpha*")
-)
-
-(define-method bind
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_bind")
-  (return-type "ClutterAnimation*")
+(define-method get_child_transform
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_child_transform")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
-    '("const-GValue*" "final")
+    '("ClutterMatrix*" "transform")
   )
 )
 
-(define-method bind_interval
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_bind_interval")
-  (return-type "ClutterAnimation*")
-  (parameters
-    '("const-gchar*" "property_name")
-    '("ClutterInterval*" "interval")
+(define-method get_transformed_position
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_transformed_position")
+  (return-type "none")
+  (parameters
+    '("gfloat*" "x")
+    '("gfloat*" "y")
   )
 )
 
-(define-method has_property
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_has_property")
-  (return-type "gboolean")
+(define-method get_transformed_size
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_transformed_size")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
+    '("gfloat*" "width")
+    '("gfloat*" "height")
   )
 )
 
-(define-method update
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_update")
-  (return-type "ClutterAnimation*")
+(define-method transform_stage_point
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_transform_stage_point")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "property_name")
-    '("const-GValue*" "final")
+    '("gfloat" "x")
+    '("gfloat" "y")
+    '("gfloat*" "x_out")
+    '("gfloat*" "y_out")
   )
 )
 
-(define-method update_interval
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_update_interval")
+(define-method get_abs_allocation_vertices
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_abs_allocation_vertices")
   (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
-    '("ClutterInterval*" "interval")
+    '("ClutterVertex[]" "verts")
   )
 )
 
-(define-method unbind_property
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_unbind_property")
+(define-method apply_transform_to_point
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_apply_transform_to_point")
   (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
+    '("const-ClutterVertex*" "point")
+    '("ClutterVertex*" "vertex")
   )
 )
 
-(define-method get_interval
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_get_interval")
-  (return-type "ClutterInterval*")
+(define-method apply_relative_transform_to_point
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_apply_relative_transform_to_point")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "property_name")
+    '("ClutterActor*" "ancestor")
+    '("const-ClutterVertex*" "point")
+    '("ClutterVertex*" "vertex")
   )
 )
 
-(define-method completed
-  (of-object "ClutterAnimation")
-  (c-name "clutter_animation_completed")
+(define-method save_easing_state
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_save_easing_state")
+  (return-type "none")
+)
+
+(define-method restore_easing_state
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_restore_easing_state")
   (return-type "none")
 )
 
-(define-method animate
+(define-method set_easing_mode
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animate")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_set_easing_mode")
+  (return-type "none")
   (parameters
-    '("gulong" "mode")
-    '("guint" "duration")
-    '("const-gchar*" "first_property_name")
+    '("ClutterAnimationMode" "mode")
   )
-  (varargs #t)
 )
 
-(define-method animate_with_timeline
+(define-method get_easing_mode
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_easing_mode")
+  (return-type "ClutterAnimationMode")
+)
+
+(define-method set_easing_duration
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animate_with_timeline")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_set_easing_duration")
+  (return-type "none")
   (parameters
-    '("gulong" "mode")
-    '("ClutterTimeline*" "timeline")
-    '("const-gchar*" "first_property_name")
+    '("guint" "msecs")
   )
-  (varargs #t)
 )
 
-(define-method animate_with_alpha
+(define-method get_easing_duration
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_easing_duration")
+  (return-type "guint")
+)
+
+(define-method set_easing_delay
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animate_with_alpha")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_set_easing_delay")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("const-gchar*" "first_property_name")
+    '("guint" "msecs")
   )
-  (varargs #t)
 )
 
-(define-method animatev
+(define-method get_easing_delay
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animatev")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_get_easing_delay")
+  (return-type "guint")
+)
+
+(define-method get_transition
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_transition")
+  (return-type "ClutterTransition*")
   (parameters
-    '("gulong" "mode")
-    '("guint" "duration")
-    '("gint" "n_properties")
-    '("const-gchar*-const[]" "properties")
-    '("const-GValue*" "values")
+    '("const-char*" "name")
   )
 )
 
-(define-method animate_with_timelinev
+(define-method add_transition
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animate_with_timelinev")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_add_transition")
+  (return-type "none")
   (parameters
-    '("gulong" "mode")
-    '("ClutterTimeline*" "timeline")
-    '("gint" "n_properties")
-    '("const-gchar*-const[]" "properties")
-    '("const-GValue*" "values")
+    '("const-char*" "name")
+    '("ClutterTransition*" "transition")
   )
 )
 
-(define-method animate_with_alphav
+(define-method remove_transition
   (of-object "ClutterActor")
-  (c-name "clutter_actor_animate_with_alphav")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_remove_transition")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("gint" "n_properties")
-    '("const-gchar*-const[]" "properties")
-    '("const-GValue*" "values")
+    '("const-char*" "name")
   )
 )
 
-(define-method get_animation
+(define-method remove_all_transitions
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_animation")
-  (return-type "ClutterAnimation*")
+  (c-name "clutter_actor_remove_all_transitions")
+  (return-type "none")
 )
 
+(define-method has_mapped_clones
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_has_mapped_clones")
+  (return-type "gboolean")
+)
 
 
-;; From clutter-animator.h
-
-(define-function clutter_animator_get_type
-  (c-name "clutter_animator_get_type")
-  (return-type "GType")
-)
 
-(define-function clutter_animator_new
-  (c-name "clutter_animator_new")
-  (is-constructor-of "ClutterAnimator")
-  (return-type "ClutterAnimator*")
-)
+;; From clutter-actor-meta.h
 
-(define-method set_key
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_set_key")
-  (return-type "ClutterAnimator*")
-  (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("guint" "mode")
-    '("gdouble" "progress")
-    '("const-GValue*" "value")
-  )
+(define-function clutter_actor_meta_get_type
+  (c-name "clutter_actor_meta_get_type")
+  (return-type "GType")
 )
 
-(define-method set
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_set")
+(define-method set_name
+  (of-object "ClutterActorMeta")
+  (c-name "clutter_actor_meta_set_name")
   (return-type "none")
   (parameters
-    '("gpointer" "first_object")
-    '("const-gchar*" "first_property_name")
-    '("guint" "first_mode")
-    '("gdouble" "first_progress")
+    '("const-gchar*" "name")
   )
-  (varargs #t)
 )
 
-(define-method get_keys
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_get_keys")
-  (return-type "GList*")
-  (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("gdouble" "progress")
-  )
+(define-method get_name
+  (of-object "ClutterActorMeta")
+  (c-name "clutter_actor_meta_get_name")
+  (return-type "const-gchar*")
 )
 
-(define-method remove_key
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_remove_key")
+(define-method set_enabled
+  (of-object "ClutterActorMeta")
+  (c-name "clutter_actor_meta_set_enabled")
   (return-type "none")
   (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("gdouble" "progress")
+    '("gboolean" "is_enabled")
   )
 )
 
-(define-method start
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_start")
-  (return-type "ClutterTimeline*")
+(define-method get_enabled
+  (of-object "ClutterActorMeta")
+  (c-name "clutter_actor_meta_get_enabled")
+  (return-type "gboolean")
 )
 
-(define-method compute_value
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_compute_value")
-  (return-type "gboolean")
-  (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("gdouble" "progress")
-    '("GValue*" "value")
-  )
+(define-method get_actor
+  (of-object "ClutterActorMeta")
+  (c-name "clutter_actor_meta_get_actor")
+  (return-type "ClutterActor*")
 )
 
-(define-method get_timeline
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_get_timeline")
-  (return-type "ClutterTimeline*")
+
+
+;; From clutter-actor-meta-private.h
+
+
+
+;; From clutter-actor-private.h
+
+
+
+;; From clutter-align-constraint.h
+
+(define-function clutter_align_constraint_get_type
+  (c-name "clutter_align_constraint_get_type")
+  (return-type "GType")
 )
 
-(define-method set_timeline
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_set_timeline")
-  (return-type "none")
+(define-function clutter_align_constraint_new
+  (c-name "clutter_align_constraint_new")
+  (is-constructor-of "ClutterAlignConstraint")
+  (return-type "ClutterConstraint*")
   (parameters
-    '("ClutterTimeline*" "timeline")
+    '("ClutterActor*" "source")
+    '("ClutterAlignAxis" "axis")
+    '("gfloat" "factor")
   )
 )
 
-(define-method get_duration
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_get_duration")
-  (return-type "guint")
-)
-
-(define-method set_duration
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_set_duration")
+(define-method set_source
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_set_source")
   (return-type "none")
   (parameters
-    '("guint" "duration")
+    '("ClutterActor*" "source")
   )
 )
 
-(define-method property_get_ease_in
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_property_get_ease_in")
-  (return-type "gboolean")
-  (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-  )
+(define-method get_source
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_get_source")
+  (return-type "ClutterActor*")
 )
 
-(define-method property_set_ease_in
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_property_set_ease_in")
+(define-method set_align_axis
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_set_align_axis")
   (return-type "none")
   (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("gboolean" "ease_in")
+    '("ClutterAlignAxis" "axis")
   )
 )
 
-(define-method property_get_interpolation
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_property_get_interpolation")
-  (return-type "ClutterInterpolation")
-  (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-  )
+(define-method get_align_axis
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_get_align_axis")
+  (return-type "ClutterAlignAxis")
 )
 
-(define-method property_set_interpolation
-  (of-object "ClutterAnimator")
-  (c-name "clutter_animator_property_set_interpolation")
+(define-method set_factor
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_set_factor")
   (return-type "none")
   (parameters
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("ClutterInterpolation" "interpolation")
+    '("gfloat" "factor")
   )
 )
 
-(define-function clutter_animator_key_get_type
-  (c-name "clutter_animator_key_get_type")
-  (return-type "GType")
+(define-method get_factor
+  (of-object "ClutterAlignConstraint")
+  (c-name "clutter_align_constraint_get_factor")
+  (return-type "gfloat")
 )
 
-(define-method get_object
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_object")
-  (return-type "GObject*")
-)
 
-(define-method get_property_name
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_property_name")
-  (return-type "const-gchar*")
-)
 
-(define-method get_property_type
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_property_type")
+;; From clutter-animatable.h
+
+(define-function clutter_animatable_get_type
+  (c-name "clutter_animatable_get_type")
   (return-type "GType")
 )
 
-(define-method get_mode
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_mode")
-  (return-type "gulong")
+(define-method find_property
+  (of-object "ClutterAnimatable")
+  (c-name "clutter_animatable_find_property")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "property_name")
+  )
 )
 
-(define-method get_progress
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_progress")
-  (return-type "gdouble")
+(define-method get_initial_state
+  (of-object "ClutterAnimatable")
+  (c-name "clutter_animatable_get_initial_state")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("GValue*" "value")
+  )
 )
 
-(define-method get_value
-  (of-object "ClutterAnimatorKey")
-  (c-name "clutter_animator_key_get_value")
+(define-method set_final_state
+  (of-object "ClutterAnimatable")
+  (c-name "clutter_animatable_set_final_state")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("const-GValue*" "value")
+  )
+)
+
+(define-method interpolate_value
+  (of-object "ClutterAnimatable")
+  (c-name "clutter_animatable_interpolate_value")
   (return-type "gboolean")
   (parameters
+    '("const-gchar*" "property_name")
+    '("ClutterInterval*" "interval")
+    '("gdouble" "progress")
     '("GValue*" "value")
   )
 )
@@ -2571,626 +2860,552 @@
   (return-type "ClutterBackend*")
 )
 
-(define-method set_resolution
+(define-method get_resolution
   (of-object "ClutterBackend")
-  (c-name "clutter_backend_set_resolution")
-  (return-type "none")
-  (parameters
-    '("gdouble" "dpi")
-  )
+  (c-name "clutter_backend_get_resolution")
+  (return-type "gdouble")
 )
 
-(define-method set_double_click_time
+(define-method set_font_options
   (of-object "ClutterBackend")
-  (c-name "clutter_backend_set_double_click_time")
+  (c-name "clutter_backend_set_font_options")
   (return-type "none")
   (parameters
-    '("guint" "msec")
+    '("const-cairo_font_options_t*" "options")
   )
 )
 
-(define-method get_double_click_time
+(define-method get_font_options
   (of-object "ClutterBackend")
-  (c-name "clutter_backend_get_double_click_time")
-  (return-type "guint")
+  (c-name "clutter_backend_get_font_options")
+  (return-type "const-cairo_font_options_t*")
 )
 
-(define-method set_double_click_distance
+(define-method get_cogl_context
   (of-object "ClutterBackend")
-  (c-name "clutter_backend_set_double_click_distance")
-  (return-type "none")
-  (parameters
-    '("guint" "distance")
-  )
+  (c-name "clutter_backend_get_cogl_context")
+  (return-type "CoglContext*")
 )
 
-(define-method get_double_click_distance
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_get_double_click_distance")
-  (return-type "guint")
-)
 
-(define-method set_font_name
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_set_font_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "font_name")
-  )
-)
 
-(define-method get_font_name
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_get_font_name")
-  (return-type "const-gchar*")
+;; From clutter-backend-private.h
+
+
+
+;; From clutter-bezier.h
+
+
+
+;; From clutter-bind-constraint.h
+
+(define-function clutter_bind_constraint_get_type
+  (c-name "clutter_bind_constraint_get_type")
+  (return-type "GType")
 )
 
-(define-method get_resolution
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_get_resolution")
-  (return-type "gdouble")
+(define-function clutter_bind_constraint_new
+  (c-name "clutter_bind_constraint_new")
+  (is-constructor-of "ClutterBindConstraint")
+  (return-type "ClutterConstraint*")
+  (parameters
+    '("ClutterActor*" "source")
+    '("ClutterBindCoordinate" "coordinate")
+    '("gfloat" "offset")
+  )
 )
 
-(define-method set_font_options
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_set_font_options")
+(define-function clutter_bind_constraint_set_source
+  (c-name "clutter_bind_constraint_set_source")
   (return-type "none")
   (parameters
-    '("const-cairo_font_options_t*" "options")
+    '("ClutterActor*" "source")
   )
 )
 
-(define-method get_font_options
-  (of-object "ClutterBackend")
-  (c-name "clutter_backend_get_font_options")
-  (return-type "const-cairo_font_options_t*")
+(define-function clutter_bind_constraint_get_source
+  (c-name "clutter_bind_constraint_get_source")
+  (return-type "ClutterActor*")
+  (parameters
+  )
 )
 
-
-
-;; From clutter-behaviour-depth.h
-
-(define-function clutter_behaviour_depth_get_type
-  (c-name "clutter_behaviour_depth_get_type")
-  (return-type "GType")
+(define-function clutter_bind_constraint_set_coordinate
+  (c-name "clutter_bind_constraint_set_coordinate")
+  (return-type "none")
+  (parameters
+    '("ClutterBindCoordinate" "coordinate")
+  )
 )
 
-(define-function clutter_behaviour_depth_new
-  (c-name "clutter_behaviour_depth_new")
-  (is-constructor-of "ClutterBehaviourDepth")
-  (return-type "ClutterBehaviour*")
+(define-function clutter_bind_constraint_get_coordinate
+  (c-name "clutter_bind_constraint_get_coordinate")
+  (return-type "ClutterBindCoordinate")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("gint" "depth_start")
-    '("gint" "depth_end")
   )
 )
 
-(define-method set_bounds
-  (of-object "ClutterBehaviourDepth")
-  (c-name "clutter_behaviour_depth_set_bounds")
+(define-function clutter_bind_constraint_set_offset
+  (c-name "clutter_bind_constraint_set_offset")
   (return-type "none")
   (parameters
-    '("gint" "depth_start")
-    '("gint" "depth_end")
+    '("gfloat" "offset")
   )
 )
 
-(define-method get_bounds
-  (of-object "ClutterBehaviourDepth")
-  (c-name "clutter_behaviour_depth_get_bounds")
-  (return-type "none")
+(define-function clutter_bind_constraint_get_offset
+  (c-name "clutter_bind_constraint_get_offset")
+  (return-type "gfloat")
   (parameters
-    '("gint*" "depth_start")
-    '("gint*" "depth_end")
   )
 )
 
 
 
-;; From clutter-behaviour-ellipse.h
+;; From clutter-binding-pool.h
 
-(define-function clutter_behaviour_ellipse_get_type
-  (c-name "clutter_behaviour_ellipse_get_type")
+(define-function clutter_binding_pool_get_type
+  (c-name "clutter_binding_pool_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_behaviour_ellipse_new
-  (c-name "clutter_behaviour_ellipse_new")
-  (is-constructor-of "ClutterBehaviourEllipse")
-  (return-type "ClutterBehaviour*")
+(define-function clutter_binding_pool_new
+  (c-name "clutter_binding_pool_new")
+  (is-constructor-of "ClutterBindingPool")
+  (return-type "ClutterBindingPool*")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("gint" "x")
-    '("gint" "y")
-    '("gint" "width")
-    '("gint" "height")
-    '("ClutterRotateDirection" "direction")
-    '("gdouble" "start")
-    '("gdouble" "end")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method set_center
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_center")
-  (return-type "none")
+(define-function clutter_binding_pool_get_for_class
+  (c-name "clutter_binding_pool_get_for_class")
+  (return-type "ClutterBindingPool*")
   (parameters
-    '("gint" "x")
-    '("gint" "y")
+    '("gpointer" "klass")
   )
 )
 
-(define-method get_center
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_center")
-  (return-type "none")
+(define-function clutter_binding_pool_find
+  (c-name "clutter_binding_pool_find")
+  (return-type "ClutterBindingPool*")
   (parameters
-    '("gint*" "x")
-    '("gint*" "y")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method set_width
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_width")
+(define-method install_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_install_action")
   (return-type "none")
   (parameters
-    '("gint" "width")
+    '("const-gchar*" "action_name")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+    '("GCallback" "callback")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-method get_width
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_width")
-  (return-type "gint")
-)
-
-(define-method set_height
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_height")
+(define-method install_closure
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_install_closure")
   (return-type "none")
   (parameters
-    '("gint" "height")
+    '("const-gchar*" "action_name")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+    '("GClosure*" "closure")
   )
 )
 
-(define-method get_height
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_height")
-  (return-type "gint")
-)
-
-(define-method set_angle_start
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_angle_start")
+(define-method override_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_override_action")
   (return-type "none")
   (parameters
-    '("gdouble" "angle_start")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+    '("GCallback" "callback")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-method get_angle_start
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_angle_start")
-  (return-type "gdouble")
-)
-
-(define-method set_angle_end
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_angle_end")
+(define-method override_closure
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_override_closure")
   (return-type "none")
   (parameters
-    '("gdouble" "angle_end")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+    '("GClosure*" "closure")
   )
 )
 
-(define-method get_angle_end
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_angle_end")
-  (return-type "gdouble")
+(define-method find_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_find_action")
+  (return-type "const-gchar*")
+  (parameters
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+  )
 )
 
-(define-method set_angle_tilt
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_angle_tilt")
+(define-method remove_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_remove_action")
   (return-type "none")
   (parameters
-    '("ClutterRotateAxis" "axis")
-    '("gdouble" "angle_tilt")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
   )
 )
 
-(define-method get_angle_tilt
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_angle_tilt")
-  (return-type "gdouble")
+(define-method activate
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_activate")
+  (return-type "gboolean")
   (parameters
-    '("ClutterRotateAxis" "axis")
+    '("guint" "key_val")
+    '("ClutterModifierType" "modifiers")
+    '("GObject*" "gobject")
   )
 )
 
-(define-method set_tilt
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_tilt")
+(define-method block_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_block_action")
   (return-type "none")
   (parameters
-    '("gdouble" "angle_tilt_x")
-    '("gdouble" "angle_tilt_y")
-    '("gdouble" "angle_tilt_z")
+    '("const-gchar*" "action_name")
   )
 )
 
-(define-method get_tilt
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_tilt")
+(define-method unblock_action
+  (of-object "ClutterBindingPool")
+  (c-name "clutter_binding_pool_unblock_action")
   (return-type "none")
   (parameters
-    '("gdouble*" "angle_tilt_x")
-    '("gdouble*" "angle_tilt_y")
-    '("gdouble*" "angle_tilt_z")
+    '("const-gchar*" "action_name")
   )
 )
 
-(define-method get_direction
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_get_direction")
-  (return-type "ClutterRotateDirection")
+
+
+;; From clutter-bin-layout.h
+
+(define-function clutter_bin_layout_get_type
+  (c-name "clutter_bin_layout_get_type")
+  (return-type "GType")
 )
 
-(define-method set_direction
-  (of-object "ClutterBehaviourEllipse")
-  (c-name "clutter_behaviour_ellipse_set_direction")
-  (return-type "none")
-  (parameters
-    '("ClutterRotateDirection" "direction")
-  )
+(define-function clutter_bin_layout_new
+  (c-name "clutter_bin_layout_new")
+  (is-constructor-of "ClutterBinLayout")
+  (return-type "ClutterLayoutManager*")
 )
 
 
 
-;; From clutter-behaviour.h
+;; From clutter-blur-effect.h
 
-(define-function clutter_behaviour_get_type
-  (c-name "clutter_behaviour_get_type")
+(define-function clutter_blur_effect_get_type
+  (c-name "clutter_blur_effect_get_type")
   (return-type "GType")
 )
 
-(define-method apply
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_apply")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
+(define-function clutter_blur_effect_new
+  (c-name "clutter_blur_effect_new")
+  (is-constructor-of "ClutterBlurEffect")
+  (return-type "ClutterEffect*")
 )
 
-(define-method remove
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_remove")
+
+
+;; From clutter-box-layout.h
+
+(define-function clutter_box_layout_get_type
+  (c-name "clutter_box_layout_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_box_layout_new
+  (c-name "clutter_box_layout_new")
+  (is-constructor-of "ClutterBoxLayout")
+  (return-type "ClutterLayoutManager*")
+)
+
+(define-method set_orientation
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_set_orientation")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
+    '("ClutterOrientation" "orientation")
   )
 )
 
-(define-method remove_all
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_remove_all")
-  (return-type "none")
+(define-method get_orientation
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_get_orientation")
+  (return-type "ClutterOrientation")
 )
 
-(define-method actors_foreach
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_actors_foreach")
+(define-method set_spacing
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_set_spacing")
   (return-type "none")
   (parameters
-    '("ClutterBehaviourForeachFunc" "func")
-    '("gpointer" "data")
+    '("guint" "spacing")
   )
 )
 
-(define-method get_n_actors
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_get_n_actors")
-  (return-type "gint")
+(define-method get_spacing
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_get_spacing")
+  (return-type "guint")
 )
 
-(define-method get_nth_actor
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_get_nth_actor")
-  (return-type "ClutterActor*")
+(define-method set_homogeneous
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_set_homogeneous")
+  (return-type "none")
   (parameters
-    '("gint" "index_")
+    '("gboolean" "homogeneous")
   )
 )
 
-(define-method get_actors
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_get_actors")
-  (return-type "GSList*")
-)
-
-(define-method get_alpha
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_get_alpha")
-  (return-type "ClutterAlpha*")
+(define-method get_homogeneous
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_get_homogeneous")
+  (return-type "gboolean")
 )
 
-(define-method set_alpha
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_set_alpha")
+(define-method set_pack_start
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_set_pack_start")
   (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
+    '("gboolean" "pack_start")
   )
 )
 
-(define-method is_applied
-  (of-object "ClutterBehaviour")
-  (c-name "clutter_behaviour_is_applied")
+(define-method get_pack_start
+  (of-object "ClutterBoxLayout")
+  (c-name "clutter_box_layout_get_pack_start")
   (return-type "gboolean")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
 )
 
 
 
-;; From clutter-behaviour-opacity.h
+;; From clutter-brightness-contrast-effect.h
 
-(define-function clutter_behaviour_opacity_get_type
-  (c-name "clutter_behaviour_opacity_get_type")
+(define-function clutter_brightness_contrast_effect_get_type
+  (c-name "clutter_brightness_contrast_effect_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_behaviour_opacity_new
-  (c-name "clutter_behaviour_opacity_new")
-  (is-constructor-of "ClutterBehaviourOpacity")
-  (return-type "ClutterBehaviour*")
-  (parameters
-    '("ClutterAlpha*" "alpha")
-    '("guint8" "opacity_start")
-    '("guint8" "opacity_end")
-  )
+(define-function clutter_brightness_contrast_effect_new
+  (c-name "clutter_brightness_contrast_effect_new")
+  (is-constructor-of "ClutterBrightnessContrastEffect")
+  (return-type "ClutterEffect*")
 )
 
-(define-method set_bounds
-  (of-object "ClutterBehaviourOpacity")
-  (c-name "clutter_behaviour_opacity_set_bounds")
+(define-method set_brightness_full
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_set_brightness_full")
   (return-type "none")
   (parameters
-    '("guint8" "opacity_start")
-    '("guint8" "opacity_end")
+    '("float" "red")
+    '("float" "green")
+    '("float" "blue")
   )
 )
 
-(define-method get_bounds
-  (of-object "ClutterBehaviourOpacity")
-  (c-name "clutter_behaviour_opacity_get_bounds")
+(define-method set_brightness
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_set_brightness")
   (return-type "none")
   (parameters
-    '("guint8*" "opacity_start")
-    '("guint8*" "opacity_end")
+    '("float" "brightness")
   )
 )
 
-
-
-;; From clutter-behaviour-path.h
-
-(define-function clutter_behaviour_path_get_type
-  (c-name "clutter_behaviour_path_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_behaviour_path_new
-  (c-name "clutter_behaviour_path_new")
-  (is-constructor-of "ClutterBehaviourPath")
-  (return-type "ClutterBehaviour*")
+(define-method get_brightness
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_get_brightness")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("ClutterPath*" "path")
+    '("float*" "red")
+    '("float*" "green")
+    '("float*" "blue")
   )
 )
 
-(define-function clutter_behaviour_path_new_with_description
-  (c-name "clutter_behaviour_path_new_with_description")
-  (return-type "ClutterBehaviour*")
+(define-method set_contrast_full
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_set_contrast_full")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("const-gchar*" "desc")
+    '("float" "red")
+    '("float" "green")
+    '("float" "blue")
   )
 )
 
-(define-function clutter_behaviour_path_new_with_knots
-  (c-name "clutter_behaviour_path_new_with_knots")
-  (return-type "ClutterBehaviour*")
+(define-method set_contrast
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_set_contrast")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("const-ClutterKnot*" "knots")
-    '("guint" "n_knots")
+    '("float" "contrast")
   )
 )
 
-(define-method set_path
-  (of-object "ClutterBehaviourPath")
-  (c-name "clutter_behaviour_path_set_path")
+(define-method get_contrast
+  (of-object "ClutterBrightnessContrastEffect")
+  (c-name "clutter_brightness_contrast_effect_get_contrast")
   (return-type "none")
   (parameters
-    '("ClutterPath*" "path")
+    '("float*" "red")
+    '("float*" "green")
+    '("float*" "blue")
   )
 )
 
-(define-method get_path
-  (of-object "ClutterBehaviourPath")
-  (c-name "clutter_behaviour_path_get_path")
-  (return-type "ClutterPath*")
-)
-
-
 
-;; From clutter-behaviour-rotate.h
 
-(define-function clutter_behaviour_rotate_get_type
-  (c-name "clutter_behaviour_rotate_get_type")
-  (return-type "GType")
-)
+;; From clutter-cairo.h
 
-(define-function clutter_behaviour_rotate_new
-  (c-name "clutter_behaviour_rotate_new")
-  (is-constructor-of "ClutterBehaviourRotate")
-  (return-type "ClutterBehaviour*")
+(define-function clutter_cairo_clear
+  (c-name "clutter_cairo_clear")
+  (return-type "none")
   (parameters
-    '("ClutterAlpha*" "alpha")
-    '("ClutterRotateAxis" "axis")
-    '("ClutterRotateDirection" "direction")
-    '("gdouble" "angle_start")
-    '("gdouble" "angle_end")
+    '("cairo_t*" "cr")
   )
 )
 
-(define-method get_center
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_get_center")
+(define-function clutter_cairo_set_source_color
+  (c-name "clutter_cairo_set_source_color")
   (return-type "none")
   (parameters
-    '("gint*" "x")
-    '("gint*" "y")
-    '("gint*" "z")
+    '("cairo_t*" "cr")
+    '("const-ClutterColor*" "color")
   )
 )
 
-(define-method set_center
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_set_center")
-  (return-type "none")
-  (parameters
-    '("gint" "x")
-    '("gint" "y")
-    '("gint" "z")
-  )
+
+
+;; From clutter-canvas.h
+
+(define-function clutter_canvas_get_type
+  (c-name "clutter_canvas_get_type")
+  (return-type "GType")
 )
 
-(define-method get_axis
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_get_axis")
-  (return-type "ClutterRotateAxis")
+(define-function clutter_canvas_new
+  (c-name "clutter_canvas_new")
+  (is-constructor-of "ClutterCanvas")
+  (return-type "ClutterContent*")
 )
 
-(define-method set_axis
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_set_axis")
+(define-method set_size
+  (of-object "ClutterCanvas")
+  (c-name "clutter_canvas_set_size")
   (return-type "none")
   (parameters
-    '("ClutterRotateAxis" "axis")
+    '("int" "width")
+    '("int" "height")
   )
 )
 
-(define-method get_direction
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_get_direction")
-  (return-type "ClutterRotateDirection")
-)
 
-(define-method set_direction
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_set_direction")
-  (return-type "none")
-  (parameters
-    '("ClutterRotateDirection" "direction")
-  )
+
+;; From clutter-child-meta.h
+
+(define-function clutter_child_meta_get_type
+  (c-name "clutter_child_meta_get_type")
+  (return-type "GType")
 )
 
-(define-method get_bounds
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_get_bounds")
-  (return-type "none")
-  (parameters
-    '("gdouble*" "angle_start")
-    '("gdouble*" "angle_end")
-  )
+(define-method get_container
+  (of-object "ClutterChildMeta")
+  (c-name "clutter_child_meta_get_container")
+  (return-type "ClutterContainer*")
 )
 
-(define-method set_bounds
-  (of-object "ClutterBehaviourRotate")
-  (c-name "clutter_behaviour_rotate_set_bounds")
-  (return-type "none")
-  (parameters
-    '("gdouble" "angle_start")
-    '("gdouble" "angle_end")
-  )
+(define-method get_actor
+  (of-object "ClutterChildMeta")
+  (c-name "clutter_child_meta_get_actor")
+  (return-type "ClutterActor*")
 )
 
 
 
-;; From clutter-behaviour-scale.h
+;; From clutter-click-action.h
 
-(define-function clutter_behaviour_scale_get_type
-  (c-name "clutter_behaviour_scale_get_type")
+(define-function clutter_click_action_get_type
+  (c-name "clutter_click_action_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_behaviour_scale_new
-  (c-name "clutter_behaviour_scale_new")
-  (is-constructor-of "ClutterBehaviourScale")
-  (return-type "ClutterBehaviour*")
-  (parameters
-    '("ClutterAlpha*" "alpha")
-    '("gdouble" "x_scale_start")
-    '("gdouble" "y_scale_start")
-    '("gdouble" "x_scale_end")
-    '("gdouble" "y_scale_end")
-  )
+(define-function clutter_click_action_new
+  (c-name "clutter_click_action_new")
+  (is-constructor-of "ClutterClickAction")
+  (return-type "ClutterAction*")
+)
+
+(define-method get_button
+  (of-object "ClutterClickAction")
+  (c-name "clutter_click_action_get_button")
+  (return-type "guint")
+)
+
+(define-method get_state
+  (of-object "ClutterClickAction")
+  (c-name "clutter_click_action_get_state")
+  (return-type "ClutterModifierType")
 )
 
-(define-method set_bounds
-  (of-object "ClutterBehaviourScale")
-  (c-name "clutter_behaviour_scale_set_bounds")
+(define-method get_coords
+  (of-object "ClutterClickAction")
+  (c-name "clutter_click_action_get_coords")
   (return-type "none")
   (parameters
-    '("gdouble" "x_scale_start")
-    '("gdouble" "y_scale_start")
-    '("gdouble" "x_scale_end")
-    '("gdouble" "y_scale_end")
+    '("gfloat*" "press_x")
+    '("gfloat*" "press_y")
   )
 )
 
-(define-method get_bounds
-  (of-object "ClutterBehaviourScale")
-  (c-name "clutter_behaviour_scale_get_bounds")
+(define-method release
+  (of-object "ClutterClickAction")
+  (c-name "clutter_click_action_release")
   (return-type "none")
-  (parameters
-    '("gdouble*" "x_scale_start")
-    '("gdouble*" "y_scale_start")
-    '("gdouble*" "x_scale_end")
-    '("gdouble*" "y_scale_end")
-  )
 )
 
 
 
-;; From clutter-bind-constraint.h
+;; From clutter-clone.h
 
-(define-function clutter_bind_constraint_get_type
-  (c-name "clutter_bind_constraint_get_type")
+(define-function clutter_clone_get_type
+  (c-name "clutter_clone_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_bind_constraint_new
-  (c-name "clutter_bind_constraint_new")
-  (is-constructor-of "ClutterBindConstraint")
-  (return-type "ClutterConstraint*")
+(define-function clutter_clone_new
+  (c-name "clutter_clone_new")
+  (is-constructor-of "ClutterClone")
+  (return-type "ClutterActor*")
   (parameters
     '("ClutterActor*" "source")
-    '("ClutterBindCoordinate" "coordinate")
-    '("gfloat" "offset")
   )
 )
 
 (define-method set_source
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_set_source")
+  (of-object "ClutterClone")
+  (c-name "clutter_clone_set_source")
   (return-type "none")
   (parameters
     '("ClutterActor*" "source")
@@ -3198,1484 +3413,877 @@
 )
 
 (define-method get_source
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_get_source")
+  (of-object "ClutterClone")
+  (c-name "clutter_clone_get_source")
   (return-type "ClutterActor*")
 )
 
-(define-method set_coordinate
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_set_coordinate")
-  (return-type "none")
-  (parameters
-    '("ClutterBindCoordinate" "coordinate")
-  )
-)
-
-(define-method get_coordinate
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_get_coordinate")
-  (return-type "ClutterBindCoordinate")
-)
 
-(define-method set_offset
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_set_offset")
-  (return-type "none")
-  (parameters
-    '("gfloat" "offset")
-  )
-)
 
-(define-method get_offset
-  (of-object "ClutterBindConstraint")
-  (c-name "clutter_bind_constraint_get_offset")
-  (return-type "gfloat")
-)
+;; From clutter-cogl-compat.h
 
 
 
-;; From clutter-binding-pool.h
+;; From clutter-color.h
 
-(define-function clutter_binding_pool_get_type
-  (c-name "clutter_binding_pool_get_type")
+(define-function clutter_color_get_type
+  (c-name "clutter_color_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_binding_pool_new
-  (c-name "clutter_binding_pool_new")
-  (is-constructor-of "ClutterBindingPool")
-  (return-type "ClutterBindingPool*")
+(define-function clutter_color_new
+  (c-name "clutter_color_new")
+  (is-constructor-of "ClutterColor")
+  (return-type "ClutterColor*")
   (parameters
-    '("const-gchar*" "name")
+    '("guint8" "red")
+    '("guint8" "green")
+    '("guint8" "blue")
+    '("guint8" "alpha")
   )
 )
 
-(define-function clutter_binding_pool_get_for_class
-  (c-name "clutter_binding_pool_get_for_class")
-  (return-type "ClutterBindingPool*")
-  (parameters
-    '("gpointer" "klass")
-  )
+(define-function clutter_color_alloc
+  (c-name "clutter_color_alloc")
+  (return-type "ClutterColor*")
 )
 
-(define-function clutter_binding_pool_find
-  (c-name "clutter_binding_pool_find")
-  (return-type "ClutterBindingPool*")
+(define-method init
+  (of-object "ClutterColor")
+  (c-name "clutter_color_init")
+  (return-type "ClutterColor*")
   (parameters
-    '("const-gchar*" "name")
+    '("guint8" "red")
+    '("guint8" "green")
+    '("guint8" "blue")
+    '("guint8" "alpha")
   )
 )
 
-(define-method install_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_install_action")
+(define-method copy
+  (of-object "ClutterColor")
+  (c-name "clutter_color_copy")
+  (return-type "ClutterColor*")
+)
+
+(define-method free
+  (of-object "ClutterColor")
+  (c-name "clutter_color_free")
   (return-type "none")
-  (parameters
-    '("const-gchar*" "action_name")
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
-    '("GCallback" "callback")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
-  )
 )
 
-(define-method install_closure
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_install_closure")
+(define-method add
+  (of-object "ClutterColor")
+  (c-name "clutter_color_add")
   (return-type "none")
   (parameters
-    '("const-gchar*" "action_name")
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
-    '("GClosure*" "closure")
+    '("const-ClutterColor*" "b")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method override_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_override_action")
+(define-method subtract
+  (of-object "ClutterColor")
+  (c-name "clutter_color_subtract")
   (return-type "none")
   (parameters
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
-    '("GCallback" "callback")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("const-ClutterColor*" "b")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method override_closure
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_override_closure")
+(define-method lighten
+  (of-object "ClutterColor")
+  (c-name "clutter_color_lighten")
   (return-type "none")
   (parameters
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
-    '("GClosure*" "closure")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method find_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_find_action")
-  (return-type "const-gchar*")
+(define-method darken
+  (of-object "ClutterColor")
+  (c-name "clutter_color_darken")
+  (return-type "none")
   (parameters
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method remove_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_remove_action")
+(define-method shade
+  (of-object "ClutterColor")
+  (c-name "clutter_color_shade")
   (return-type "none")
   (parameters
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
+    '("gdouble" "factor")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method activate
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_activate")
+(define-method to_string
+  (of-object "ClutterColor")
+  (c-name "clutter_color_to_string")
+  (return-type "gchar*")
+)
+
+(define-method from_string
+  (of-object "ClutterColor")
+  (c-name "clutter_color_from_string")
   (return-type "gboolean")
   (parameters
-    '("guint" "key_val")
-    '("ClutterModifierType" "modifiers")
-    '("GObject*" "gobject")
+    '("const-gchar*" "str")
   )
 )
 
-(define-method block_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_block_action")
+(define-method to_hls
+  (of-object "ClutterColor")
+  (c-name "clutter_color_to_hls")
   (return-type "none")
   (parameters
-    '("const-gchar*" "action_name")
+    '("gfloat*" "hue")
+    '("gfloat*" "luminance")
+    '("gfloat*" "saturation")
   )
 )
 
-(define-method unblock_action
-  (of-object "ClutterBindingPool")
-  (c-name "clutter_binding_pool_unblock_action")
+(define-method from_hls
+  (of-object "ClutterColor")
+  (c-name "clutter_color_from_hls")
   (return-type "none")
   (parameters
-    '("const-gchar*" "action_name")
+    '("gfloat" "hue")
+    '("gfloat" "luminance")
+    '("gfloat" "saturation")
   )
 )
 
+(define-method to_pixel
+  (of-object "ClutterColor")
+  (c-name "clutter_color_to_pixel")
+  (return-type "guint32")
+)
 
-
-;; From clutter-bin-layout.h
-
-(define-function clutter_bin_layout_get_type
-  (c-name "clutter_bin_layout_get_type")
-  (return-type "GType")
+(define-method from_pixel
+  (of-object "ClutterColor")
+  (c-name "clutter_color_from_pixel")
+  (return-type "none")
+  (parameters
+    '("guint32" "pixel")
+  )
 )
 
-(define-function clutter_bin_layout_new
-  (c-name "clutter_bin_layout_new")
-  (is-constructor-of "ClutterBinLayout")
-  (return-type "ClutterLayoutManager*")
+(define-function clutter_color_hash
+  (c-name "clutter_color_hash")
+  (return-type "guint")
   (parameters
-    '("ClutterBinAlignment" "x_align")
-    '("ClutterBinAlignment" "y_align")
+    '("gconstpointer" "v")
   )
 )
 
-(define-method set_alignment
-  (of-object "ClutterBinLayout")
-  (c-name "clutter_bin_layout_set_alignment")
-  (return-type "none")
+(define-function clutter_color_equal
+  (c-name "clutter_color_equal")
+  (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "child")
-    '("ClutterBinAlignment" "x_align")
-    '("ClutterBinAlignment" "y_align")
+    '("gconstpointer" "v1")
+    '("gconstpointer" "v2")
   )
 )
 
-(define-method get_alignment
-  (of-object "ClutterBinLayout")
-  (c-name "clutter_bin_layout_get_alignment")
+(define-method interpolate
+  (of-object "ClutterColor")
+  (c-name "clutter_color_interpolate")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "child")
-    '("ClutterBinAlignment*" "x_align")
-    '("ClutterBinAlignment*" "y_align")
+    '("const-ClutterColor*" "final")
+    '("gdouble" "progress")
+    '("ClutterColor*" "result")
   )
 )
 
-(define-method add
-  (of-object "ClutterBinLayout")
-  (c-name "clutter_bin_layout_add")
+(define-function clutter_value_set_color
+  (c-name "clutter_value_set_color")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "child")
-    '("ClutterBinAlignment" "x_align")
-    '("ClutterBinAlignment" "y_align")
+    '("GValue*" "value")
+    '("const-ClutterColor*" "color")
   )
 )
 
+(define-function clutter_value_get_color
+  (c-name "clutter_value_get_color")
+  (return-type "const-ClutterColor*")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
 
-
-;; From clutter-blur-effect.h
-
-(define-function clutter_blur_effect_get_type
-  (c-name "clutter_blur_effect_get_type")
+(define-function clutter_param_color_get_type
+  (c-name "clutter_param_color_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_blur_effect_new
-  (c-name "clutter_blur_effect_new")
-  (is-constructor-of "ClutterBlurEffect")
-  (return-type "ClutterEffect*")
+(define-function clutter_param_spec_color
+  (c-name "clutter_param_spec_color")
+  (return-type "GParamSpec*")
+  (parameters
+    '("const-gchar*" "name")
+    '("const-gchar*" "nick")
+    '("const-gchar*" "blurb")
+    '("const-ClutterColor*" "default_value")
+    '("GParamFlags" "flags")
+  )
 )
 
+(define-function clutter_color_get_static
+  (c-name "clutter_color_get_static")
+  (return-type "const-ClutterColor*")
+  (parameters
+    '("ClutterStaticColor" "color")
+  )
+)
 
 
-;; From clutter-box.h
 
-(define-function clutter_box_get_type
-  (c-name "clutter_box_get_type")
+;; From clutter-colorize-effect.h
+
+(define-function clutter_colorize_effect_get_type
+  (c-name "clutter_colorize_effect_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_box_new
-  (c-name "clutter_box_new")
-  (is-constructor-of "ClutterBox")
-  (return-type "ClutterActor*")
+(define-method ize_effect_new
+  (of-object "ClutterColor")
+  (c-name "clutter_colorize_effect_new")
+  (return-type "ClutterEffect*")
+)
+
+(define-method set_tint
+  (of-object "ClutterColorizeEffect")
+  (c-name "clutter_colorize_effect_set_tint")
+  (return-type "none")
   (parameters
-    '("ClutterLayoutManager*" "manager")
+    '("const-ClutterColor*" "tint")
   )
 )
 
-(define-method set_layout_manager
-  (of-object "ClutterBox")
-  (c-name "clutter_box_set_layout_manager")
+(define-method get_tint
+  (of-object "ClutterColorizeEffect")
+  (c-name "clutter_colorize_effect_get_tint")
   (return-type "none")
   (parameters
-    '("ClutterLayoutManager*" "manager")
+    '("ClutterColor*" "tint")
   )
 )
 
-(define-method get_layout_manager
-  (of-object "ClutterBox")
-  (c-name "clutter_box_get_layout_manager")
-  (return-type "ClutterLayoutManager*")
+
+
+;; From clutter-color-static.h
+
+
+
+;; From clutter-config.h
+
+
+
+;; From clutter-constraint.h
+
+(define-function clutter_constraint_get_type
+  (c-name "clutter_constraint_get_type")
+  (return-type "GType")
 )
 
-(define-method set_color
-  (of-object "ClutterBox")
-  (c-name "clutter_box_set_color")
+(define-method add_constraint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_constraint")
   (return-type "none")
   (parameters
-    '("const-ClutterColor*" "color")
   )
 )
 
-(define-method get_color
-  (of-object "ClutterBox")
-  (c-name "clutter_box_get_color")
+(define-method add_constraint_with_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_constraint_with_name")
   (return-type "none")
   (parameters
-    '("ClutterColor*" "color")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method pack
-  (of-object "ClutterBox")
-  (c-name "clutter_box_pack")
+(define-method remove_constraint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_constraint")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
-    '("const-gchar*" "first_property")
   )
-  (varargs #t)
 )
 
-(define-method packv
-  (of-object "ClutterBox")
-  (c-name "clutter_box_packv")
+(define-method remove_constraint_by_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_constraint_by_name")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
-    '("guint" "n_properties")
-    '("const-gchar*-const[]" "properties")
-    '("const-GValue*" "values")
+    '("const-gchar*" "name")
   )
 )
 
-(define-method pack_after
-  (of-object "ClutterBox")
-  (c-name "clutter_box_pack_after")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
-    '("const-gchar*" "first_property")
-  )
-  (varargs #t)
+(define-method get_constraints
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_constraints")
+  (return-type "GList*")
 )
 
-(define-method pack_before
-  (of-object "ClutterBox")
-  (c-name "clutter_box_pack_before")
-  (return-type "none")
+(define-method get_constraint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_get_constraint")
+  (return-type "ClutterConstraint*")
   (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
-    '("const-gchar*" "first_property")
+    '("const-gchar*" "name")
   )
-  (varargs #t)
 )
 
-(define-method pack_at
-  (of-object "ClutterBox")
-  (c-name "clutter_box_pack_at")
+(define-method clear_constraints
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_clear_constraints")
   (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("gint" "position")
-    '("const-gchar*" "first_property")
-  )
-  (varargs #t)
 )
 
+(define-method has_constraints
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_has_constraints")
+  (return-type "gboolean")
+)
 
 
-;; From clutter-box-layout.h
 
-(define-function clutter_box_layout_get_type
-  (c-name "clutter_box_layout_get_type")
-  (return-type "GType")
-)
+;; From clutter-container.h
 
-(define-function clutter_box_layout_new
-  (c-name "clutter_box_layout_new")
-  (is-constructor-of "ClutterBoxLayout")
-  (return-type "ClutterLayoutManager*")
+(define-function clutter_container_get_type
+  (c-name "clutter_container_get_type")
+  (return-type "GType")
 )
 
-(define-method set_spacing
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_spacing")
-  (return-type "none")
+(define-function clutter_container_class_find_child_property
+  (c-name "clutter_container_class_find_child_property")
+  (return-type "GParamSpec*")
   (parameters
-    '("guint" "spacing")
+    '("GObjectClass*" "klass")
+    '("const-gchar*" "property_name")
   )
 )
 
-(define-method get_spacing
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_spacing")
-  (return-type "guint")
+(define-function clutter_container_class_list_child_properties
+  (c-name "clutter_container_class_list_child_properties")
+  (return-type "GParamSpec**")
+  (parameters
+    '("GObjectClass*" "klass")
+    '("guint*" "n_properties")
+  )
 )
 
-(define-method set_vertical
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_vertical")
+(define-method create_child_meta
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_create_child_meta")
   (return-type "none")
   (parameters
-    '("gboolean" "vertical")
+    '("ClutterActor*" "actor")
   )
 )
 
-(define-method get_vertical
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_vertical")
-  (return-type "gboolean")
+(define-method destroy_child_meta
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_destroy_child_meta")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-method set_homogeneous
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_homogeneous")
-  (return-type "none")
+(define-method get_child_meta
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_get_child_meta")
+  (return-type "ClutterChildMeta*")
   (parameters
-    '("gboolean" "homogeneous")
+    '("ClutterActor*" "actor")
   )
 )
 
-(define-method get_homogeneous
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_homogeneous")
-  (return-type "gboolean")
-)
-
-(define-method set_pack_start
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_pack_start")
+(define-method child_set_property
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_child_set_property")
   (return-type "none")
   (parameters
-    '("gboolean" "pack_start")
+    '("ClutterActor*" "child")
+    '("const-gchar*" "property")
+    '("const-GValue*" "value")
   )
 )
 
-(define-method get_pack_start
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_pack_start")
-  (return-type "gboolean")
-)
-
-(define-method pack
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_pack")
+(define-method child_get_property
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_child_get_property")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
-    '("gboolean" "expand")
-    '("gboolean" "x_fill")
-    '("gboolean" "y_fill")
-    '("ClutterBoxAlignment" "x_align")
-    '("ClutterBoxAlignment" "y_align")
+    '("ClutterActor*" "child")
+    '("const-gchar*" "property")
+    '("GValue*" "value")
   )
 )
 
-(define-method set_alignment
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_alignment")
+(define-method child_set
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_child_set")
   (return-type "none")
   (parameters
     '("ClutterActor*" "actor")
-    '("ClutterBoxAlignment" "x_align")
-    '("ClutterBoxAlignment" "y_align")
+    '("const-gchar*" "first_prop")
   )
+  (varargs #t)
 )
 
-(define-method get_alignment
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_alignment")
+(define-method child_get
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_child_get")
   (return-type "none")
   (parameters
     '("ClutterActor*" "actor")
-    '("ClutterBoxAlignment*" "x_align")
-    '("ClutterBoxAlignment*" "y_align")
+    '("const-gchar*" "first_prop")
   )
+  (varargs #t)
 )
 
-(define-method set_fill
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_fill")
+(define-method child_notify
+  (of-object "ClutterContainer")
+  (c-name "clutter_container_child_notify")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
-    '("gboolean" "x_fill")
-    '("gboolean" "y_fill")
+    '("ClutterActor*" "child")
+    '("GParamSpec*" "pspec")
   )
 )
 
-(define-method get_fill
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_fill")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("gboolean*" "x_fill")
-    '("gboolean*" "y_fill")
-  )
-)
 
-(define-method set_expand
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_expand")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("gboolean" "expand")
-  )
+
+;; From clutter-content.h
+
+(define-function clutter_content_get_type
+  (c-name "clutter_content_get_type")
+  (return-type "GType")
 )
 
-(define-method get_expand
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_expand")
+(define-method get_preferred_size
+  (of-object "ClutterContent")
+  (c-name "clutter_content_get_preferred_size")
   (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "actor")
+    '("gfloat*" "width")
+    '("gfloat*" "height")
   )
 )
 
-(define-method set_use_animations
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_use_animations")
+(define-method invalidate
+  (of-object "ClutterContent")
+  (c-name "clutter_content_invalidate")
   (return-type "none")
-  (parameters
-    '("gboolean" "animate")
-  )
 )
 
-(define-method get_use_animations
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_use_animations")
-  (return-type "gboolean")
-)
 
-(define-method set_easing_mode
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_easing_mode")
-  (return-type "none")
-  (parameters
-    '("gulong" "mode")
-  )
-)
 
-(define-method get_easing_mode
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_easing_mode")
-  (return-type "gulong")
-)
+;; From clutter-content-private.h
 
-(define-method set_easing_duration
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_set_easing_duration")
-  (return-type "none")
-  (parameters
-    '("guint" "msecs")
-  )
-)
 
-(define-method get_easing_duration
-  (of-object "ClutterBoxLayout")
-  (c-name "clutter_box_layout_get_easing_duration")
-  (return-type "guint")
-)
 
+;; From clutter-debug.h
 
 
-;; From clutter-cairo-texture.h
 
-(define-function clutter_cairo_texture_get_type
-  (c-name "clutter_cairo_texture_get_type")
-  (return-type "GType")
-)
+;; From clutter-deform-effect.h
 
-(define-function clutter_cairo_texture_new
-  (c-name "clutter_cairo_texture_new")
-  (is-constructor-of "ClutterCairoTexture")
-  (return-type "ClutterActor*")
-  (parameters
-    '("guint" "width")
-    '("guint" "height")
-  )
+(define-function clutter_deform_effect_get_type
+  (c-name "clutter_deform_effect_get_type")
+  (return-type "GType")
 )
 
-(define-method create_region
-  (of-object "ClutterCairoTexture")
-  (c-name "clutter_cairo_texture_create_region")
-  (return-type "cairo_t*")
+(define-method set_back_material
+  (of-object "ClutterDeformEffect")
+  (c-name "clutter_deform_effect_set_back_material")
+  (return-type "none")
   (parameters
-    '("gint" "x_offset")
-    '("gint" "y_offset")
-    '("gint" "width")
-    '("gint" "height")
+    '("CoglHandle" "material")
   )
 )
 
-(define-method create
-  (of-object "ClutterCairoTexture")
-  (c-name "clutter_cairo_texture_create")
-  (return-type "cairo_t*")
+(define-method get_back_material
+  (of-object "ClutterDeformEffect")
+  (c-name "clutter_deform_effect_get_back_material")
+  (return-type "CoglHandle")
 )
 
-(define-method set_surface_size
-  (of-object "ClutterCairoTexture")
-  (c-name "clutter_cairo_texture_set_surface_size")
+(define-method set_n_tiles
+  (of-object "ClutterDeformEffect")
+  (c-name "clutter_deform_effect_set_n_tiles")
   (return-type "none")
   (parameters
-    '("guint" "width")
-    '("guint" "height")
+    '("guint" "x_tiles")
+    '("guint" "y_tiles")
   )
 )
 
-(define-method get_surface_size
-  (of-object "ClutterCairoTexture")
-  (c-name "clutter_cairo_texture_get_surface_size")
+(define-method get_n_tiles
+  (of-object "ClutterDeformEffect")
+  (c-name "clutter_deform_effect_get_n_tiles")
   (return-type "none")
   (parameters
-    '("guint*" "width")
-    '("guint*" "height")
+    '("guint*" "x_tiles")
+    '("guint*" "y_tiles")
   )
 )
 
-(define-method clear
-  (of-object "ClutterCairoTexture")
-  (c-name "clutter_cairo_texture_clear")
+(define-method invalidate
+  (of-object "ClutterDeformEffect")
+  (c-name "clutter_deform_effect_invalidate")
   (return-type "none")
 )
 
-(define-function clutter_cairo_set_source_color
-  (c-name "clutter_cairo_set_source_color")
-  (return-type "none")
-  (parameters
-    '("cairo_t*" "cr")
-    '("const-ClutterColor*" "color")
-  )
-)
 
 
+;; From clutter-deprecated.h
 
-;; From clutter-child-meta.h
 
-(define-function clutter_child_meta_get_type
-  (c-name "clutter_child_meta_get_type")
+
+;; From clutter-desaturate-effect.h
+
+(define-function clutter_desaturate_effect_get_type
+  (c-name "clutter_desaturate_effect_get_type")
   (return-type "GType")
 )
 
-(define-method get_container
-  (of-object "ClutterChildMeta")
-  (c-name "clutter_child_meta_get_container")
-  (return-type "ClutterContainer*")
+(define-function clutter_desaturate_effect_new
+  (c-name "clutter_desaturate_effect_new")
+  (is-constructor-of "ClutterDesaturateEffect")
+  (return-type "ClutterEffect*")
+  (parameters
+    '("gdouble" "factor")
+  )
 )
 
-(define-method get_actor
-  (of-object "ClutterChildMeta")
-  (c-name "clutter_child_meta_get_actor")
-  (return-type "ClutterActor*")
+(define-method set_factor
+  (of-object "ClutterDesaturateEffect")
+  (c-name "clutter_desaturate_effect_set_factor")
+  (return-type "none")
+  (parameters
+    '("gdouble" "factor")
+  )
 )
 
+(define-method get_factor
+  (of-object "ClutterDesaturateEffect")
+  (c-name "clutter_desaturate_effect_get_factor")
+  (return-type "gdouble")
+)
 
 
-;; From clutter-click-action.h
 
-(define-function clutter_click_action_get_type
-  (c-name "clutter_click_action_get_type")
+;; From clutter-device-manager.h
+
+(define-function clutter_device_manager_get_type
+  (c-name "clutter_device_manager_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_click_action_new
-  (c-name "clutter_click_action_new")
-  (is-constructor-of "ClutterClickAction")
-  (return-type "ClutterAction*")
+(define-function clutter_device_manager_get_default
+  (c-name "clutter_device_manager_get_default")
+  (return-type "ClutterDeviceManager*")
 )
 
+(define-method list_devices
+  (of-object "ClutterDeviceManager")
+  (c-name "clutter_device_manager_list_devices")
+  (return-type "GSList*")
+)
 
-
-;; From clutter-clone.h
-
-(define-function clutter_clone_get_type
-  (c-name "clutter_clone_get_type")
-  (return-type "GType")
+(define-method peek_devices
+  (of-object "ClutterDeviceManager")
+  (c-name "clutter_device_manager_peek_devices")
+  (return-type "const-GSList*")
 )
 
-(define-function clutter_clone_new
-  (c-name "clutter_clone_new")
-  (is-constructor-of "ClutterClone")
-  (return-type "ClutterActor*")
+(define-method get_device
+  (of-object "ClutterDeviceManager")
+  (c-name "clutter_device_manager_get_device")
+  (return-type "ClutterInputDevice*")
   (parameters
-    '("ClutterActor*" "source")
+    '("gint" "device_id")
   )
 )
 
-(define-method set_source
-  (of-object "ClutterClone")
-  (c-name "clutter_clone_set_source")
-  (return-type "none")
+(define-method get_core_device
+  (of-object "ClutterDeviceManager")
+  (c-name "clutter_device_manager_get_core_device")
+  (return-type "ClutterInputDevice*")
   (parameters
-    '("ClutterActor*" "source")
+    '("ClutterInputDeviceType" "device_type")
   )
 )
 
-(define-method get_source
-  (of-object "ClutterClone")
-  (c-name "clutter_clone_get_source")
-  (return-type "ClutterActor*")
-)
 
 
+;; From clutter-device-manager-private.h
 
-;; From clutter-color.h
 
-(define-function clutter_color_get_type
-  (c-name "clutter_color_get_type")
-  (return-type "GType")
-)
 
-(define-function clutter_color_new
-  (c-name "clutter_color_new")
-  (is-constructor-of "ClutterColor")
-  (return-type "ClutterColor*")
-  (parameters
-    '("guint8" "red")
-    '("guint8" "green")
-    '("guint8" "blue")
-    '("guint8" "alpha")
-  )
+;; From clutter-drag-action.h
+
+(define-function clutter_drag_action_get_type
+  (c-name "clutter_drag_action_get_type")
+  (return-type "GType")
 )
 
-(define-method copy
-  (of-object "ClutterColor")
-  (c-name "clutter_color_copy")
-  (return-type "ClutterColor*")
-)
-
-(define-method free
-  (of-object "ClutterColor")
-  (c-name "clutter_color_free")
-  (return-type "none")
+(define-function clutter_drag_action_new
+  (c-name "clutter_drag_action_new")
+  (is-constructor-of "ClutterDragAction")
+  (return-type "ClutterAction*")
 )
 
-(define-method add
-  (of-object "ClutterColor")
-  (c-name "clutter_color_add")
+(define-method set_drag_threshold
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_set_drag_threshold")
   (return-type "none")
   (parameters
-    '("const-ClutterColor*" "b")
-    '("ClutterColor*" "result")
+    '("gint" "x_threshold")
+    '("gint" "y_threshold")
   )
 )
 
-(define-method subtract
-  (of-object "ClutterColor")
-  (c-name "clutter_color_subtract")
+(define-method get_drag_threshold
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_drag_threshold")
   (return-type "none")
   (parameters
-    '("const-ClutterColor*" "b")
-    '("ClutterColor*" "result")
+    '("guint*" "x_threshold")
+    '("guint*" "y_threshold")
   )
 )
 
-(define-method lighten
-  (of-object "ClutterColor")
-  (c-name "clutter_color_lighten")
+(define-method set_drag_handle
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_set_drag_handle")
   (return-type "none")
   (parameters
-    '("ClutterColor*" "result")
+    '("ClutterActor*" "handle")
   )
 )
 
-(define-method darken
-  (of-object "ClutterColor")
-  (c-name "clutter_color_darken")
-  (return-type "none")
-  (parameters
-    '("ClutterColor*" "result")
-  )
+(define-method get_drag_handle
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_drag_handle")
+  (return-type "ClutterActor*")
 )
 
-(define-method shade
-  (of-object "ClutterColor")
-  (c-name "clutter_color_shade")
+(define-method set_drag_axis
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_set_drag_axis")
   (return-type "none")
   (parameters
-    '("gdouble" "factor")
-    '("ClutterColor*" "result")
-  )
-)
-
-(define-method to_string
-  (of-object "ClutterColor")
-  (c-name "clutter_color_to_string")
-  (return-type "gchar*")
-)
-
-(define-method from_string
-  (of-object "ClutterColor")
-  (c-name "clutter_color_from_string")
-  (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "str")
+    '("ClutterDragAxis" "axis")
   )
 )
 
-(define-method to_hls
-  (of-object "ClutterColor")
-  (c-name "clutter_color_to_hls")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "hue")
-    '("gfloat*" "luminance")
-    '("gfloat*" "saturation")
-  )
+(define-method get_drag_axis
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_drag_axis")
+  (return-type "ClutterDragAxis")
 )
 
-(define-method from_hls
-  (of-object "ClutterColor")
-  (c-name "clutter_color_from_hls")
+(define-method get_press_coords
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_press_coords")
   (return-type "none")
   (parameters
-    '("gfloat" "hue")
-    '("gfloat" "luminance")
-    '("gfloat" "saturation")
+    '("gfloat*" "press_x")
+    '("gfloat*" "press_y")
   )
 )
 
-(define-method to_pixel
-  (of-object "ClutterColor")
-  (c-name "clutter_color_to_pixel")
-  (return-type "guint32")
-)
-
-(define-method from_pixel
-  (of-object "ClutterColor")
-  (c-name "clutter_color_from_pixel")
+(define-method get_motion_coords
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_motion_coords")
   (return-type "none")
   (parameters
-    '("guint32" "pixel")
-  )
-)
-
-(define-function clutter_color_hash
-  (c-name "clutter_color_hash")
-  (return-type "guint")
-  (parameters
-    '("gconstpointer" "v")
+    '("gfloat*" "motion_x")
+    '("gfloat*" "motion_y")
   )
 )
 
-(define-function clutter_color_equal
-  (c-name "clutter_color_equal")
+(define-method get_drag_area
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_get_drag_area")
   (return-type "gboolean")
   (parameters
-    '("gconstpointer" "v1")
-    '("gconstpointer" "v2")
+    '("ClutterRect*" "drag_area")
   )
 )
 
-(define-function clutter_value_set_color
-  (c-name "clutter_value_set_color")
+(define-method set_drag_area
+  (of-object "ClutterDragAction")
+  (c-name "clutter_drag_action_set_drag_area")
   (return-type "none")
   (parameters
-    '("GValue*" "value")
-    '("const-ClutterColor*" "color")
-  )
-)
-
-(define-function clutter_value_get_color
-  (c-name "clutter_value_get_color")
-  (return-type "const-ClutterColor*")
-  (parameters
-    '("const-GValue*" "value")
-  )
-)
-
-(define-function clutter_param_color_get_type
-  (c-name "clutter_param_color_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_param_spec_color
-  (c-name "clutter_param_spec_color")
-  (return-type "GParamSpec*")
-  (parameters
-    '("const-gchar*" "name")
-    '("const-gchar*" "nick")
-    '("const-gchar*" "blurb")
-    '("const-ClutterColor*" "default_value")
-    '("GParamFlags" "flags")
+    '("const-ClutterRect*" "drag_area")
   )
 )
 
 
 
-;; From clutter-colorize-effect.h
+;; From clutter-drop-action.h
 
-(define-function clutter_colorize_effect_get_type
-  (c-name "clutter_colorize_effect_get_type")
+(define-function clutter_drop_action_get_type
+  (c-name "clutter_drop_action_get_type")
   (return-type "GType")
 )
 
-(define-method ize_effect_new
-  (of-object "ClutterColor")
-  (c-name "clutter_colorize_effect_new")
-  (return-type "ClutterEffect*")
+(define-function clutter_drop_action_new
+  (c-name "clutter_drop_action_new")
+  (is-constructor-of "ClutterDropAction")
+  (return-type "ClutterAction*")
 )
 
-(define-method set_tint
-  (of-object "ClutterColorizeEffect")
-  (c-name "clutter_colorize_effect_set_tint")
-  (return-type "none")
-  (parameters
-    '("const-ClutterColor*" "tint")
-  )
-)
 
-(define-method get_tint
-  (of-object "ClutterColorizeEffect")
-  (c-name "clutter_colorize_effect_get_tint")
-  (return-type "none")
-  (parameters
-    '("ClutterColor*" "tint")
-  )
-)
 
+;; From clutter-easing.h
 
 
-;; From clutter-constraint.h
 
-(define-function clutter_constraint_get_type
-  (c-name "clutter_constraint_get_type")
+;; From clutter-effect.h
+
+(define-function clutter_effect_get_type
+  (c-name "clutter_effect_get_type")
   (return-type "GType")
 )
 
-(define-method add_constraint
+(define-method queue_repaint
+  (of-object "ClutterEffect")
+  (c-name "clutter_effect_queue_repaint")
+  (return-type "none")
+)
+
+(define-method add_effect
   (of-object "ClutterActor")
-  (c-name "clutter_actor_add_constraint")
+  (c-name "clutter_actor_add_effect")
   (return-type "none")
   (parameters
-    '("ClutterConstraint*" "constraint")
+    '("ClutterEffect*" "effect")
   )
 )
 
-(define-method add_constraint_with_name
+(define-method add_effect_with_name
   (of-object "ClutterActor")
-  (c-name "clutter_actor_add_constraint_with_name")
+  (c-name "clutter_actor_add_effect_with_name")
   (return-type "none")
   (parameters
     '("const-gchar*" "name")
-    '("ClutterConstraint*" "constraint")
+    '("ClutterEffect*" "effect")
   )
 )
 
-(define-method remove_constraint
+(define-method remove_effect
   (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_constraint")
+  (c-name "clutter_actor_remove_effect")
   (return-type "none")
   (parameters
-    '("ClutterConstraint*" "constraint")
+    '("ClutterEffect*" "effect")
   )
 )
 
-(define-method remove_constraint_by_name
+(define-method remove_effect_by_name
   (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_constraint_by_name")
+  (c-name "clutter_actor_remove_effect_by_name")
   (return-type "none")
   (parameters
     '("const-gchar*" "name")
   )
 )
 
-(define-method get_constraints
+(define-method get_effects
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_constraints")
+  (c-name "clutter_actor_get_effects")
   (return-type "GList*")
 )
 
-(define-method get_constraint
+(define-method get_effect
   (of-object "ClutterActor")
-  (c-name "clutter_actor_get_constraint")
-  (return-type "ClutterConstraint*")
+  (c-name "clutter_actor_get_effect")
+  (return-type "ClutterEffect*")
   (parameters
     '("const-gchar*" "name")
   )
 )
 
-(define-method clear_constraints
+(define-method clear_effects
   (of-object "ClutterActor")
-  (c-name "clutter_actor_clear_constraints")
+  (c-name "clutter_actor_clear_effects")
   (return-type "none")
 )
 
+(define-method has_effects
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_has_effects")
+  (return-type "gboolean")
+)
+
 
 
-;; From clutter-container.h
+;; From clutter-effect-private.h
 
-(define-function clutter_container_get_type
-  (c-name "clutter_container_get_type")
+
+
+;; From clutter-enums.h
+
+
+
+;; From clutter-enum-types.h
+
+(define-function clutter_rotate_axis_get_type
+  (c-name "clutter_rotate_axis_get_type")
   (return-type "GType")
 )
 
-(define-method add
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_add")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "first_actor")
-  )
-  (varargs #t)
+(define-function clutter_request_mode_get_type
+  (c-name "clutter_request_mode_get_type")
+  (return-type "GType")
 )
 
-(define-method add_actor
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_add_actor")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
+(define-function clutter_animation_mode_get_type
+  (c-name "clutter_animation_mode_get_type")
+  (return-type "GType")
 )
 
-(define-method add_valist
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_add_valist")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "first_actor")
-    '("va_list" "var_args")
-  )
-)
-
-(define-method remove
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_remove")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "first_actor")
-  )
-  (varargs #t)
-)
-
-(define-method remove_actor
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_remove_actor")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
-)
-
-(define-method remove_valist
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_remove_valist")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "first_actor")
-    '("va_list" "var_args")
-  )
-)
-
-(define-method get_children
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_get_children")
-  (return-type "GList*")
-)
-
-(define-method foreach
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_foreach")
-  (return-type "none")
-  (parameters
-    '("ClutterCallback" "callback")
-    '("gpointer" "user_data")
-  )
-)
-
-(define-method foreach_with_internals
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_foreach_with_internals")
-  (return-type "none")
-  (parameters
-    '("ClutterCallback" "callback")
-    '("gpointer" "user_data")
-  )
-)
-
-(define-method find_child_by_name
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_find_child_by_name")
-  (return-type "ClutterActor*")
-  (parameters
-    '("const-gchar*" "child_name")
-  )
-)
-
-(define-method raise_child
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_raise_child")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
-  )
-)
-
-(define-method lower_child
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_lower_child")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
-  )
-)
-
-(define-method sort_depth_order
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_sort_depth_order")
-  (return-type "none")
-)
-
-(define-function clutter_container_class_find_child_property
-  (c-name "clutter_container_class_find_child_property")
-  (return-type "GParamSpec*")
-  (parameters
-    '("GObjectClass*" "klass")
-    '("const-gchar*" "property_name")
-  )
-)
-
-(define-function clutter_container_class_list_child_properties
-  (c-name "clutter_container_class_list_child_properties")
-  (return-type "GParamSpec**")
-  (parameters
-    '("GObjectClass*" "klass")
-    '("guint*" "n_properties")
-  )
-)
-
-(define-method create_child_meta
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_create_child_meta")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
-)
-
-(define-method destroy_child_meta
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_destroy_child_meta")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
-)
-
-(define-method get_child_meta
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_get_child_meta")
-  (return-type "ClutterChildMeta*")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
-)
-
-(define-method child_set_property
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_child_set_property")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "child")
-    '("const-gchar*" "property")
-    '("const-GValue*" "value")
-  )
-)
-
-(define-method child_get_property
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_child_get_property")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "child")
-    '("const-gchar*" "property")
-    '("GValue*" "value")
-  )
-)
-
-(define-method child_set
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_child_set")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("const-gchar*" "first_prop")
-  )
-  (varargs #t)
-)
-
-(define-method child_get
-  (of-object "ClutterContainer")
-  (c-name "clutter_container_child_get")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "actor")
-    '("const-gchar*" "first_prop")
-  )
-  (varargs #t)
-)
-
-
-
-;; From clutter-deform-effect.h
-
-(define-function clutter_deform_effect_get_type
-  (c-name "clutter_deform_effect_get_type")
-  (return-type "GType")
-)
-
-(define-method set_back_material
-  (of-object "ClutterDeformEffect")
-  (c-name "clutter_deform_effect_set_back_material")
-  (return-type "none")
-  (parameters
-    '("CoglHandle" "material")
-  )
-)
-
-(define-method get_back_material
-  (of-object "ClutterDeformEffect")
-  (c-name "clutter_deform_effect_get_back_material")
-  (return-type "CoglHandle")
-)
-
-(define-method set_n_tiles
-  (of-object "ClutterDeformEffect")
-  (c-name "clutter_deform_effect_set_n_tiles")
-  (return-type "none")
-  (parameters
-    '("guint" "x_tiles")
-    '("guint" "y_tiles")
-  )
-)
-
-(define-method get_n_tiles
-  (of-object "ClutterDeformEffect")
-  (c-name "clutter_deform_effect_get_n_tiles")
-  (return-type "none")
-  (parameters
-    '("guint*" "x_tiles")
-    '("guint*" "y_tiles")
-  )
-)
-
-(define-method invalidate
-  (of-object "ClutterDeformEffect")
-  (c-name "clutter_deform_effect_invalidate")
-  (return-type "none")
-)
-
-
-
-;; From clutter-deprecated.h
-
-
-
-;; From clutter-desaturate-effect.h
-
-(define-function clutter_desaturate_effect_get_type
-  (c-name "clutter_desaturate_effect_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_desaturate_effect_new
-  (c-name "clutter_desaturate_effect_new")
-  (is-constructor-of "ClutterDesaturateEffect")
-  (return-type "ClutterEffect*")
-  (parameters
-    '("gdouble" "factor")
-  )
-)
-
-(define-method set_factor
-  (of-object "ClutterDesaturateEffect")
-  (c-name "clutter_desaturate_effect_set_factor")
-  (return-type "none")
-  (parameters
-    '("gdouble" "factor")
-  )
-)
-
-(define-method get_factor
-  (of-object "ClutterDesaturateEffect")
-  (c-name "clutter_desaturate_effect_get_factor")
-  (return-type "gdouble")
-)
-
-
-
-;; From clutter-device-manager.h
-
-(define-function clutter_device_manager_get_type
-  (c-name "clutter_device_manager_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_device_manager_get_default
-  (c-name "clutter_device_manager_get_default")
-  (return-type "ClutterDeviceManager*")
-)
-
-(define-method list_devices
-  (of-object "ClutterDeviceManager")
-  (c-name "clutter_device_manager_list_devices")
-  (return-type "GSList*")
-)
-
-(define-method peek_devices
-  (of-object "ClutterDeviceManager")
-  (c-name "clutter_device_manager_peek_devices")
-  (return-type "const-GSList*")
-)
-
-(define-method get_device
-  (of-object "ClutterDeviceManager")
-  (c-name "clutter_device_manager_get_device")
-  (return-type "ClutterInputDevice*")
-  (parameters
-    '("gint" "device_id")
-  )
-)
-
-(define-method get_core_device
-  (of-object "ClutterDeviceManager")
-  (c-name "clutter_device_manager_get_core_device")
-  (return-type "ClutterInputDevice*")
-  (parameters
-    '("ClutterInputDeviceType" "device_type")
-  )
-)
-
-
-
-;; From clutter-drag-action.h
-
-(define-function clutter_drag_action_get_type
-  (c-name "clutter_drag_action_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_drag_action_new
-  (c-name "clutter_drag_action_new")
-  (is-constructor-of "ClutterDragAction")
-  (return-type "ClutterAction*")
-)
-
-(define-method set_drag_threshold
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_set_drag_threshold")
-  (return-type "none")
-  (parameters
-    '("guint" "threshold")
-  )
-)
-
-(define-method get_drag_threshold
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_get_drag_threshold")
-  (return-type "guint")
-)
-
-(define-method set_drag_handle
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_set_drag_handle")
-  (return-type "none")
-  (parameters
-    '("ClutterActor*" "handle")
-  )
-)
-
-(define-method get_drag_handle
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_get_drag_handle")
-  (return-type "ClutterActor*")
-)
-
-(define-method set_drag_axis
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_set_drag_axis")
-  (return-type "none")
-  (parameters
-    '("ClutterDragAxis" "axis")
-  )
-)
-
-(define-method get_drag_axis
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_get_drag_axis")
-  (return-type "ClutterDragAxis")
-)
-
-(define-method get_press_coords
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_get_press_coords")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "press_x")
-    '("gfloat*" "press_y")
-  )
-)
-
-(define-method get_motion_coords
-  (of-object "ClutterDragAction")
-  (c-name "clutter_drag_action_get_motion_coords")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "motion_x")
-    '("gfloat*" "motion_y")
-  )
-)
-
-
-
-;; From clutter-effect.h
-
-(define-function clutter_effect_get_type
-  (c-name "clutter_effect_get_type")
-  (return-type "GType")
-)
-
-(define-method add_effect
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_add_effect")
-  (return-type "none")
-  (parameters
-    '("ClutterEffect*" "effect")
-  )
-)
-
-(define-method add_effect_with_name
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_add_effect_with_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "name")
-    '("ClutterEffect*" "effect")
-  )
-)
-
-(define-method remove_effect
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_effect")
-  (return-type "none")
-  (parameters
-    '("ClutterEffect*" "effect")
-  )
-)
-
-(define-method remove_effect_by_name
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_remove_effect_by_name")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "name")
-  )
-)
-
-(define-method get_effects
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_get_effects")
-  (return-type "GList*")
+(define-function clutter_text_direction_get_type
+  (c-name "clutter_text_direction_get_type")
+  (return-type "GType")
 )
 
-(define-method get_effect
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_get_effect")
-  (return-type "ClutterEffect*")
-  (parameters
-    '("const-gchar*" "name")
-  )
+(define-function clutter_shader_type_get_type
+  (c-name "clutter_shader_type_get_type")
+  (return-type "GType")
 )
 
-(define-method clear_effects
-  (of-object "ClutterActor")
-  (c-name "clutter_actor_clear_effects")
-  (return-type "none")
+(define-function clutter_modifier_type_get_type
+  (c-name "clutter_modifier_type_get_type")
+  (return-type "GType")
 )
 
-
-
-;; From clutter-enum-types.h
-
 (define-function clutter_actor_flags_get_type
   (c-name "clutter_actor_flags_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_allocation_flags_get_type
-  (c-name "clutter_allocation_flags_get_type")
+(define-function clutter_offscreen_redirect_get_type
+  (c-name "clutter_offscreen_redirect_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_redraw_flags_get_type
-  (c-name "clutter_redraw_flags_get_type")
+(define-function clutter_allocation_flags_get_type
+  (c-name "clutter_allocation_flags_get_type")
   (return-type "GType")
 )
 
@@ -4684,33 +4292,28 @@
   (return-type "GType")
 )
 
-(define-function clutter_interpolation_get_type
-  (c-name "clutter_interpolation_get_type")
-  (return-type "GType")
-)
-
 (define-function clutter_bind_coordinate_get_type
   (c-name "clutter_bind_coordinate_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_bin_alignment_get_type
-  (c-name "clutter_bin_alignment_get_type")
+(define-function clutter_effect_paint_flags_get_type
+  (c-name "clutter_effect_paint_flags_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_box_alignment_get_type
-  (c-name "clutter_box_alignment_get_type")
+(define-function clutter_long_press_state_get_type
+  (c-name "clutter_long_press_state_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_drag_axis_get_type
-  (c-name "clutter_drag_axis_get_type")
+(define-function clutter_static_color_get_type
+  (c-name "clutter_static_color_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_modifier_type_get_type
-  (c-name "clutter_modifier_type_get_type")
+(define-function clutter_drag_axis_get_type
+  (c-name "clutter_drag_axis_get_type")
   (return-type "GType")
 )
 
@@ -4749,93 +4352,123 @@
   (return-type "GType")
 )
 
-(define-function clutter_init_error_get_type
-  (c-name "clutter_init_error_get_type")
+(define-function clutter_input_mode_get_type
+  (c-name "clutter_input_mode_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_path_node_type_get_type
-  (c-name "clutter_path_node_type_get_type")
+(define-function clutter_input_axis_get_type
+  (c-name "clutter_input_axis_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_script_error_get_type
-  (c-name "clutter_script_error_get_type")
+(define-function clutter_snap_edge_get_type
+  (c-name "clutter_snap_edge_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_shader_error_get_type
-  (c-name "clutter_shader_error_get_type")
+(define-function clutter_pick_mode_get_type
+  (c-name "clutter_pick_mode_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_pick_mode_get_type
-  (c-name "clutter_pick_mode_get_type")
+(define-function clutter_swipe_direction_get_type
+  (c-name "clutter_swipe_direction_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_texture_error_get_type
-  (c-name "clutter_texture_error_get_type")
+(define-function clutter_pan_axis_get_type
+  (c-name "clutter_pan_axis_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_texture_flags_get_type
-  (c-name "clutter_texture_flags_get_type")
+(define-function clutter_timeline_direction_get_type
+  (c-name "clutter_timeline_direction_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_texture_quality_get_type
-  (c-name "clutter_texture_quality_get_type")
+(define-function clutter_unit_type_get_type
+  (c-name "clutter_unit_type_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_timeline_direction_get_type
-  (c-name "clutter_timeline_direction_get_type")
+(define-function clutter_path_node_type_get_type
+  (c-name "clutter_path_node_type_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_gravity_get_type
-  (c-name "clutter_gravity_get_type")
+(define-function clutter_actor_align_get_type
+  (c-name "clutter_actor_align_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_rotate_axis_get_type
-  (c-name "clutter_rotate_axis_get_type")
+(define-function clutter_repaint_flags_get_type
+  (c-name "clutter_repaint_flags_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_rotate_direction_get_type
-  (c-name "clutter_rotate_direction_get_type")
+(define-function clutter_content_gravity_get_type
+  (c-name "clutter_content_gravity_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_request_mode_get_type
-  (c-name "clutter_request_mode_get_type")
+(define-function clutter_scaling_filter_get_type
+  (c-name "clutter_scaling_filter_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_animation_mode_get_type
-  (c-name "clutter_animation_mode_get_type")
+(define-function clutter_orientation_get_type
+  (c-name "clutter_orientation_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_font_flags_get_type
-  (c-name "clutter_font_flags_get_type")
+(define-function clutter_scroll_mode_get_type
+  (c-name "clutter_scroll_mode_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_text_direction_get_type
-  (c-name "clutter_text_direction_get_type")
+(define-function clutter_grid_position_get_type
+  (c-name "clutter_grid_position_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_shader_type_get_type
-  (c-name "clutter_shader_type_get_type")
+(define-function clutter_content_repeat_get_type
+  (c-name "clutter_content_repeat_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_unit_type_get_type
-  (c-name "clutter_unit_type_get_type")
+(define-function clutter_step_mode_get_type
+  (c-name "clutter_step_mode_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_zoom_axis_get_type
+  (c-name "clutter_zoom_axis_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_image_error_get_type
+  (c-name "clutter_image_error_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_init_error_get_type
+  (c-name "clutter_init_error_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_script_error_get_type
+  (c-name "clutter_script_error_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_x11_filter_return_get_type
+  (c-name "clutter_x11_filter_return_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_x11_xinput_event_types_get_type
+  (c-name "clutter_x11_xinput_event_types_get_type")
   (return-type "GType")
 )
 
@@ -4896,54 +4529,133 @@
   (return-type "ClutterEventType")
 )
 
+(define-method set_flags
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_flags")
+  (return-type "none")
+  (parameters
+    '("ClutterEventFlags" "flags")
+  )
+)
+
 (define-method get_flags
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_flags")
   (return-type "ClutterEventFlags")
 )
 
+(define-method set_time
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_time")
+  (return-type "none")
+  (parameters
+    '("guint32" "time_")
+  )
+)
+
 (define-method get_time
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_time")
   (return-type "guint32")
 )
 
+(define-method set_state
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_state")
+  (return-type "none")
+  (parameters
+    '("ClutterModifierType" "state")
+  )
+)
+
 (define-method get_state
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_state")
   (return-type "ClutterModifierType")
 )
 
-(define-method get_device_id
+(define-method set_device
   (of-object "ClutterEvent")
-  (c-name "clutter_event_get_device_id")
-  (return-type "gint")
+  (c-name "clutter_event_set_device")
+  (return-type "none")
+  (parameters
+    '("ClutterInputDevice*" "device")
+  )
 )
 
-(define-method get_device_type
+(define-method get_device
   (of-object "ClutterEvent")
-  (c-name "clutter_event_get_device_type")
-  (return-type "ClutterInputDeviceType")
+  (c-name "clutter_event_get_device")
+  (return-type "ClutterInputDevice*")
 )
 
-(define-method get_device
+(define-method set_source_device
   (of-object "ClutterEvent")
-  (c-name "clutter_event_get_device")
+  (c-name "clutter_event_set_source_device")
+  (return-type "none")
+  (parameters
+    '("ClutterInputDevice*" "device")
+  )
+)
+
+(define-method get_source_device
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_source_device")
   (return-type "ClutterInputDevice*")
 )
 
+(define-method set_source
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_source")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+
 (define-method get_source
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_source")
   (return-type "ClutterActor*")
 )
 
+(define-method set_stage
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_stage")
+  (return-type "none")
+  (parameters
+    '("ClutterStage*" "stage")
+  )
+)
+
 (define-method get_stage
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_stage")
   (return-type "ClutterStage*")
 )
 
+(define-method get_device_id
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_device_id")
+  (return-type "gint")
+)
+
+(define-method get_device_type
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_device_type")
+  (return-type "ClutterInputDeviceType")
+)
+
+(define-method set_coords
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_coords")
+  (return-type "none")
+  (parameters
+    '("gfloat" "x")
+    '("gfloat" "y")
+  )
+)
+
 (define-method get_coords
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_coords")
@@ -4954,22 +4666,112 @@
   )
 )
 
+(define-method get_position
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_position")
+  (return-type "none")
+  (parameters
+    '("ClutterPoint*" "position")
+  )
+)
+
+(define-method get_distance
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_distance")
+  (return-type "float")
+  (parameters
+    '("const-ClutterEvent*" "target")
+  )
+)
+
+(define-method get_angle
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_angle")
+  (return-type "double")
+  (parameters
+    '("const-ClutterEvent*" "target")
+  )
+)
+
+(define-method get_axes
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_axes")
+  (return-type "gdouble*")
+  (parameters
+    '("guint*" "n_axes")
+  )
+)
+
+(define-method has_shift_modifier
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_has_shift_modifier")
+  (return-type "gboolean")
+)
+
+(define-method has_control_modifier
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_has_control_modifier")
+  (return-type "gboolean")
+)
+
+(define-method is_pointer_emulated
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_is_pointer_emulated")
+  (return-type "gboolean")
+)
+
+(define-method set_key_symbol
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_key_symbol")
+  (return-type "none")
+  (parameters
+    '("guint" "key_sym")
+  )
+)
+
 (define-method get_key_symbol
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_key_symbol")
   (return-type "guint")
 )
 
+(define-method set_key_code
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_key_code")
+  (return-type "none")
+  (parameters
+    '("guint16" "key_code")
+  )
+)
+
 (define-method get_key_code
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_key_code")
   (return-type "guint16")
 )
 
+(define-method set_key_unicode
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_key_unicode")
+  (return-type "none")
+  (parameters
+    '("gunichar" "key_unicode")
+  )
+)
+
 (define-method get_key_unicode
   (of-object "ClutterEvent")
   (c-name "clutter_event_get_key_unicode")
-  (return-type "guint32")
+  (return-type "gunichar")
+)
+
+(define-method set_button
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_button")
+  (return-type "none")
+  (parameters
+    '("guint32" "button")
+  )
 )
 
 (define-method get_button
@@ -4984,16 +4786,60 @@
   (return-type "guint")
 )
 
-(define-method get_related
+(define-method set_related
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_related")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-method get_related
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_related")
+  (return-type "ClutterActor*")
+)
+
+(define-method set_scroll_direction
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_scroll_direction")
+  (return-type "none")
+  (parameters
+    '("ClutterScrollDirection" "direction")
+  )
+)
+
+(define-method get_scroll_direction
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_get_scroll_direction")
+  (return-type "ClutterScrollDirection")
+)
+
+(define-method set_scroll_delta
+  (of-object "ClutterEvent")
+  (c-name "clutter_event_set_scroll_delta")
+  (return-type "none")
+  (parameters
+    '("gdouble" "dx")
+    '("gdouble" "dy")
+  )
+)
+
+(define-method get_scroll_delta
   (of-object "ClutterEvent")
-  (c-name "clutter_event_get_related")
-  (return-type "ClutterActor*")
+  (c-name "clutter_event_get_scroll_delta")
+  (return-type "none")
+  (parameters
+    '("gdouble*" "dx")
+    '("gdouble*" "dy")
+  )
 )
 
-(define-method get_scroll_direction
+(define-method get_event_sequence
   (of-object "ClutterEvent")
-  (c-name "clutter_event_get_scroll_direction")
-  (return-type "ClutterScrollDirection")
+  (c-name "clutter_event_get_event_sequence")
+  (return-type "ClutterEventSequence*")
 )
 
 (define-function clutter_keysym_to_unicode
@@ -5004,6 +4850,14 @@
   )
 )
 
+(define-function clutter_unicode_to_keysym
+  (c-name "clutter_unicode_to_keysym")
+  (return-type "guint")
+  (parameters
+    '("guint32" "wc")
+  )
+)
+
 (define-function clutter_get_current_event_time
   (c-name "clutter_get_current_event_time")
   (return-type "guint32")
@@ -5016,6 +4870,14 @@
 
 
 
+;; From clutter-event-private.h
+
+
+
+;; From clutter-event-translator.h
+
+
+
 ;; From clutter-feature.h
 
 (define-function clutter_feature_available
@@ -5033,46 +4895,6 @@
 
 
 
-;; From clutter-fixed.h
-
-(define-function clutter_param_fixed_get_type
-  (c-name "clutter_param_fixed_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_value_set_fixed
-  (c-name "clutter_value_set_fixed")
-  (return-type "none")
-  (parameters
-    '("GValue*" "value")
-    '("CoglFixed" "fixed_")
-  )
-)
-
-(define-function clutter_value_get_fixed
-  (c-name "clutter_value_get_fixed")
-  (return-type "CoglFixed")
-  (parameters
-    '("const-GValue*" "value")
-  )
-)
-
-(define-function clutter_param_spec_fixed
-  (c-name "clutter_param_spec_fixed")
-  (return-type "GParamSpec*")
-  (parameters
-    '("const-gchar*" "name")
-    '("const-gchar*" "nick")
-    '("const-gchar*" "blurb")
-    '("CoglFixed" "minimum")
-    '("CoglFixed" "maximum")
-    '("CoglFixed" "default_value")
-    '("GParamFlags" "flags")
-  )
-)
-
-
-
 ;; From clutter-fixed-layout.h
 
 (define-function clutter_fixed_layout_get_type
@@ -5088,6 +4910,10 @@
 
 
 
+;; From clutter-flatten-effect.h
+
+
+
 ;; From clutter-flow-layout.h
 
 (define-function clutter_flow_layout_get_type
@@ -5150,125 +4976,431 @@
 )
 
 (define-method set_row_spacing
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_set_row_spacing")
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_set_row_spacing")
+  (return-type "none")
+  (parameters
+    '("gfloat" "spacing")
+  )
+)
+
+(define-method get_row_spacing
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_get_row_spacing")
+  (return-type "gfloat")
+)
+
+(define-method set_column_width
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_set_column_width")
+  (return-type "none")
+  (parameters
+    '("gfloat" "min_width")
+    '("gfloat" "max_width")
+  )
+)
+
+(define-method get_column_width
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_get_column_width")
+  (return-type "none")
+  (parameters
+    '("gfloat*" "min_width")
+    '("gfloat*" "max_width")
+  )
+)
+
+(define-method set_row_height
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_set_row_height")
+  (return-type "none")
+  (parameters
+    '("gfloat" "min_height")
+    '("gfloat" "max_height")
+  )
+)
+
+(define-method get_row_height
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_get_row_height")
+  (return-type "none")
+  (parameters
+    '("gfloat*" "min_height")
+    '("gfloat*" "max_height")
+  )
+)
+
+(define-method set_snap_to_grid
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_set_snap_to_grid")
+  (return-type "none")
+  (parameters
+    '("gboolean" "snap_to_grid")
+  )
+)
+
+(define-method get_snap_to_grid
+  (of-object "ClutterFlowLayout")
+  (c-name "clutter_flow_layout_get_snap_to_grid")
+  (return-type "gboolean")
+)
+
+
+
+;; From clutter-gesture-action.h
+
+(define-function clutter_gesture_action_get_type
+  (c-name "clutter_gesture_action_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_gesture_action_new
+  (c-name "clutter_gesture_action_new")
+  (is-constructor-of "ClutterGestureAction")
+  (return-type "ClutterAction*")
+)
+
+(define-method get_n_touch_points
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_n_touch_points")
+  (return-type "gint")
+)
+
+(define-method set_n_touch_points
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_set_n_touch_points")
+  (return-type "none")
+  (parameters
+    '("gint" "nb_points")
+  )
+)
+
+(define-method get_press_coords
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_press_coords")
+  (return-type "none")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "press_x")
+    '("gfloat*" "press_y")
+  )
+)
+
+(define-method get_motion_coords
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_motion_coords")
+  (return-type "none")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "motion_x")
+    '("gfloat*" "motion_y")
+  )
+)
+
+(define-method get_motion_delta
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_motion_delta")
+  (return-type "gfloat")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "delta_x")
+    '("gfloat*" "delta_y")
+  )
+)
+
+(define-method get_release_coords
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_release_coords")
+  (return-type "none")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "release_x")
+    '("gfloat*" "release_y")
+  )
+)
+
+(define-method get_velocity
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_velocity")
+  (return-type "gfloat")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "velocity_x")
+    '("gfloat*" "velocity_y")
+  )
+)
+
+(define-method get_n_current_points
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_n_current_points")
+  (return-type "guint")
+)
+
+(define-method get_sequence
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_sequence")
+  (return-type "ClutterEventSequence*")
+  (parameters
+    '("guint" "point")
+  )
+)
+
+(define-method get_device
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_device")
+  (return-type "ClutterInputDevice*")
+  (parameters
+    '("guint" "point")
+  )
+)
+
+(define-method get_last_event
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_get_last_event")
+  (return-type "const-ClutterEvent*")
+  (parameters
+    '("guint" "point")
+  )
+)
+
+(define-method cancel
+  (of-object "ClutterGestureAction")
+  (c-name "clutter_gesture_action_cancel")
+  (return-type "none")
+)
+
+
+
+;; From clutter-gesture-action-private.h
+
+
+
+;; From clutter-grid-layout.h
+
+(define-function clutter_grid_layout_get_type
+  (c-name "clutter_grid_layout_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_grid_layout_new
+  (c-name "clutter_grid_layout_new")
+  (is-constructor-of "ClutterGridLayout")
+  (return-type "ClutterLayoutManager*")
+)
+
+(define-method attach
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_attach")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+    '("gint" "left")
+    '("gint" "top")
+    '("gint" "width")
+    '("gint" "height")
+  )
+)
+
+(define-method attach_next_to
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_attach_next_to")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "child")
+    '("ClutterActor*" "sibling")
+    '("ClutterGridPosition" "side")
+    '("gint" "width")
+    '("gint" "height")
+  )
+)
+
+(define-method get_child_at
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_child_at")
+  (return-type "ClutterActor*")
+  (parameters
+    '("gint" "left")
+    '("gint" "top")
+  )
+)
+
+(define-method insert_row
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_insert_row")
+  (return-type "none")
+  (parameters
+    '("gint" "position")
+  )
+)
+
+(define-method insert_column
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_insert_column")
+  (return-type "none")
+  (parameters
+    '("gint" "position")
+  )
+)
+
+(define-method insert_next_to
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_insert_next_to")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "sibling")
+    '("ClutterGridPosition" "side")
+  )
+)
+
+(define-method set_orientation
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_set_orientation")
+  (return-type "none")
+  (parameters
+    '("ClutterOrientation" "orientation")
+  )
+)
+
+(define-method get_orientation
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_orientation")
+  (return-type "ClutterOrientation")
+)
+
+(define-method set_column_spacing
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_set_column_spacing")
+  (return-type "none")
+  (parameters
+    '("guint" "spacing")
+  )
+)
+
+(define-method get_column_spacing
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_column_spacing")
+  (return-type "guint")
+)
+
+(define-method set_row_spacing
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_set_row_spacing")
   (return-type "none")
   (parameters
-    '("gfloat" "spacing")
+    '("guint" "spacing")
   )
 )
 
 (define-method get_row_spacing
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_get_row_spacing")
-  (return-type "gfloat")
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_row_spacing")
+  (return-type "guint")
 )
 
-(define-method set_column_width
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_set_column_width")
+(define-method set_column_homogeneous
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_set_column_homogeneous")
   (return-type "none")
   (parameters
-    '("gfloat" "min_width")
-    '("gfloat" "max_width")
+    '("gboolean" "homogeneous")
   )
 )
 
-(define-method get_column_width
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_get_column_width")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "min_width")
-    '("gfloat*" "max_width")
-  )
+(define-method get_column_homogeneous
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_column_homogeneous")
+  (return-type "gboolean")
 )
 
-(define-method set_row_height
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_set_row_height")
+(define-method set_row_homogeneous
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_set_row_homogeneous")
   (return-type "none")
   (parameters
-    '("gfloat" "min_height")
-    '("gfloat" "max_height")
+    '("gboolean" "homogeneous")
   )
 )
 
-(define-method get_row_height
-  (of-object "ClutterFlowLayout")
-  (c-name "clutter_flow_layout_get_row_height")
-  (return-type "none")
-  (parameters
-    '("gfloat*" "min_height")
-    '("gfloat*" "max_height")
-  )
+(define-method get_row_homogeneous
+  (of-object "ClutterGridLayout")
+  (c-name "clutter_grid_layout_get_row_homogeneous")
+  (return-type "gboolean")
 )
 
 
 
-;; From clutter-frame-source.h
+;; From clutter.h
 
-(define-function clutter_frame_source_add
-  (c-name "clutter_frame_source_add")
-  (return-type "guint")
-  (parameters
-    '("guint" "fps")
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-  )
-)
 
-(define-function clutter_frame_source_add_full
-  (c-name "clutter_frame_source_add_full")
-  (return-type "guint")
-  (parameters
-    '("gint" "priority")
-    '("guint" "fps")
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
-  )
-)
+
+;; From clutter-id-pool.h
 
 
 
-;; From clutter-group.h
+;; From clutter-image.h
 
-(define-function clutter_group_get_type
-  (c-name "clutter_group_get_type")
+(define-function clutter_image_error_quark
+  (c-name "clutter_image_error_quark")
+  (return-type "GQuark")
+)
+
+(define-function clutter_image_get_type
+  (c-name "clutter_image_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_group_new
-  (c-name "clutter_group_new")
-  (is-constructor-of "ClutterGroup")
-  (return-type "ClutterActor*")
+(define-function clutter_image_new
+  (c-name "clutter_image_new")
+  (is-constructor-of "ClutterImage")
+  (return-type "ClutterContent*")
 )
 
-(define-method get_nth_child
-  (of-object "ClutterGroup")
-  (c-name "clutter_group_get_nth_child")
-  (return-type "ClutterActor*")
+(define-method set_data
+  (of-object "ClutterImage")
+  (c-name "clutter_image_set_data")
+  (return-type "gboolean")
   (parameters
-    '("gint" "index_")
+    '("const-guint8*" "data")
+    '("CoglPixelFormat" "pixel_format")
+    '("guint" "width")
+    '("guint" "height")
+    '("guint" "row_stride")
+    '("GError**" "error")
   )
 )
 
-(define-method get_n_children
-  (of-object "ClutterGroup")
-  (c-name "clutter_group_get_n_children")
-  (return-type "gint")
+(define-method set_area
+  (of-object "ClutterImage")
+  (c-name "clutter_image_set_area")
+  (return-type "gboolean")
+  (parameters
+    '("const-guint8*" "data")
+    '("CoglPixelFormat" "pixel_format")
+    '("const-cairo_rectangle_int_t*" "rect")
+    '("guint" "row_stride")
+    '("GError**" "error")
+  )
 )
 
-(define-method remove_all
-  (of-object "ClutterGroup")
-  (c-name "clutter_group_remove_all")
-  (return-type "none")
+(define-method set_bytes
+  (of-object "ClutterImage")
+  (c-name "clutter_image_set_bytes")
+  (return-type "gboolean")
+  (parameters
+    '("GBytes*" "data")
+    '("CoglPixelFormat" "pixel_format")
+    '("guint" "width")
+    '("guint" "height")
+    '("guint" "row_stride")
+    '("GError**" "error")
+  )
 )
 
-
-
-;; From clutter.h
+(define-method get_texture
+  (of-object "ClutterImage")
+  (c-name "clutter_image_get_texture")
+  (return-type "CoglTexture*")
+)
 
 
 
@@ -5291,13 +5423,13 @@
   (return-type "gint")
 )
 
-(define-method get_device_coords
+(define-method get_coords
   (of-object "ClutterInputDevice")
-  (c-name "clutter_input_device_get_device_coords")
-  (return-type "none")
+  (c-name "clutter_input_device_get_coords")
+  (return-type "gboolean")
   (parameters
-    '("gint*" "x")
-    '("gint*" "y")
+    '("ClutterEventSequence*" "sequence")
+    '("ClutterPoint*" "point")
   )
 )
 
@@ -5319,6 +5451,99 @@
   (return-type "const-gchar*")
 )
 
+(define-method get_device_mode
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_device_mode")
+  (return-type "ClutterInputMode")
+)
+
+(define-method get_has_cursor
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_has_cursor")
+  (return-type "gboolean")
+)
+
+(define-method set_enabled
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_set_enabled")
+  (return-type "none")
+  (parameters
+    '("gboolean" "enabled")
+  )
+)
+
+(define-method get_enabled
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_enabled")
+  (return-type "gboolean")
+)
+
+(define-method get_n_axes
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_n_axes")
+  (return-type "guint")
+)
+
+(define-method get_axis
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_axis")
+  (return-type "ClutterInputAxis")
+  (parameters
+    '("guint" "index_")
+  )
+)
+
+(define-method get_axis_value
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_axis_value")
+  (return-type "gboolean")
+  (parameters
+    '("gdouble*" "axes")
+    '("ClutterInputAxis" "axis")
+    '("gdouble*" "value")
+  )
+)
+
+(define-method get_n_keys
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_n_keys")
+  (return-type "guint")
+)
+
+(define-method set_key
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_set_key")
+  (return-type "none")
+  (parameters
+    '("guint" "index_")
+    '("guint" "keyval")
+    '("ClutterModifierType" "modifiers")
+  )
+)
+
+(define-method get_key
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_key")
+  (return-type "gboolean")
+  (parameters
+    '("guint" "index_")
+    '("guint*" "keyval")
+    '("ClutterModifierType*" "modifiers")
+  )
+)
+
+(define-method get_associated_device
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_associated_device")
+  (return-type "ClutterInputDevice*")
+)
+
+(define-method get_slave_devices
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_slave_devices")
+  (return-type "GList*")
+)
+
 (define-method update_from_event
   (of-object "ClutterInputDevice")
   (c-name "clutter_input_device_update_from_event")
@@ -5329,6 +5554,65 @@
   )
 )
 
+(define-method grab
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_grab")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-method ungrab
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_ungrab")
+  (return-type "none")
+)
+
+(define-method get_grabbed_actor
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_get_grabbed_actor")
+  (return-type "ClutterActor*")
+)
+
+(define-method sequence_grab
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_sequence_grab")
+  (return-type "none")
+  (parameters
+    '("ClutterEventSequence*" "sequence")
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-method sequence_ungrab
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_sequence_ungrab")
+  (return-type "none")
+  (parameters
+    '("ClutterEventSequence*" "sequence")
+  )
+)
+
+(define-method sequence_get_grabbed_actor
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_sequence_get_grabbed_actor")
+  (return-type "ClutterActor*")
+  (parameters
+    '("ClutterEventSequence*" "sequence")
+  )
+)
+
+(define-method keycode_to_evdev
+  (of-object "ClutterInputDevice")
+  (c-name "clutter_input_device_keycode_to_evdev")
+  (return-type "gboolean")
+  (parameters
+    '("guint" "hardware_keycode")
+    '("guint*" "evdev_keycode")
+  )
+)
+
 
 
 ;; From clutter-interval.h
@@ -5370,6 +5654,15 @@
   (return-type "GType")
 )
 
+(define-method set_initial
+  (of-object "ClutterInterval")
+  (c-name "clutter_interval_set_initial")
+  (return-type "none")
+  (parameters
+  )
+  (varargs #t)
+)
+
 (define-method set_initial_value
   (of-object "ClutterInterval")
   (c-name "clutter_interval_set_initial_value")
@@ -5394,6 +5687,15 @@
   (return-type "GValue*")
 )
 
+(define-method set_final
+  (of-object "ClutterInterval")
+  (c-name "clutter_interval_set_final")
+  (return-type "none")
+  (parameters
+  )
+  (varargs #t)
+)
+
 (define-method set_final_value
   (of-object "ClutterInterval")
   (c-name "clutter_interval_set_final_value")
@@ -5450,32 +5752,120 @@
   (c-name "clutter_interval_compute_value")
   (return-type "gboolean")
   (parameters
-    '("gdouble" "factor")
-    '("GValue*" "value")
+    '("gdouble" "factor")
+    '("GValue*" "value")
+  )
+)
+
+(define-method compute
+  (of-object "ClutterInterval")
+  (c-name "clutter_interval_compute")
+  (return-type "const-GValue*")
+  (parameters
+    '("gdouble" "factor")
+  )
+)
+
+(define-method is_valid
+  (of-object "ClutterInterval")
+  (c-name "clutter_interval_is_valid")
+  (return-type "gboolean")
+)
+
+
+
+;; From clutter-keyframe-transition.h
+
+(define-function clutter_keyframe_transition_get_type
+  (c-name "clutter_keyframe_transition_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_keyframe_transition_new
+  (c-name "clutter_keyframe_transition_new")
+  (is-constructor-of "ClutterKeyframeTransition")
+  (return-type "ClutterTransition*")
+  (parameters
+    '("const-char*" "property_name")
+  )
+)
+
+(define-method set_key_frames
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_set_key_frames")
+  (return-type "none")
+  (parameters
+    '("guint" "n_key_frames")
+    '("const-double*" "key_frames")
+  )
+)
+
+(define-method set_values
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_set_values")
+  (return-type "none")
+  (parameters
+    '("guint" "n_values")
+    '("const-GValue*" "values")
+  )
+)
+
+(define-method set_modes
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_set_modes")
+  (return-type "none")
+  (parameters
+    '("guint" "n_modes")
+    '("const-ClutterAnimationMode*" "modes")
+  )
+)
+
+(define-method set
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_set")
+  (return-type "none")
+  (parameters
+    '("GType" "gtype")
+    '("guint" "n_key_frames")
   )
+  (varargs #t)
 )
 
-(define-method compute
-  (of-object "ClutterInterval")
-  (c-name "clutter_interval_compute")
-  (return-type "const-GValue*")
+(define-method set_key_frame
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_set_key_frame")
+  (return-type "none")
   (parameters
-    '("gdouble" "factor")
+    '("guint" "index_")
+    '("double" "key")
+    '("ClutterAnimationMode" "mode")
+    '("const-GValue*" "value")
   )
 )
 
-(define-function clutter_interval_register_progress_func
-  (c-name "clutter_interval_register_progress_func")
+(define-method get_key_frame
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_get_key_frame")
   (return-type "none")
   (parameters
-    '("GType" "value_type")
-    '("ClutterProgressFunc" "func")
+    '("guint" "index_")
+    '("double*" "key")
+    '("ClutterAnimationMode*" "mode")
+    '("GValue*" "value")
   )
 )
 
+(define-method get_n_key_frames
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_get_n_key_frames")
+  (return-type "guint")
+)
 
-
-;; From clutter-json.h
+(define-method clear
+  (of-object "ClutterKeyframeTransition")
+  (c-name "clutter_keyframe_transition_clear")
+  (return-type "none")
+)
 
 
 
@@ -5616,28 +6006,6 @@
   )
 )
 
-(define-method begin_animation
-  (of-object "ClutterLayoutManager")
-  (c-name "clutter_layout_manager_begin_animation")
-  (return-type "ClutterAlpha*")
-  (parameters
-    '("guint" "duration")
-    '("gulong" "mode")
-  )
-)
-
-(define-method end_animation
-  (of-object "ClutterLayoutManager")
-  (c-name "clutter_layout_manager_end_animation")
-  (return-type "none")
-)
-
-(define-method get_animation_progress
-  (of-object "ClutterLayoutManager")
-  (c-name "clutter_layout_manager_get_animation_progress")
-  (return-type "gdouble")
-)
-
 
 
 ;; From clutter-layout-meta.h
@@ -5684,6 +6052,10 @@
 
 
 
+;; From clutter-macros.h
+
+
+
 ;; From clutter-main.h
 
 (define-function clutter_init_error_quark
@@ -5743,14 +6115,6 @@
   (return-type "gint")
 )
 
-(define-function clutter_redraw
-  (c-name "clutter_redraw")
-  (return-type "none")
-  (parameters
-    '("ClutterStage*" "stage")
-  )
-)
-
 (define-function clutter_do_event
   (c-name "clutter_do_event")
   (return-type "none")
@@ -5759,38 +6123,13 @@
   )
 )
 
-(define-function clutter_get_debug_enabled
-  (c-name "clutter_get_debug_enabled")
-  (return-type "gboolean")
-)
-
-(define-function clutter_get_show_fps
-  (c-name "clutter_get_show_fps")
-  (return-type "gboolean")
-)
-
-(define-function clutter_get_timestamp
-  (c-name "clutter_get_timestamp")
-  (return-type "gulong")
-)
-
 (define-function clutter_get_accessibility_enabled
   (c-name "clutter_get_accessibility_enabled")
   (return-type "gboolean")
 )
 
-(define-function clutter_threads_init
-  (c-name "clutter_threads_init")
-  (return-type "none")
-)
-
-(define-function clutter_threads_enter
-  (c-name "clutter_threads_enter")
-  (return-type "none")
-)
-
-(define-function clutter_threads_leave
-  (c-name "clutter_threads_leave")
+(define-function clutter_disable_accessibility
+  (c-name "clutter_disable_accessibility")
   (return-type "none")
 )
 
@@ -5845,728 +6184,917 @@
   )
 )
 
-(define-function clutter_threads_add_frame_source
-  (c-name "clutter_threads_add_frame_source")
+(define-function clutter_threads_add_repaint_func
+  (c-name "clutter_threads_add_repaint_func")
+  (return-type "guint")
+  (parameters
+    '("GSourceFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
+  )
+)
+
+(define-function clutter_threads_add_repaint_func_full
+  (c-name "clutter_threads_add_repaint_func_full")
+  (return-type "guint")
+  (parameters
+    '("ClutterRepaintFlags" "flags")
+    '("GSourceFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
+  )
+)
+
+(define-function clutter_threads_remove_repaint_func
+  (c-name "clutter_threads_remove_repaint_func")
+  (return-type "none")
+  (parameters
+    '("guint" "handle_id")
+  )
+)
+
+(define-function clutter_grab_pointer
+  (c-name "clutter_grab_pointer")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-function clutter_ungrab_pointer
+  (c-name "clutter_ungrab_pointer")
+  (return-type "none")
+)
+
+(define-function clutter_get_pointer_grab
+  (c-name "clutter_get_pointer_grab")
+  (return-type "ClutterActor*")
+)
+
+(define-function clutter_grab_keyboard
+  (c-name "clutter_grab_keyboard")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-function clutter_ungrab_keyboard
+  (c-name "clutter_ungrab_keyboard")
+  (return-type "none")
+)
+
+(define-function clutter_get_keyboard_grab
+  (c-name "clutter_get_keyboard_grab")
+  (return-type "ClutterActor*")
+)
+
+(define-function clutter_get_font_map
+  (c-name "clutter_get_font_map")
+  (return-type "PangoFontMap*")
+)
+
+(define-function clutter_get_default_text_direction
+  (c-name "clutter_get_default_text_direction")
+  (return-type "ClutterTextDirection")
+)
+
+
+
+;; From clutter-marshal.h
+
+
+
+;; From clutter-master-clock.h
+
+
+
+;; From clutter-model.h
+
+(define-function clutter_model_get_type
+  (c-name "clutter_model_get_type")
+  (return-type "GType")
+)
+
+(define-method set_types
+  (of-object "ClutterModel")
+  (c-name "clutter_model_set_types")
+  (return-type "none")
+  (parameters
+    '("guint" "n_columns")
+    '("GType*" "types")
+  )
+)
+
+(define-method set_names
+  (of-object "ClutterModel")
+  (c-name "clutter_model_set_names")
+  (return-type "none")
+  (parameters
+    '("guint" "n_columns")
+    '("const-gchar*-const[]" "names")
+  )
+)
+
+(define-method append
+  (of-object "ClutterModel")
+  (c-name "clutter_model_append")
+  (return-type "none")
+  (parameters
+  )
+  (varargs #t)
+)
+
+(define-method appendv
+  (of-object "ClutterModel")
+  (c-name "clutter_model_appendv")
+  (return-type "none")
+  (parameters
+    '("guint" "n_columns")
+    '("guint*" "columns")
+    '("GValue*" "values")
+  )
+)
+
+(define-method prepend
+  (of-object "ClutterModel")
+  (c-name "clutter_model_prepend")
+  (return-type "none")
+  (parameters
+  )
+  (varargs #t)
+)
+
+(define-method prependv
+  (of-object "ClutterModel")
+  (c-name "clutter_model_prependv")
+  (return-type "none")
+  (parameters
+    '("guint" "n_columns")
+    '("guint*" "columns")
+    '("GValue*" "values")
+  )
+)
+
+(define-method insert
+  (of-object "ClutterModel")
+  (c-name "clutter_model_insert")
+  (return-type "none")
+  (parameters
+    '("guint" "row")
+  )
+  (varargs #t)
+)
+
+(define-method insertv
+  (of-object "ClutterModel")
+  (c-name "clutter_model_insertv")
+  (return-type "none")
+  (parameters
+    '("guint" "row")
+    '("guint" "n_columns")
+    '("guint*" "columns")
+    '("GValue*" "values")
+  )
+)
+
+(define-method insert_value
+  (of-object "ClutterModel")
+  (c-name "clutter_model_insert_value")
+  (return-type "none")
+  (parameters
+    '("guint" "row")
+    '("guint" "column")
+    '("const-GValue*" "value")
+  )
+)
+
+(define-method remove
+  (of-object "ClutterModel")
+  (c-name "clutter_model_remove")
+  (return-type "none")
+  (parameters
+    '("guint" "row")
+  )
+)
+
+(define-method get_n_rows
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_n_rows")
+  (return-type "guint")
+)
+
+(define-method get_n_columns
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_n_columns")
   (return-type "guint")
-  (parameters
-    '("guint" "fps")
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-  )
 )
 
-(define-function clutter_threads_add_frame_source_full
-  (c-name "clutter_threads_add_frame_source_full")
-  (return-type "guint")
+(define-method get_column_name
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_column_name")
+  (return-type "const-gchar*")
   (parameters
-    '("gint" "priority")
-    '("guint" "fps")
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("guint" "column")
   )
 )
 
-(define-function clutter_threads_add_repaint_func
-  (c-name "clutter_threads_add_repaint_func")
-  (return-type "guint")
+(define-method get_column_type
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_column_type")
+  (return-type "GType")
   (parameters
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("guint" "column")
   )
 )
 
-(define-function clutter_threads_remove_repaint_func
-  (c-name "clutter_threads_remove_repaint_func")
-  (return-type "none")
+(define-method get_first_iter
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_first_iter")
+  (return-type "ClutterModelIter*")
+)
+
+(define-method get_last_iter
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_last_iter")
+  (return-type "ClutterModelIter*")
+)
+
+(define-method get_iter_at_row
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_iter_at_row")
+  (return-type "ClutterModelIter*")
   (parameters
-    '("guint" "handle_id")
+    '("guint" "row")
   )
 )
 
-(define-function clutter_set_motion_events_enabled
-  (c-name "clutter_set_motion_events_enabled")
+(define-method set_sorting_column
+  (of-object "ClutterModel")
+  (c-name "clutter_model_set_sorting_column")
   (return-type "none")
   (parameters
-    '("gboolean" "enable")
+    '("gint" "column")
   )
 )
 
-(define-function clutter_get_motion_events_enabled
-  (c-name "clutter_get_motion_events_enabled")
-  (return-type "gboolean")
+(define-method get_sorting_column
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_sorting_column")
+  (return-type "gint")
 )
 
-(define-function clutter_set_default_frame_rate
-  (c-name "clutter_set_default_frame_rate")
+(define-method foreach
+  (of-object "ClutterModel")
+  (c-name "clutter_model_foreach")
   (return-type "none")
   (parameters
-    '("guint" "frames_per_sec")
+    '("ClutterModelForeachFunc" "func")
+    '("gpointer" "user_data")
   )
 )
 
-(define-function clutter_get_default_frame_rate
-  (c-name "clutter_get_default_frame_rate")
-  (return-type "guint")
-)
-
-(define-function clutter_grab_pointer
-  (c-name "clutter_grab_pointer")
+(define-method set_sort
+  (of-object "ClutterModel")
+  (c-name "clutter_model_set_sort")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
+    '("gint" "column")
+    '("ClutterModelSortFunc" "func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
   )
 )
 
-(define-function clutter_ungrab_pointer
-  (c-name "clutter_ungrab_pointer")
+(define-method set_filter
+  (of-object "ClutterModel")
+  (c-name "clutter_model_set_filter")
   (return-type "none")
+  (parameters
+    '("ClutterModelFilterFunc" "func")
+    '("gpointer" "user_data")
+    '("GDestroyNotify" "notify")
+  )
 )
 
-(define-function clutter_get_pointer_grab
-  (c-name "clutter_get_pointer_grab")
-  (return-type "ClutterActor*")
+(define-method get_filter_set
+  (of-object "ClutterModel")
+  (c-name "clutter_model_get_filter_set")
+  (return-type "gboolean")
 )
 
-(define-function clutter_grab_keyboard
-  (c-name "clutter_grab_keyboard")
+(define-method resort
+  (of-object "ClutterModel")
+  (c-name "clutter_model_resort")
   (return-type "none")
+)
+
+(define-method filter_row
+  (of-object "ClutterModel")
+  (c-name "clutter_model_filter_row")
+  (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "actor")
+    '("guint" "row")
   )
 )
 
-(define-function clutter_ungrab_keyboard
-  (c-name "clutter_ungrab_keyboard")
-  (return-type "none")
+(define-method filter_iter
+  (of-object "ClutterModel")
+  (c-name "clutter_model_filter_iter")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterModelIter*" "iter")
+  )
 )
 
-(define-function clutter_get_keyboard_grab
-  (c-name "clutter_get_keyboard_grab")
-  (return-type "ClutterActor*")
+(define-function clutter_model_iter_get_type
+  (c-name "clutter_model_iter_get_type")
+  (return-type "GType")
 )
 
-(define-function clutter_clear_glyph_cache
-  (c-name "clutter_clear_glyph_cache")
+(define-method get
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_get")
   (return-type "none")
+  (parameters
+  )
+  (varargs #t)
 )
 
-(define-function clutter_set_font_flags
-  (c-name "clutter_set_font_flags")
+(define-method get_valist
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_get_valist")
   (return-type "none")
   (parameters
-    '("ClutterFontFlags" "flags")
+    '("va_list" "args")
   )
 )
 
-(define-function clutter_get_font_flags
-  (c-name "clutter_get_font_flags")
-  (return-type "ClutterFontFlags")
+(define-method get_value
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_get_value")
+  (return-type "none")
+  (parameters
+    '("guint" "column")
+    '("GValue*" "value")
+  )
 )
 
-(define-function clutter_get_input_device_for_id
-  (c-name "clutter_get_input_device_for_id")
-  (return-type "ClutterInputDevice*")
+(define-method set
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_set")
+  (return-type "none")
   (parameters
-    '("gint" "id")
   )
+  (varargs #t)
 )
 
-(define-function clutter_grab_pointer_for_device
-  (c-name "clutter_grab_pointer_for_device")
+(define-method set_valist
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_set_valist")
   (return-type "none")
   (parameters
-    '("ClutterActor*" "actor")
-    '("gint" "id")
+    '("va_list" "args")
   )
 )
 
-(define-function clutter_ungrab_pointer_for_device
-  (c-name "clutter_ungrab_pointer_for_device")
+(define-method set_value
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_set_value")
   (return-type "none")
   (parameters
-    '("gint" "id")
+    '("guint" "column")
+    '("const-GValue*" "value")
   )
 )
 
-(define-function clutter_get_font_map
-  (c-name "clutter_get_font_map")
-  (return-type "PangoFontMap*")
+(define-method is_first
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_is_first")
+  (return-type "gboolean")
 )
 
-(define-function clutter_get_default_text_direction
-  (c-name "clutter_get_default_text_direction")
-  (return-type "ClutterTextDirection")
+(define-method is_last
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_is_last")
+  (return-type "gboolean")
+)
+
+(define-method next
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_next")
+  (return-type "ClutterModelIter*")
 )
 
+(define-method prev
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_prev")
+  (return-type "ClutterModelIter*")
+)
 
+(define-method get_model
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_get_model")
+  (return-type "ClutterModel*")
+)
 
-;; From clutter-marshal.h
+(define-method get_row
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_get_row")
+  (return-type "guint")
+)
 
+(define-method copy
+  (of-object "ClutterModelIter")
+  (c-name "clutter_model_iter_copy")
+  (return-type "ClutterModelIter*")
+)
+
+
+
+;; From clutter-model-private.h
 
 
-;; From clutter-media.h
 
-(define-function clutter_media_get_type
-  (c-name "clutter_media_get_type")
+;; From clutter-offscreen-effect.h
+
+(define-function clutter_offscreen_effect_get_type
+  (c-name "clutter_offscreen_effect_get_type")
   (return-type "GType")
 )
 
-(define-method set_uri
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_uri")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "uri")
-  )
+(define-method get_target
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_get_target")
+  (return-type "CoglMaterial*")
 )
 
-(define-method get_uri
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_uri")
-  (return-type "gchar*")
+(define-method get_texture
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_get_texture")
+  (return-type "CoglHandle")
 )
 
-(define-method set_filename
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_filename")
+(define-method paint_target
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_paint_target")
   (return-type "none")
-  (parameters
-    '("const-gchar*" "filename")
-  )
 )
 
-(define-method set_playing
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_playing")
-  (return-type "none")
+(define-method create_texture
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_create_texture")
+  (return-type "CoglHandle")
   (parameters
-    '("gboolean" "playing")
+    '("gfloat" "width")
+    '("gfloat" "height")
   )
 )
 
-(define-method get_playing
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_playing")
+(define-method get_target_size
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_get_target_size")
   (return-type "gboolean")
+  (parameters
+    '("gfloat*" "width")
+    '("gfloat*" "height")
+  )
 )
 
-(define-method set_progress
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_progress")
-  (return-type "none")
+(define-method get_target_rect
+  (of-object "ClutterOffscreenEffect")
+  (c-name "clutter_offscreen_effect_get_target_rect")
+  (return-type "gboolean")
   (parameters
-    '("gdouble" "progress")
+    '("ClutterRect*" "rect")
   )
 )
 
-(define-method get_progress
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_progress")
-  (return-type "gdouble")
+
+
+;; From clutter-offscreen-effect-private.h
+
+
+
+;; From clutter-page-turn-effect.h
+
+(define-function clutter_page_turn_effect_get_type
+  (c-name "clutter_page_turn_effect_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_page_turn_effect_new
+  (c-name "clutter_page_turn_effect_new")
+  (is-constructor-of "ClutterPageTurnEffect")
+  (return-type "ClutterEffect*")
+  (parameters
+    '("gdouble" "period")
+    '("gdouble" "angle")
+    '("gfloat" "radius")
+  )
 )
 
-(define-method set_subtitle_uri
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_subtitle_uri")
+(define-method set_period
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_set_period")
   (return-type "none")
   (parameters
-    '("const-gchar*" "uri")
+    '("gdouble" "period")
   )
 )
 
-(define-method get_subtitle_uri
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_subtitle_uri")
-  (return-type "gchar*")
+(define-method get_period
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_get_period")
+  (return-type "gdouble")
 )
 
-(define-method set_subtitle_font_name
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_subtitle_font_name")
+(define-method set_angle
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_set_angle")
   (return-type "none")
   (parameters
-    '("const-char*" "font_name")
+    '("gdouble" "angle")
   )
 )
 
-(define-method get_subtitle_font_name
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_subtitle_font_name")
-  (return-type "gchar*")
+(define-method get_angle
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_get_angle")
+  (return-type "gdouble")
 )
 
-(define-method set_audio_volume
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_set_audio_volume")
+(define-method set_radius
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_set_radius")
   (return-type "none")
   (parameters
-    '("gdouble" "volume")
+    '("gfloat" "radius")
   )
 )
 
-(define-method get_audio_volume
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_audio_volume")
-  (return-type "gdouble")
-)
-
-(define-method get_can_seek
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_can_seek")
-  (return-type "gboolean")
-)
-
-(define-method get_buffer_fill
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_buffer_fill")
-  (return-type "gdouble")
-)
-
-(define-method get_duration
-  (of-object "ClutterMedia")
-  (c-name "clutter_media_get_duration")
-  (return-type "gdouble")
+(define-method get_radius
+  (of-object "ClutterPageTurnEffect")
+  (c-name "clutter_page_turn_effect_get_radius")
+  (return-type "gfloat")
 )
 
 
 
-;; From clutter-model.h
+;; From clutter-paint-node.h
 
-(define-function clutter_model_get_type
-  (c-name "clutter_model_get_type")
+(define-function clutter_paint_node_get_type
+  (c-name "clutter_paint_node_get_type")
   (return-type "GType")
 )
 
-(define-method set_types
-  (of-object "ClutterModel")
-  (c-name "clutter_model_set_types")
-  (return-type "none")
-  (parameters
-    '("guint" "n_columns")
-    '("GType*" "types")
-  )
+(define-method ref
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_ref")
+  (return-type "ClutterPaintNode*")
 )
 
-(define-method set_names
-  (of-object "ClutterModel")
-  (c-name "clutter_model_set_names")
+(define-method unref
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_unref")
   (return-type "none")
-  (parameters
-    '("guint" "n_columns")
-    '("const-gchar*-const[]" "names")
-  )
 )
 
-(define-method append
-  (of-object "ClutterModel")
-  (c-name "clutter_model_append")
+(define-method set_name
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_set_name")
   (return-type "none")
   (parameters
+    '("const-char*" "name")
   )
-  (varargs #t)
 )
 
-(define-method appendv
-  (of-object "ClutterModel")
-  (c-name "clutter_model_appendv")
+(define-method add_child
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_add_child")
   (return-type "none")
   (parameters
-    '("guint" "n_columns")
-    '("guint*" "columns")
-    '("GValue*" "values")
+    '("ClutterPaintNode*" "child")
   )
 )
 
-(define-method prepend
-  (of-object "ClutterModel")
-  (c-name "clutter_model_prepend")
+(define-method add_rectangle
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_add_rectangle")
   (return-type "none")
   (parameters
+    '("const-ClutterActorBox*" "rect")
   )
-  (varargs #t)
 )
 
-(define-method prependv
-  (of-object "ClutterModel")
-  (c-name "clutter_model_prependv")
+(define-method add_texture_rectangle
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_add_texture_rectangle")
   (return-type "none")
   (parameters
-    '("guint" "n_columns")
-    '("guint*" "columns")
-    '("GValue*" "values")
+    '("const-ClutterActorBox*" "rect")
+    '("float" "x_1")
+    '("float" "y_1")
+    '("float" "x_2")
+    '("float" "y_2")
   )
 )
 
-(define-method insert
-  (of-object "ClutterModel")
-  (c-name "clutter_model_insert")
+(define-method add_path
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_add_path")
   (return-type "none")
   (parameters
-    '("guint" "row")
+    '("CoglPath*" "path")
   )
-  (varargs #t)
 )
 
-(define-method insertv
-  (of-object "ClutterModel")
-  (c-name "clutter_model_insertv")
+(define-method add_primitive
+  (of-object "ClutterPaintNode")
+  (c-name "clutter_paint_node_add_primitive")
   (return-type "none")
   (parameters
-    '("guint" "row")
-    '("guint" "n_columns")
-    '("guint*" "columns")
-    '("GValue*" "values")
+    '("CoglPrimitive*" "primitive")
   )
 )
 
-(define-method insert_value
-  (of-object "ClutterModel")
-  (c-name "clutter_model_insert_value")
+(define-function clutter_value_set_paint_node
+  (c-name "clutter_value_set_paint_node")
   (return-type "none")
   (parameters
-    '("guint" "row")
-    '("guint" "column")
-    '("const-GValue*" "value")
+    '("GValue*" "value")
+    '("gpointer" "node")
   )
 )
 
-(define-method remove
-  (of-object "ClutterModel")
-  (c-name "clutter_model_remove")
+(define-function clutter_value_take_paint_node
+  (c-name "clutter_value_take_paint_node")
   (return-type "none")
   (parameters
-    '("guint" "row")
+    '("GValue*" "value")
+    '("gpointer" "node")
   )
 )
 
-(define-method get_n_rows
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_n_rows")
-  (return-type "guint")
-)
-
-(define-method get_n_columns
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_n_columns")
-  (return-type "guint")
-)
-
-(define-method get_column_name
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_column_name")
-  (return-type "const-gchar*")
+(define-function clutter_value_get_paint_node
+  (c-name "clutter_value_get_paint_node")
+  (return-type "gpointer")
   (parameters
-    '("guint" "column")
+    '("const-GValue*" "value")
   )
 )
 
-(define-method get_column_type
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_column_type")
-  (return-type "GType")
+(define-function clutter_value_dup_paint_node
+  (c-name "clutter_value_dup_paint_node")
+  (return-type "gpointer")
   (parameters
-    '("guint" "column")
+    '("const-GValue*" "value")
   )
 )
 
-(define-method get_first_iter
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_first_iter")
-  (return-type "ClutterModelIter*")
-)
 
-(define-method get_last_iter
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_last_iter")
-  (return-type "ClutterModelIter*")
-)
 
-(define-method get_iter_at_row
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_iter_at_row")
-  (return-type "ClutterModelIter*")
-  (parameters
-    '("guint" "row")
-  )
-)
+;; From clutter-paint-node-private.h
 
-(define-method set_sorting_column
-  (of-object "ClutterModel")
-  (c-name "clutter_model_set_sorting_column")
-  (return-type "none")
-  (parameters
-    '("gint" "column")
-  )
-)
 
-(define-method get_sorting_column
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_sorting_column")
-  (return-type "gint")
+
+;; From clutter-paint-nodes.h
+
+(define-function clutter_color_node_get_type
+  (c-name "clutter_color_node_get_type")
+  (return-type "GType")
 )
 
-(define-method foreach
-  (of-object "ClutterModel")
-  (c-name "clutter_model_foreach")
-  (return-type "none")
-  (parameters
-    '("ClutterModelForeachFunc" "func")
-    '("gpointer" "user_data")
-  )
+(define-method node_new
+  (of-object "ClutterColor")
+  (c-name "clutter_color_node_new")
+  (return-type "ClutterPaintNode*")
 )
 
-(define-method set_sort
-  (of-object "ClutterModel")
-  (c-name "clutter_model_set_sort")
-  (return-type "none")
-  (parameters
-    '("guint" "column")
-    '("ClutterModelSortFunc" "func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
-  )
+(define-function clutter_texture_node_get_type
+  (c-name "clutter_texture_node_get_type")
+  (return-type "GType")
 )
 
-(define-method set_filter
-  (of-object "ClutterModel")
-  (c-name "clutter_model_set_filter")
-  (return-type "none")
+(define-function clutter_texture_node_new
+  (c-name "clutter_texture_node_new")
+  (is-constructor-of "ClutterTextureNode")
+  (return-type "ClutterPaintNode*")
   (parameters
-    '("ClutterModelFilterFunc" "func")
-    '("gpointer" "user_data")
-    '("GDestroyNotify" "notify")
+    '("CoglTexture*" "texture")
+    '("const-ClutterColor*" "color")
+    '("ClutterScalingFilter" "min_filter")
+    '("ClutterScalingFilter" "mag_filter")
   )
 )
 
-(define-method get_filter_set
-  (of-object "ClutterModel")
-  (c-name "clutter_model_get_filter_set")
-  (return-type "gboolean")
+(define-function clutter_clip_node_get_type
+  (c-name "clutter_clip_node_get_type")
+  (return-type "GType")
 )
 
-(define-method resort
-  (of-object "ClutterModel")
-  (c-name "clutter_model_resort")
-  (return-type "none")
+(define-function clutter_clip_node_new
+  (c-name "clutter_clip_node_new")
+  (is-constructor-of "ClutterClipNode")
+  (return-type "ClutterPaintNode*")
 )
 
-(define-method filter_row
-  (of-object "ClutterModel")
-  (c-name "clutter_model_filter_row")
-  (return-type "gboolean")
-  (parameters
-    '("guint" "row")
-  )
+(define-function clutter_pipeline_node_get_type
+  (c-name "clutter_pipeline_node_get_type")
+  (return-type "GType")
 )
 
-(define-method filter_iter
-  (of-object "ClutterModel")
-  (c-name "clutter_model_filter_iter")
-  (return-type "gboolean")
+(define-function clutter_pipeline_node_new
+  (c-name "clutter_pipeline_node_new")
+  (is-constructor-of "ClutterPipelineNode")
+  (return-type "ClutterPaintNode*")
   (parameters
-    '("ClutterModelIter*" "iter")
+    '("CoglPipeline*" "pipeline")
   )
 )
 
-(define-function clutter_model_iter_get_type
-  (c-name "clutter_model_iter_get_type")
+(define-function clutter_text_node_get_type
+  (c-name "clutter_text_node_get_type")
   (return-type "GType")
 )
 
-(define-method get
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_get")
-  (return-type "none")
+(define-function clutter_text_node_new
+  (c-name "clutter_text_node_new")
+  (is-constructor-of "ClutterTextNode")
+  (return-type "ClutterPaintNode*")
   (parameters
+    '("PangoLayout*" "layout")
+    '("const-ClutterColor*" "color")
   )
-  (varargs #t)
 )
 
-(define-method get_valist
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_get_valist")
-  (return-type "none")
-  (parameters
-    '("va_list" "args")
-  )
-)
 
-(define-method get_value
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_get_value")
-  (return-type "none")
-  (parameters
-    '("guint" "column")
-    '("GValue*" "value")
-  )
-)
 
-(define-method set
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_set")
-  (return-type "none")
-  (parameters
-  )
-  (varargs #t)
-)
+;; From clutter-paint-volume-private.h
 
-(define-method set_valist
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_set_valist")
-  (return-type "none")
-  (parameters
-    '("va_list" "args")
-  )
+
+
+;; From clutter-pan-action.h
+
+(define-function clutter_pan_action_get_type
+  (c-name "clutter_pan_action_get_type")
+  (return-type "GType")
 )
 
-(define-method set_value
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_set_value")
+(define-function clutter_pan_action_new
+  (c-name "clutter_pan_action_new")
+  (is-constructor-of "ClutterPanAction")
+  (return-type "ClutterAction*")
+)
+
+(define-method set_pan_axis
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_set_pan_axis")
   (return-type "none")
   (parameters
-    '("guint" "column")
-    '("const-GValue*" "value")
+    '("ClutterPanAxis" "axis")
   )
 )
 
-(define-method is_first
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_is_first")
-  (return-type "gboolean")
+(define-method get_pan_axis
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_pan_axis")
+  (return-type "ClutterPanAxis")
 )
 
-(define-method is_last
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_is_last")
-  (return-type "gboolean")
+(define-method set_interpolate
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_set_interpolate")
+  (return-type "none")
+  (parameters
+    '("gboolean" "should_interpolate")
+  )
 )
 
-(define-method next
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_next")
-  (return-type "ClutterModelIter*")
+(define-method get_interpolate
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_interpolate")
+  (return-type "gboolean")
 )
 
-(define-method prev
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_prev")
-  (return-type "ClutterModelIter*")
+(define-method set_deceleration
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_set_deceleration")
+  (return-type "none")
+  (parameters
+    '("gdouble" "rate")
+  )
 )
 
-(define-method get_model
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_get_model")
-  (return-type "ClutterModel*")
+(define-method get_deceleration
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_deceleration")
+  (return-type "gdouble")
 )
 
-(define-method get_row
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_get_row")
-  (return-type "guint")
+(define-method set_acceleration_factor
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_set_acceleration_factor")
+  (return-type "none")
+  (parameters
+    '("gdouble" "factor")
+  )
 )
 
-(define-method copy
-  (of-object "ClutterModelIter")
-  (c-name "clutter_model_iter_copy")
-  (return-type "ClutterModelIter*")
+(define-method get_acceleration_factor
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_acceleration_factor")
+  (return-type "gdouble")
 )
 
-
-
-;; From clutter-offscreen-effect.h
-
-(define-function clutter_offscreen_effect_get_type
-  (c-name "clutter_offscreen_effect_get_type")
-  (return-type "GType")
+(define-method get_interpolated_coords
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_interpolated_coords")
+  (return-type "none")
+  (parameters
+    '("gfloat*" "interpolated_x")
+    '("gfloat*" "interpolated_y")
+  )
 )
 
-(define-method get_target
-  (of-object "ClutterOffscreenEffect")
-  (c-name "clutter_offscreen_effect_get_target")
-  (return-type "CoglHandle")
+(define-method get_interpolated_delta
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_interpolated_delta")
+  (return-type "gfloat")
+  (parameters
+    '("gfloat*" "delta_x")
+    '("gfloat*" "delta_y")
+  )
 )
 
-(define-method paint_target
-  (of-object "ClutterOffscreenEffect")
-  (c-name "clutter_offscreen_effect_paint_target")
-  (return-type "none")
+(define-method get_motion_delta
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_motion_delta")
+  (return-type "gfloat")
+  (parameters
+    '("guint" "point")
+    '("gfloat*" "delta_x")
+    '("gfloat*" "delta_y")
+  )
 )
 
-(define-method create_target
-  (of-object "ClutterOffscreenEffect")
-  (c-name "clutter_offscreen_effect_create_target")
-  (return-type "CoglHandle")
+(define-method get_motion_coords
+  (of-object "ClutterPanAction")
+  (c-name "clutter_pan_action_get_motion_coords")
+  (return-type "none")
   (parameters
-    '("gfloat" "width")
-    '("gfloat" "height")
+    '("guint" "point")
+    '("gfloat*" "motion_x")
+    '("gfloat*" "motion_y")
   )
 )
 
 
 
-;; From clutter-page-turn-effect.h
+;; From clutter-path-constraint.h
 
-(define-function clutter_page_turn_effect_get_type
-  (c-name "clutter_page_turn_effect_get_type")
+(define-function clutter_path_constraint_get_type
+  (c-name "clutter_path_constraint_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_page_turn_effect_new
-  (c-name "clutter_page_turn_effect_new")
-  (is-constructor-of "ClutterPageTurnEffect")
-  (return-type "ClutterEffect*")
+(define-method constraint_new
+  (of-object "ClutterPath")
+  (c-name "clutter_path_constraint_new")
+  (return-type "ClutterConstraint*")
   (parameters
-    '("gdouble" "period")
-    '("gdouble" "angle")
-    '("gfloat" "radius")
+    '("gfloat" "offset")
   )
 )
 
-(define-method set_period
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_set_period")
+(define-function clutter_path_constraint_set_path
+  (c-name "clutter_path_constraint_set_path")
   (return-type "none")
   (parameters
-    '("gdouble" "period")
+    '("ClutterPath*" "path")
   )
 )
 
-(define-method get_period
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_get_period")
-  (return-type "gdouble")
-)
-
-(define-method set_angle
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_set_angle")
-  (return-type "none")
+(define-function clutter_path_constraint_get_path
+  (c-name "clutter_path_constraint_get_path")
+  (return-type "ClutterPath*")
   (parameters
-    '("gdouble" "angle")
   )
 )
 
-(define-method get_angle
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_get_angle")
-  (return-type "gdouble")
-)
-
-(define-method set_radius
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_set_radius")
+(define-function clutter_path_constraint_set_offset
+  (c-name "clutter_path_constraint_set_offset")
   (return-type "none")
   (parameters
-    '("gfloat" "radius")
+    '("gfloat" "offset")
   )
 )
 
-(define-method get_radius
-  (of-object "ClutterPageTurnEffect")
-  (c-name "clutter_page_turn_effect_get_radius")
+(define-function clutter_path_constraint_get_offset
+  (c-name "clutter_path_constraint_get_offset")
   (return-type "gfloat")
+  (parameters
+  )
 )
 
 
@@ -6578,11 +7106,6 @@
   (return-type "GType")
 )
 
-(define-function clutter_path_node_get_type
-  (c-name "clutter_path_node_get_type")
-  (return-type "GType")
-)
-
 (define-function clutter_path_new
   (c-name "clutter_path_new")
   (is-constructor-of "ClutterPath")
@@ -6602,8 +7125,8 @@
   (c-name "clutter_path_add_move_to")
   (return-type "none")
   (parameters
-    '("gint" "x")
-    '("gint" "y")
+    '("gfloat" "x")
+    '("gfloat" "y")
   )
 )
 
@@ -6612,8 +7135,8 @@
   (c-name "clutter_path_add_rel_move_to")
   (return-type "none")
   (parameters
-    '("gint" "x")
-    '("gint" "y")
+    '("gfloat" "x")
+    '("gfloat" "y")
   )
 )
 
@@ -6622,8 +7145,8 @@
   (c-name "clutter_path_add_line_to")
   (return-type "none")
   (parameters
-    '("gint" "x")
-    '("gint" "y")
+    '("gfloat" "x")
+    '("gfloat" "y")
   )
 )
 
@@ -6632,8 +7155,8 @@
   (c-name "clutter_path_add_rel_line_to")
   (return-type "none")
   (parameters
-    '("gint" "x")
-    '("gint" "y")
+    '("gfloat" "x")
+    '("gfloat" "y")
   )
 )
 
@@ -6642,12 +7165,12 @@
   (c-name "clutter_path_add_curve_to")
   (return-type "none")
   (parameters
-    '("gint" "x_1")
-    '("gint" "y_1")
-    '("gint" "x_2")
-    '("gint" "y_2")
-    '("gint" "x_3")
-    '("gint" "y_3")
+    '("gfloat" "x_1")
+    '("gfloat" "y_1")
+    '("gfloat" "x_2")
+    '("gfloat" "y_2")
+    '("gfloat" "x_3")
+    '("gfloat" "y_3")
   )
 )
 
@@ -6656,12 +7179,12 @@
   (c-name "clutter_path_add_rel_curve_to")
   (return-type "none")
   (parameters
-    '("gint" "x_1")
-    '("gint" "y_1")
-    '("gint" "x_2")
-    '("gint" "y_2")
-    '("gint" "x_3")
-    '("gint" "y_3")
+    '("gfloat" "x_1")
+    '("gfloat" "y_1")
+    '("gfloat" "x_2")
+    '("gfloat" "y_2")
+    '("gfloat" "x_3")
+    '("gfloat" "y_3")
   )
 )
 
@@ -6727,288 +7250,138 @@
   (parameters
     '("ClutterPathCallback" "callback")
     '("gpointer" "user_data")
-  )
-)
-
-(define-method insert_node
-  (of-object "ClutterPath")
-  (c-name "clutter_path_insert_node")
-  (return-type "none")
-  (parameters
-    '("gint" "index_")
-    '("const-ClutterPathNode*" "node")
-  )
-)
-
-(define-method remove_node
-  (of-object "ClutterPath")
-  (c-name "clutter_path_remove_node")
-  (return-type "none")
-  (parameters
-    '("guint" "index_")
-  )
-)
-
-(define-method replace_node
-  (of-object "ClutterPath")
-  (c-name "clutter_path_replace_node")
-  (return-type "none")
-  (parameters
-    '("guint" "index_")
-    '("const-ClutterPathNode*" "node")
-  )
-)
-
-(define-method get_description
-  (of-object "ClutterPath")
-  (c-name "clutter_path_get_description")
-  (return-type "gchar*")
-)
-
-(define-method set_description
-  (of-object "ClutterPath")
-  (c-name "clutter_path_set_description")
-  (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "str")
-  )
-)
-
-(define-method clear
-  (of-object "ClutterPath")
-  (c-name "clutter_path_clear")
-  (return-type "none")
-)
-
-(define-method to_cairo_path
-  (of-object "ClutterPath")
-  (c-name "clutter_path_to_cairo_path")
-  (return-type "none")
-  (parameters
-    '("cairo_t*" "cr")
-  )
-)
-
-(define-method get_position
-  (of-object "ClutterPath")
-  (c-name "clutter_path_get_position")
-  (return-type "guint")
-  (parameters
-    '("gdouble" "progress")
-    '("ClutterKnot*" "position")
-  )
-)
-
-(define-method get_length
-  (of-object "ClutterPath")
-  (c-name "clutter_path_get_length")
-  (return-type "guint")
-)
-
-(define-method copy
-  (of-object "ClutterPathNode")
-  (c-name "clutter_path_node_copy")
-  (return-type "ClutterPathNode*")
-)
-
-(define-method free
-  (of-object "ClutterPathNode")
-  (c-name "clutter_path_node_free")
-  (return-type "none")
-)
-
-(define-method equal
-  (of-object "ClutterPathNode")
-  (c-name "clutter_path_node_equal")
-  (return-type "gboolean")
-  (parameters
-    '("const-ClutterPathNode*" "node_b")
-  )
-)
-
-
-
-;; From clutter-rectangle.h
-
-(define-function clutter_rectangle_get_type
-  (c-name "clutter_rectangle_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_rectangle_new
-  (c-name "clutter_rectangle_new")
-  (is-constructor-of "ClutterRectangle")
-  (return-type "ClutterActor*")
+  )
 )
 
-(define-function clutter_rectangle_new_with_color
-  (c-name "clutter_rectangle_new_with_color")
-  (return-type "ClutterActor*")
+(define-method insert_node
+  (of-object "ClutterPath")
+  (c-name "clutter_path_insert_node")
+  (return-type "none")
   (parameters
-    '("const-ClutterColor*" "color")
+    '("gint" "index_")
+    '("const-ClutterPathNode*" "node")
   )
 )
 
-(define-method get_color
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_get_color")
+(define-method remove_node
+  (of-object "ClutterPath")
+  (c-name "clutter_path_remove_node")
   (return-type "none")
   (parameters
-    '("ClutterColor*" "color")
+    '("guint" "index_")
   )
 )
 
-(define-method set_color
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_set_color")
+(define-method replace_node
+  (of-object "ClutterPath")
+  (c-name "clutter_path_replace_node")
   (return-type "none")
   (parameters
-    '("const-ClutterColor*" "color")
+    '("guint" "index_")
+    '("const-ClutterPathNode*" "node")
   )
 )
 
-(define-method get_border_width
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_get_border_width")
-  (return-type "guint")
+(define-method get_description
+  (of-object "ClutterPath")
+  (c-name "clutter_path_get_description")
+  (return-type "gchar*")
 )
 
-(define-method set_border_width
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_set_border_width")
-  (return-type "none")
+(define-method set_description
+  (of-object "ClutterPath")
+  (c-name "clutter_path_set_description")
+  (return-type "gboolean")
   (parameters
-    '("guint" "width")
+    '("const-gchar*" "str")
   )
 )
 
-(define-method get_border_color
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_get_border_color")
+(define-method clear
+  (of-object "ClutterPath")
+  (c-name "clutter_path_clear")
+  (return-type "none")
+)
+
+(define-method to_cairo_path
+  (of-object "ClutterPath")
+  (c-name "clutter_path_to_cairo_path")
   (return-type "none")
   (parameters
-    '("ClutterColor*" "color")
+    '("cairo_t*" "cr")
   )
 )
 
-(define-method set_border_color
-  (of-object "ClutterRectangle")
-  (c-name "clutter_rectangle_set_border_color")
-  (return-type "none")
+(define-method get_position
+  (of-object "ClutterPath")
+  (c-name "clutter_path_get_position")
+  (return-type "guint")
   (parameters
-    '("const-ClutterColor*" "color")
+    '("gdouble" "progress")
+    '("ClutterPoint*" "position")
   )
 )
 
+(define-method get_length
+  (of-object "ClutterPath")
+  (c-name "clutter_path_get_length")
+  (return-type "guint")
+)
 
 
-;; From clutter-score.h
 
-(define-function clutter_score_get_type
-  (c-name "clutter_score_get_type")
-  (return-type "GType")
-)
+;; From clutter-private.h
 
-(define-function clutter_score_new
-  (c-name "clutter_score_new")
-  (is-constructor-of "ClutterScore")
-  (return-type "ClutterScore*")
-)
 
-(define-method set_loop
-  (of-object "ClutterScore")
-  (c-name "clutter_score_set_loop")
-  (return-type "none")
-  (parameters
-    '("gboolean" "loop")
-  )
-)
 
-(define-method get_loop
-  (of-object "ClutterScore")
-  (c-name "clutter_score_get_loop")
-  (return-type "gboolean")
-)
+;; From clutter-profile.h
 
-(define-method append
-  (of-object "ClutterScore")
-  (c-name "clutter_score_append")
-  (return-type "gulong")
-  (parameters
-    '("ClutterTimeline*" "parent")
-    '("ClutterTimeline*" "timeline")
-  )
-)
 
-(define-method append_at_marker
-  (of-object "ClutterScore")
-  (c-name "clutter_score_append_at_marker")
-  (return-type "gulong")
-  (parameters
-    '("ClutterTimeline*" "parent")
-    '("const-gchar*" "marker_name")
-    '("ClutterTimeline*" "timeline")
-  )
+
+;; From clutter-property-transition.h
+
+(define-function clutter_property_transition_get_type
+  (c-name "clutter_property_transition_get_type")
+  (return-type "GType")
 )
 
-(define-method remove
-  (of-object "ClutterScore")
-  (c-name "clutter_score_remove")
-  (return-type "none")
+(define-function clutter_property_transition_new
+  (c-name "clutter_property_transition_new")
+  (is-constructor-of "ClutterPropertyTransition")
+  (return-type "ClutterTransition*")
   (parameters
-    '("gulong" "id")
+    '("const-char*" "property_name")
   )
 )
 
-(define-method remove_all
-  (of-object "ClutterScore")
-  (c-name "clutter_score_remove_all")
+(define-method set_property_name
+  (of-object "ClutterPropertyTransition")
+  (c-name "clutter_property_transition_set_property_name")
   (return-type "none")
-)
-
-(define-method get_timeline
-  (of-object "ClutterScore")
-  (c-name "clutter_score_get_timeline")
-  (return-type "ClutterTimeline*")
   (parameters
-    '("gulong" "id")
+    '("const-char*" "property_name")
   )
 )
 
-(define-method list_timelines
-  (of-object "ClutterScore")
-  (c-name "clutter_score_list_timelines")
-  (return-type "GSList*")
+(define-method get_property_name
+  (of-object "ClutterPropertyTransition")
+  (c-name "clutter_property_transition_get_property_name")
+  (return-type "const-char*")
 )
 
-(define-method start
-  (of-object "ClutterScore")
-  (c-name "clutter_score_start")
-  (return-type "none")
-)
 
-(define-method stop
-  (of-object "ClutterScore")
-  (c-name "clutter_score_stop")
-  (return-type "none")
-)
 
-(define-method pause
-  (of-object "ClutterScore")
-  (c-name "clutter_score_pause")
-  (return-type "none")
-)
+;; From clutter-rotate-action.h
 
-(define-method rewind
-  (of-object "ClutterScore")
-  (c-name "clutter_score_rewind")
-  (return-type "none")
+(define-function clutter_rotate_action_get_type
+  (c-name "clutter_rotate_action_get_type")
+  (return-type "GType")
 )
 
-(define-method is_playing
-  (of-object "ClutterScore")
-  (c-name "clutter_score_is_playing")
-  (return-type "gboolean")
+(define-function clutter_rotate_action_new
+  (c-name "clutter_rotate_action_new")
+  (is-constructor-of "ClutterRotateAction")
+  (return-type "ClutterAction*")
 )
 
 
@@ -7025,7 +7398,7 @@
   (c-name "clutter_scriptable_set_id")
   (return-type "none")
   (parameters
-    '("const-gchar*" "id")
+    '("const-gchar*" "id_")
   )
 )
 
@@ -7099,6 +7472,16 @@
   )
 )
 
+(define-method load_from_resource
+  (of-object "ClutterScript")
+  (c-name "clutter_script_load_from_resource")
+  (return-type "guint")
+  (parameters
+    '("const-gchar*" "resource_path")
+    '("GError**" "error")
+  )
+)
+
 (define-method get_object
   (of-object "ClutterScript")
   (c-name "clutter_script_get_object")
@@ -7139,23 +7522,6 @@
   (return-type "none")
 )
 
-(define-method get_type_from_name
-  (of-object "ClutterScript")
-  (c-name "clutter_script_get_type_from_name")
-  (return-type "GType")
-  (parameters
-    '("const-gchar*" "type_name")
-  )
-)
-
-(define-function clutter_get_script_id
-  (c-name "clutter_get_script_id")
-  (return-type "const-gchar*")
-  (parameters
-    '("GObject*" "gobject")
-  )
-)
-
 (define-method connect_signals
   (of-object "ClutterScript")
   (c-name "clutter_script_connect_signals")
@@ -7194,163 +7560,166 @@
   )
 )
 
-
-
-;; From clutter-settings.h
-
-(define-function clutter_settings_get_type
-  (c-name "clutter_settings_get_type")
+(define-method get_type_from_name
+  (of-object "ClutterScript")
+  (c-name "clutter_script_get_type_from_name")
   (return-type "GType")
+  (parameters
+    '("const-gchar*" "type_name")
+  )
 )
 
-(define-function clutter_settings_get_default
-  (c-name "clutter_settings_get_default")
-  (return-type "ClutterSettings*")
+(define-method set_translation_domain
+  (of-object "ClutterScript")
+  (c-name "clutter_script_set_translation_domain")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "domain")
+  )
 )
 
-
-
-;; From clutter-shader-effect.h
-
-(define-function clutter_shader_effect_get_type
-  (c-name "clutter_shader_effect_get_type")
-  (return-type "GType")
+(define-method get_translation_domain
+  (of-object "ClutterScript")
+  (c-name "clutter_script_get_translation_domain")
+  (return-type "const-gchar*")
 )
 
-(define-method set_shader_source
-  (of-object "ClutterShaderEffect")
-  (c-name "clutter_shader_effect_set_shader_source")
-  (return-type "gboolean")
+(define-function clutter_get_script_id
+  (c-name "clutter_get_script_id")
+  (return-type "const-gchar*")
   (parameters
-    '("const-gchar*" "source")
+    '("GObject*" "gobject")
   )
 )
 
-(define-method set_uniform
-  (of-object "ClutterShaderEffect")
-  (c-name "clutter_shader_effect_set_uniform")
+
+
+;; From clutter-script-private.h
+
+(define-function object_info_free
+  (c-name "object_info_free")
   (return-type "none")
   (parameters
-    '("const-gchar*" "name")
-    '("GType" "gtype")
-    '("gsize" "n_values")
+    '("gpointer" "data")
   )
-  (varargs #t)
 )
 
-(define-method set_uniform_value
-  (of-object "ClutterShaderEffect")
-  (c-name "clutter_shader_effect_set_uniform_value")
+(define-function property_info_free
+  (c-name "property_info_free")
   (return-type "none")
   (parameters
-    '("const-gchar*" "name")
-    '("const-GValue*" "value")
+    '("gpointer" "data")
   )
 )
 
-(define-method get_shader
-  (of-object "ClutterShaderEffect")
-  (c-name "clutter_shader_effect_get_shader")
-  (return-type "CoglHandle")
-)
-
-(define-method get_program
-  (of-object "ClutterShaderEffect")
-  (c-name "clutter_shader_effect_get_program")
-  (return-type "CoglHandle")
-)
-
-
 
-;; From clutter-shader.h
 
-(define-function clutter_shader_error_quark
-  (c-name "clutter_shader_error_quark")
-  (return-type "GQuark")
-)
+;; From clutter-scroll-actor.h
 
-(define-function clutter_shader_get_type
-  (c-name "clutter_shader_get_type")
+(define-function clutter_scroll_actor_get_type
+  (c-name "clutter_scroll_actor_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_shader_new
-  (c-name "clutter_shader_new")
-  (is-constructor-of "ClutterShader")
-  (return-type "ClutterShader*")
+(define-function clutter_scroll_actor_new
+  (c-name "clutter_scroll_actor_new")
+  (is-constructor-of "ClutterScrollActor")
+  (return-type "ClutterActor*")
 )
 
-(define-method set_is_enabled
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_set_is_enabled")
+(define-method set_scroll_mode
+  (of-object "ClutterScrollActor")
+  (c-name "clutter_scroll_actor_set_scroll_mode")
   (return-type "none")
   (parameters
-    '("gboolean" "enabled")
+    '("ClutterScrollMode" "mode")
   )
 )
 
-(define-method get_is_enabled
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_is_enabled")
-  (return-type "gboolean")
+(define-method get_scroll_mode
+  (of-object "ClutterScrollActor")
+  (c-name "clutter_scroll_actor_get_scroll_mode")
+  (return-type "ClutterScrollMode")
 )
 
-(define-method compile
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_compile")
-  (return-type "gboolean")
+(define-method scroll_to_point
+  (of-object "ClutterScrollActor")
+  (c-name "clutter_scroll_actor_scroll_to_point")
+  (return-type "none")
   (parameters
-    '("GError**" "error")
+    '("const-ClutterPoint*" "point")
   )
 )
 
-(define-method release
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_release")
+(define-method scroll_to_rect
+  (of-object "ClutterScrollActor")
+  (c-name "clutter_scroll_actor_scroll_to_rect")
   (return-type "none")
+  (parameters
+    '("const-ClutterRect*" "rect")
+  )
 )
 
-(define-method is_compiled
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_is_compiled")
-  (return-type "gboolean")
+
+
+;; From clutter-settings.h
+
+(define-function clutter_settings_get_type
+  (c-name "clutter_settings_get_type")
+  (return-type "GType")
 )
 
-(define-method set_vertex_source
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_set_vertex_source")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "data")
-    '("gssize" "length")
-  )
+(define-function clutter_settings_get_default
+  (c-name "clutter_settings_get_default")
+  (return-type "ClutterSettings*")
 )
 
-(define-method set_fragment_source
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_set_fragment_source")
-  (return-type "none")
+
+
+;; From clutter-settings-private.h
+
+
+
+;; From clutter-shader-effect.h
+
+(define-function clutter_shader_effect_get_type
+  (c-name "clutter_shader_effect_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_shader_effect_new
+  (c-name "clutter_shader_effect_new")
+  (is-constructor-of "ClutterShaderEffect")
+  (return-type "ClutterEffect*")
   (parameters
-    '("const-gchar*" "data")
-    '("gssize" "length")
+    '("ClutterShaderType" "shader_type")
   )
 )
 
-(define-method get_vertex_source
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_vertex_source")
-  (return-type "const-gchar*")
+(define-method set_shader_source
+  (of-object "ClutterShaderEffect")
+  (c-name "clutter_shader_effect_set_shader_source")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "source")
+  )
 )
 
-(define-method get_fragment_source
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_fragment_source")
-  (return-type "const-gchar*")
+(define-method set_uniform
+  (of-object "ClutterShaderEffect")
+  (c-name "clutter_shader_effect_set_uniform")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+    '("GType" "gtype")
+    '("gsize" "n_values")
+  )
+  (varargs #t)
 )
 
-(define-method set_uniform
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_set_uniform")
+(define-method set_uniform_value
+  (of-object "ClutterShaderEffect")
+  (c-name "clutter_shader_effect_set_uniform_value")
   (return-type "none")
   (parameters
     '("const-gchar*" "name")
@@ -7358,21 +7727,15 @@
   )
 )
 
-(define-method get_cogl_program
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_cogl_program")
-  (return-type "CoglHandle")
-)
-
-(define-method get_cogl_fragment_shader
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_cogl_fragment_shader")
+(define-method get_shader
+  (of-object "ClutterShaderEffect")
+  (c-name "clutter_shader_effect_get_shader")
   (return-type "CoglHandle")
 )
 
-(define-method get_cogl_vertex_shader
-  (of-object "ClutterShader")
-  (c-name "clutter_shader_get_cogl_vertex_shader")
+(define-method get_program
+  (of-object "ClutterShaderEffect")
+  (c-name "clutter_shader_effect_get_program")
   (return-type "CoglHandle")
 )
 
@@ -7454,52 +7817,93 @@
 
 
 
-;; From clutter-stage.h
+;; From clutter-snap-constraint.h
 
-(define-function clutter_perspective_get_type
-  (c-name "clutter_perspective_get_type")
+(define-function clutter_snap_constraint_get_type
+  (c-name "clutter_snap_constraint_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_fog_get_type
-  (c-name "clutter_fog_get_type")
-  (return-type "GType")
+(define-function clutter_snap_constraint_new
+  (c-name "clutter_snap_constraint_new")
+  (is-constructor-of "ClutterSnapConstraint")
+  (return-type "ClutterConstraint*")
+  (parameters
+    '("ClutterActor*" "source")
+    '("ClutterSnapEdge" "from_edge")
+    '("ClutterSnapEdge" "to_edge")
+    '("gfloat" "offset")
+  )
 )
 
-(define-function clutter_stage_get_type
-  (c-name "clutter_stage_get_type")
-  (return-type "GType")
+(define-function clutter_snap_constraint_set_source
+  (c-name "clutter_snap_constraint_set_source")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "source")
+  )
 )
 
-(define-function clutter_stage_get_default
-  (c-name "clutter_stage_get_default")
+(define-function clutter_snap_constraint_get_source
+  (c-name "clutter_snap_constraint_get_source")
   (return-type "ClutterActor*")
+  (parameters
+  )
 )
 
-(define-function clutter_stage_new
-  (c-name "clutter_stage_new")
-  (is-constructor-of "ClutterStage")
-  (return-type "ClutterActor*")
+(define-function clutter_snap_constraint_set_edges
+  (c-name "clutter_snap_constraint_set_edges")
+  (return-type "none")
+  (parameters
+    '("ClutterSnapEdge" "from_edge")
+    '("ClutterSnapEdge" "to_edge")
+  )
 )
 
-(define-method set_color
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_set_color")
+(define-function clutter_snap_constraint_get_edges
+  (c-name "clutter_snap_constraint_get_edges")
   (return-type "none")
   (parameters
-    '("const-ClutterColor*" "color")
+    '("ClutterSnapEdge*" "from_edge")
+    '("ClutterSnapEdge*" "to_edge")
   )
 )
 
-(define-method get_color
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_get_color")
+(define-function clutter_snap_constraint_set_offset
+  (c-name "clutter_snap_constraint_set_offset")
   (return-type "none")
   (parameters
-    '("ClutterColor*" "color")
+    '("gfloat" "offset")
+  )
+)
+
+(define-function clutter_snap_constraint_get_offset
+  (c-name "clutter_snap_constraint_get_offset")
+  (return-type "gfloat")
+  (parameters
   )
 )
 
+
+
+;; From clutter-stage.h
+
+(define-function clutter_perspective_get_type
+  (c-name "clutter_perspective_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_stage_get_type
+  (c-name "clutter_stage_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_stage_new
+  (c-name "clutter_stage_new")
+  (is-constructor-of "ClutterStage")
+  (return-type "ClutterActor*")
+)
+
 (define-method set_perspective
   (of-object "ClutterStage")
   (c-name "clutter_stage_set_perspective")
@@ -7545,38 +7949,6 @@
   (return-type "none")
 )
 
-(define-method get_actor_at_pos
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_get_actor_at_pos")
-  (return-type "ClutterActor*")
-  (parameters
-    '("ClutterPickMode" "pick_mode")
-    '("gint" "x")
-    '("gint" "y")
-  )
-)
-
-(define-method read_pixels
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_read_pixels")
-  (return-type "guchar*")
-  (parameters
-    '("gint" "x")
-    '("gint" "y")
-    '("gint" "width")
-    '("gint" "height")
-  )
-)
-
-(define-method event
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_event")
-  (return-type "gboolean")
-  (parameters
-    '("ClutterEvent*" "event")
-  )
-)
-
 (define-method set_title
   (of-object "ClutterStage")
   (c-name "clutter_stage_set_title")
@@ -7607,39 +7979,56 @@
   (return-type "gboolean")
 )
 
-(define-method set_use_fog
+(define-method set_minimum_size
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_use_fog")
+  (c-name "clutter_stage_set_minimum_size")
   (return-type "none")
   (parameters
-    '("gboolean" "fog")
+    '("guint" "width")
+    '("guint" "height")
   )
 )
 
-(define-method get_use_fog
+(define-method get_minimum_size
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_use_fog")
-  (return-type "gboolean")
+  (c-name "clutter_stage_get_minimum_size")
+  (return-type "none")
+  (parameters
+    '("guint*" "width")
+    '("guint*" "height")
+  )
 )
 
-(define-method set_fog
+(define-method set_no_clear_hint
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_fog")
+  (c-name "clutter_stage_set_no_clear_hint")
   (return-type "none")
   (parameters
-    '("ClutterFog*" "fog")
+    '("gboolean" "no_clear")
   )
 )
 
-(define-method get_fog
+(define-method get_no_clear_hint
+  (of-object "ClutterStage")
+  (c-name "clutter_stage_get_no_clear_hint")
+  (return-type "gboolean")
+)
+
+(define-method set_use_alpha
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_fog")
+  (c-name "clutter_stage_set_use_alpha")
   (return-type "none")
   (parameters
-    '("ClutterFog*" "fog")
+    '("gboolean" "use_alpha")
   )
 )
 
+(define-method get_use_alpha
+  (of-object "ClutterStage")
+  (c-name "clutter_stage_get_use_alpha")
+  (return-type "gboolean")
+)
+
 (define-method set_key_focus
   (of-object "ClutterStage")
   (c-name "clutter_stage_set_key_focus")
@@ -7655,99 +8044,123 @@
   (return-type "ClutterActor*")
 )
 
-(define-method ensure_current
-  (of-object "ClutterStage")
-  (c-name "clutter_stage_ensure_current")
-  (return-type "none")
-)
-
-(define-method queue_redraw
+(define-method set_throttle_motion_events
   (of-object "ClutterStage")
-  (c-name "clutter_stage_queue_redraw")
+  (c-name "clutter_stage_set_throttle_motion_events")
   (return-type "none")
+  (parameters
+    '("gboolean" "throttle")
+  )
 )
 
-(define-method is_default
+(define-method get_throttle_motion_events
   (of-object "ClutterStage")
-  (c-name "clutter_stage_is_default")
+  (c-name "clutter_stage_get_throttle_motion_events")
   (return-type "gboolean")
 )
 
-(define-method ensure_viewport
+(define-method set_motion_events_enabled
   (of-object "ClutterStage")
-  (c-name "clutter_stage_ensure_viewport")
+  (c-name "clutter_stage_set_motion_events_enabled")
   (return-type "none")
+  (parameters
+    '("gboolean" "enabled")
+  )
 )
 
-(define-method ensure_redraw
+(define-method get_motion_events_enabled
   (of-object "ClutterStage")
-  (c-name "clutter_stage_ensure_redraw")
-  (return-type "none")
+  (c-name "clutter_stage_get_motion_events_enabled")
+  (return-type "gboolean")
 )
 
-(define-method set_throttle_motion_events
+(define-method set_accept_focus
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_throttle_motion_events")
+  (c-name "clutter_stage_set_accept_focus")
   (return-type "none")
   (parameters
-    '("gboolean" "throttle")
+    '("gboolean" "accept_focus")
   )
 )
 
-(define-method get_throttle_motion_events
+(define-method get_accept_focus
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_throttle_motion_events")
+  (c-name "clutter_stage_get_accept_focus")
   (return-type "gboolean")
 )
 
-(define-method set_use_alpha
+(define-method event
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_use_alpha")
-  (return-type "none")
+  (c-name "clutter_stage_event")
+  (return-type "gboolean")
   (parameters
-    '("gboolean" "use_alpha")
+    '("ClutterEvent*" "event")
   )
 )
 
-(define-method get_use_alpha
+(define-method get_actor_at_pos
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_use_alpha")
-  (return-type "gboolean")
+  (c-name "clutter_stage_get_actor_at_pos")
+  (return-type "ClutterActor*")
+  (parameters
+    '("ClutterPickMode" "pick_mode")
+    '("gint" "x")
+    '("gint" "y")
+  )
 )
 
-(define-method set_minimum_size
+(define-method read_pixels
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_minimum_size")
-  (return-type "none")
+  (c-name "clutter_stage_read_pixels")
+  (return-type "guchar*")
   (parameters
-    '("guint" "width")
-    '("guint" "height")
+    '("gint" "x")
+    '("gint" "y")
+    '("gint" "width")
+    '("gint" "height")
   )
 )
 
-(define-method get_minimum_size
+(define-method get_redraw_clip_bounds
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_minimum_size")
+  (c-name "clutter_stage_get_redraw_clip_bounds")
   (return-type "none")
   (parameters
-    '("guint*" "width")
-    '("guint*" "height")
+    '("cairo_rectangle_int_t*" "clip")
   )
 )
 
-(define-method set_no_clear_hint
+(define-method ensure_current
   (of-object "ClutterStage")
-  (c-name "clutter_stage_set_no_clear_hint")
+  (c-name "clutter_stage_ensure_current")
+  (return-type "none")
+)
+
+(define-method ensure_viewport
+  (of-object "ClutterStage")
+  (c-name "clutter_stage_ensure_viewport")
+  (return-type "none")
+)
+
+(define-method ensure_redraw
+  (of-object "ClutterStage")
+  (c-name "clutter_stage_ensure_redraw")
+  (return-type "none")
+)
+
+(define-method set_sync_delay
+  (of-object "ClutterStage")
+  (c-name "clutter_stage_set_sync_delay")
   (return-type "none")
   (parameters
-    '("gboolean" "no_clear")
+    '("gint" "sync_delay")
   )
 )
 
-(define-method get_no_clear_hint
+(define-method skip_sync_delay
   (of-object "ClutterStage")
-  (c-name "clutter_stage_get_no_clear_hint")
-  (return-type "gboolean")
+  (c-name "clutter_stage_skip_sync_delay")
+  (return-type "none")
 )
 
 
@@ -7782,231 +8195,245 @@
   (return-type "const-GSList*")
 )
 
-(define-method set_default_stage
-  (of-object "ClutterStageManager")
-  (c-name "clutter_stage_manager_set_default_stage")
-  (return-type "none")
-  (parameters
-    '("ClutterStage*" "stage")
-  )
-)
+
+
+;; From clutter-stage-manager-private.h
+
+
+
+;; From clutter-stage-private.h
 
 
 
 ;; From clutter-stage-window.h
 
-(define-function clutter_stage_window_get_type
-  (c-name "clutter_stage_window_get_type")
+
+
+;; From clutter-swipe-action.h
+
+(define-function clutter_swipe_action_get_type
+  (c-name "clutter_swipe_action_get_type")
   (return-type "GType")
 )
 
+(define-function clutter_swipe_action_new
+  (c-name "clutter_swipe_action_new")
+  (is-constructor-of "ClutterSwipeAction")
+  (return-type "ClutterAction*")
+)
+
 
 
-;; From clutter-state.h
+;; From clutter-table-layout.h
 
-(define-function clutter_state_get_type
-  (c-name "clutter_state_get_type")
+(define-function clutter_table_layout_get_type
+  (c-name "clutter_table_layout_get_type")
   (return-type "GType")
 )
 
-(define-function clutter_state_new
-  (c-name "clutter_state_new")
-  (is-constructor-of "ClutterState")
-  (return-type "ClutterState*")
+(define-function clutter_table_layout_new
+  (c-name "clutter_table_layout_new")
+  (is-constructor-of "ClutterTableLayout")
+  (return-type "ClutterLayoutManager*")
 )
 
-(define-method set_state
-  (of-object "ClutterState")
-  (c-name "clutter_state_set_state")
-  (return-type "ClutterTimeline*")
+(define-method pack
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_pack")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "target_state_name")
+    '("ClutterActor*" "actor")
+    '("gint" "column")
+    '("gint" "row")
   )
 )
 
-(define-method warp_to_state
-  (of-object "ClutterState")
-  (c-name "clutter_state_warp_to_state")
-  (return-type "ClutterTimeline*")
+(define-method set_column_spacing
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_set_column_spacing")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "target_state_name")
+    '("guint" "spacing")
   )
 )
 
-(define-method set_key
-  (of-object "ClutterState")
-  (c-name "clutter_state_set_key")
-  (return-type "ClutterState*")
+(define-method set_row_spacing
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_set_row_spacing")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-    '("guint" "mode")
-    '("const-GValue*" "value")
-    '("gdouble" "pre_delay")
-    '("gdouble" "post_delay")
+    '("guint" "spacing")
   )
 )
 
-(define-method set_duration
-  (of-object "ClutterState")
-  (c-name "clutter_state_set_duration")
+(define-method get_column_spacing
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_get_column_spacing")
+  (return-type "guint")
+)
+
+(define-method get_row_spacing
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_get_row_spacing")
+  (return-type "guint")
+)
+
+(define-method set_span
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_set_span")
   (return-type "none")
   (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("guint" "duration")
+    '("ClutterActor*" "actor")
+    '("gint" "column_span")
+    '("gint" "row_span")
   )
 )
 
-(define-method get_duration
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_duration")
-  (return-type "guint")
+(define-method get_span
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_get_span")
+  (return-type "none")
   (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
+    '("ClutterActor*" "actor")
+    '("gint*" "column_span")
+    '("gint*" "row_span")
   )
 )
 
-(define-method set
-  (of-object "ClutterState")
-  (c-name "clutter_state_set")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("gpointer" "first_object")
-    '("const-gchar*" "first_property_name")
-    '("gulong" "first_mode")
-  )
-  (varargs #t)
+(define-method get_row_count
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_get_row_count")
+  (return-type "gint")
 )
 
-(define-method get_states
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_states")
-  (return-type "GList*")
+(define-method get_column_count
+  (of-object "ClutterTableLayout")
+  (c-name "clutter_table_layout_get_column_count")
+  (return-type "gint")
 )
 
-(define-method get_keys
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_keys")
-  (return-type "GList*")
-  (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-  )
+
+
+;; From clutter-tap-action.h
+
+(define-function clutter_tap_action_get_type
+  (c-name "clutter_tap_action_get_type")
+  (return-type "GType")
 )
 
-(define-method remove_key
-  (of-object "ClutterState")
-  (c-name "clutter_state_remove_key")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("GObject*" "object")
-    '("const-gchar*" "property_name")
-  )
+(define-function clutter_tap_action_new
+  (c-name "clutter_tap_action_new")
+  (is-constructor-of "ClutterTapAction")
+  (return-type "ClutterAction*")
 )
 
-(define-method get_timeline
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_timeline")
-  (return-type "ClutterTimeline*")
+
+
+;; From clutter-text-buffer.h
+
+(define-function clutter_text_buffer_get_type
+  (c-name "clutter_text_buffer_get_type")
+  (return-type "GType")
 )
 
-(define-method set_animator
-  (of-object "ClutterState")
-  (c-name "clutter_state_set_animator")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
-    '("ClutterAnimator*" "animator")
-  )
+(define-function clutter_text_buffer_new
+  (c-name "clutter_text_buffer_new")
+  (is-constructor-of "ClutterTextBuffer")
+  (return-type "ClutterTextBuffer*")
 )
 
-(define-method get_animator
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_animator")
-  (return-type "ClutterAnimator*")
+(define-function clutter_text_buffer_new_with_text
+  (c-name "clutter_text_buffer_new_with_text")
+  (return-type "ClutterTextBuffer*")
   (parameters
-    '("const-gchar*" "source_state_name")
-    '("const-gchar*" "target_state_name")
+    '("const-gchar*" "text")
+    '("gssize" "text_len")
   )
 )
 
-(define-method get_state
-  (of-object "ClutterState")
-  (c-name "clutter_state_get_state")
-  (return-type "const-gchar*")
-)
-
-(define-function clutter_state_key_get_type
-  (c-name "clutter_state_key_get_type")
-  (return-type "GType")
+(define-method get_bytes
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_get_bytes")
+  (return-type "gsize")
 )
 
-(define-method get_pre_delay
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_pre_delay")
-  (return-type "gdouble")
+(define-method get_length
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_get_length")
+  (return-type "guint")
 )
 
-(define-method get_post_delay
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_post_delay")
-  (return-type "gdouble")
+(define-method get_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_get_text")
+  (return-type "const-gchar*")
 )
 
-(define-method get_mode
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_mode")
-  (return-type "gulong")
+(define-method set_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_set_text")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "chars")
+    '("gint" "n_chars")
+  )
 )
 
-(define-method get_value
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_value")
+(define-method set_max_length
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_set_max_length")
   (return-type "none")
   (parameters
-    '("GValue*" "value")
+    '("gint" "max_length")
   )
 )
 
-(define-method get_property_type
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_property_type")
-  (return-type "GType")
+(define-method get_max_length
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_get_max_length")
+  (return-type "gint")
 )
 
-(define-method get_object
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_object")
-  (return-type "GObject*")
+(define-method insert_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_insert_text")
+  (return-type "guint")
+  (parameters
+    '("guint" "position")
+    '("const-gchar*" "chars")
+    '("gint" "n_chars")
+  )
 )
 
-(define-method get_property_name
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_property_name")
-  (return-type "const-gchar*")
+(define-method delete_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_delete_text")
+  (return-type "guint")
+  (parameters
+    '("guint" "position")
+    '("gint" "n_chars")
+  )
 )
 
-(define-method get_source_state_name
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_source_state_name")
-  (return-type "const-gchar*")
+(define-method emit_inserted_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_emit_inserted_text")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+    '("const-gchar*" "chars")
+    '("guint" "n_chars")
+  )
 )
 
-(define-method get_target_state_name
-  (of-object "ClutterStateKey")
-  (c-name "clutter_state_key_get_target_state_name")
-  (return-type "const-gchar*")
+(define-method emit_deleted_text
+  (of-object "ClutterTextBuffer")
+  (c-name "clutter_text_buffer_emit_deleted_text")
+  (return-type "none")
+  (parameters
+    '("guint" "position")
+    '("guint" "n_chars")
+  )
 )
 
 
@@ -8043,6 +8470,29 @@
   )
 )
 
+(define-function clutter_text_new_with_buffer
+  (c-name "clutter_text_new_with_buffer")
+  (return-type "ClutterActor*")
+  (parameters
+    '("ClutterTextBuffer*" "buffer")
+  )
+)
+
+(define-method get_buffer
+  (of-object "ClutterText")
+  (c-name "clutter_text_get_buffer")
+  (return-type "ClutterTextBuffer*")
+)
+
+(define-method set_buffer
+  (of-object "ClutterText")
+  (c-name "clutter_text_set_buffer")
+  (return-type "none")
+  (parameters
+    '("ClutterTextBuffer*" "buffer")
+  )
+)
+
 (define-method get_text
   (of-object "ClutterText")
   (c-name "clutter_text_get_text")
@@ -8367,6 +8817,15 @@
   (return-type "guint")
 )
 
+(define-method get_cursor_rect
+  (of-object "ClutterText")
+  (c-name "clutter_text_get_cursor_rect")
+  (return-type "none")
+  (parameters
+    '("ClutterRect*" "rect")
+  )
+)
+
 (define-method set_selectable
   (of-object "ClutterText")
   (c-name "clutter_text_set_selectable")
@@ -8482,291 +8941,73 @@
   (return-type "gboolean")
 )
 
-(define-method activate
-  (of-object "ClutterText")
-  (c-name "clutter_text_activate")
-  (return-type "gboolean")
-)
-
-(define-method position_to_coords
-  (of-object "ClutterText")
-  (c-name "clutter_text_position_to_coords")
-  (return-type "gboolean")
-  (parameters
-    '("gint" "position")
-    '("gfloat*" "x")
-    '("gfloat*" "y")
-    '("gfloat*" "line_height")
-  )
-)
-
-(define-method set_preedit_string
+(define-method set_selected_text_color
   (of-object "ClutterText")
-  (c-name "clutter_text_set_preedit_string")
-  (return-type "none")
-  (parameters
-    '("const-gchar*" "preedit_str")
-    '("PangoAttrList*" "preedit_attrs")
-    '("guint" "cursor_pos")
-  )
-)
-
-
-
-;; From clutter-texture.h
-
-(define-function clutter_texture_error_quark
-  (c-name "clutter_texture_error_quark")
-  (return-type "GQuark")
-)
-
-(define-function clutter_texture_get_type
-  (c-name "clutter_texture_get_type")
-  (return-type "GType")
-)
-
-(define-function clutter_texture_new
-  (c-name "clutter_texture_new")
-  (is-constructor-of "ClutterTexture")
-  (return-type "ClutterActor*")
-)
-
-(define-function clutter_texture_new_from_file
-  (c-name "clutter_texture_new_from_file")
-  (return-type "ClutterActor*")
-  (parameters
-    '("const-gchar*" "filename")
-    '("GError**" "error")
-  )
-)
-
-(define-function clutter_texture_new_from_actor
-  (c-name "clutter_texture_new_from_actor")
-  (return-type "ClutterActor*")
-  (parameters
-    '("ClutterActor*" "actor")
-  )
-)
-
-(define-method set_from_file
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_from_file")
-  (return-type "gboolean")
-  (parameters
-    '("const-gchar*" "filename")
-    '("GError**" "error")
-  )
-)
-
-(define-method set_from_rgb_data
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_from_rgb_data")
-  (return-type "gboolean")
-  (parameters
-    '("const-guchar*" "data")
-    '("gboolean" "has_alpha")
-    '("gint" "width")
-    '("gint" "height")
-    '("gint" "rowstride")
-    '("gint" "bpp")
-    '("ClutterTextureFlags" "flags")
-    '("GError**" "error")
-  )
-)
-
-(define-method set_from_yuv_data
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_from_yuv_data")
-  (return-type "gboolean")
-  (parameters
-    '("const-guchar*" "data")
-    '("gint" "width")
-    '("gint" "height")
-    '("ClutterTextureFlags" "flags")
-    '("GError**" "error")
-  )
-)
-
-(define-method set_area_from_rgb_data
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_area_from_rgb_data")
-  (return-type "gboolean")
-  (parameters
-    '("const-guchar*" "data")
-    '("gboolean" "has_alpha")
-    '("gint" "x")
-    '("gint" "y")
-    '("gint" "width")
-    '("gint" "height")
-    '("gint" "rowstride")
-    '("gint" "bpp")
-    '("ClutterTextureFlags" "flags")
-    '("GError**" "error")
-  )
-)
-
-(define-method get_base_size
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_base_size")
-  (return-type "none")
-  (parameters
-    '("gint*" "width")
-    '("gint*" "height")
-  )
-)
-
-(define-method set_filter_quality
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_filter_quality")
+  (c-name "clutter_text_set_selected_text_color")
   (return-type "none")
   (parameters
-    '("ClutterTextureQuality" "filter_quality")
-  )
-)
-
-(define-method get_filter_quality
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_filter_quality")
-  (return-type "ClutterTextureQuality")
-)
-
-(define-method get_cogl_texture
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_cogl_texture")
-  (return-type "CoglHandle")
-)
-
-(define-method set_cogl_texture
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_cogl_texture")
-  (return-type "none")
-  (parameters
-    '("CoglHandle" "cogl_tex")
-  )
-)
-
-(define-method get_cogl_material
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_cogl_material")
-  (return-type "CoglHandle")
-)
-
-(define-method set_cogl_material
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_cogl_material")
-  (return-type "none")
-  (parameters
-    '("CoglHandle" "cogl_material")
+    '("const-ClutterColor*" "color")
   )
 )
 
-(define-method set_sync_size
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_sync_size")
+(define-method get_selected_text_color
+  (of-object "ClutterText")
+  (c-name "clutter_text_get_selected_text_color")
   (return-type "none")
   (parameters
-    '("gboolean" "sync_size")
+    '("ClutterColor*" "color")
   )
 )
 
-(define-method get_sync_size
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_sync_size")
+(define-method activate
+  (of-object "ClutterText")
+  (c-name "clutter_text_activate")
   (return-type "gboolean")
 )
 
-(define-method set_repeat
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_repeat")
-  (return-type "none")
-  (parameters
-    '("gboolean" "repeat_x")
-    '("gboolean" "repeat_y")
-  )
-)
-
-(define-method get_repeat
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_repeat")
-  (return-type "none")
-  (parameters
-    '("gboolean*" "repeat_x")
-    '("gboolean*" "repeat_y")
-  )
-)
-
-(define-method get_pixel_format
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_pixel_format")
-  (return-type "CoglPixelFormat")
-)
-
-(define-method get_max_tile_waste
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_max_tile_waste")
+(define-method coords_to_position
+  (of-object "ClutterText")
+  (c-name "clutter_text_coords_to_position")
   (return-type "gint")
-)
-
-(define-method set_keep_aspect_ratio
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_keep_aspect_ratio")
-  (return-type "none")
   (parameters
-    '("gboolean" "keep_aspect")
+    '("gfloat" "x")
+    '("gfloat" "y")
   )
 )
 
-(define-method get_keep_aspect_ratio
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_keep_aspect_ratio")
+(define-method position_to_coords
+  (of-object "ClutterText")
+  (c-name "clutter_text_position_to_coords")
   (return-type "gboolean")
-)
-
-(define-method set_load_async
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_load_async")
-  (return-type "none")
   (parameters
-    '("gboolean" "load_async")
+    '("gint" "position")
+    '("gfloat*" "x")
+    '("gfloat*" "y")
+    '("gfloat*" "line_height")
   )
 )
 
-(define-method get_load_async
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_load_async")
-  (return-type "gboolean")
-)
-
-(define-method set_load_data_async
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_load_data_async")
+(define-method set_preedit_string
+  (of-object "ClutterText")
+  (c-name "clutter_text_set_preedit_string")
   (return-type "none")
   (parameters
-    '("gboolean" "load_async")
-  )
-)
-
-(define-method get_load_data_async
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_load_data_async")
-  (return-type "gboolean")
+    '("const-gchar*" "preedit_str")
+    '("PangoAttrList*" "preedit_attrs")
+    '("guint" "cursor_pos")
+  )
 )
 
-(define-method set_pick_with_alpha
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_set_pick_with_alpha")
+(define-method get_layout_offsets
+  (of-object "ClutterText")
+  (c-name "clutter_text_get_layout_offsets")
   (return-type "none")
   (parameters
-    '("gboolean" "pick_with_alpha")
+    '("gint*" "x")
+    '("gint*" "y")
   )
 )
 
-(define-method get_pick_with_alpha
-  (of-object "ClutterTexture")
-  (c-name "clutter_texture_get_pick_with_alpha")
-  (return-type "gboolean")
-)
-
 
 
 ;; From clutter-timeline.h
@@ -8785,12 +9026,6 @@
   )
 )
 
-(define-method clone
-  (of-object "ClutterTimeline")
-  (c-name "clutter_timeline_clone")
-  (return-type "ClutterTimeline*")
-)
-
 (define-method get_duration
   (of-object "ClutterTimeline")
   (c-name "clutter_timeline_get_duration")
@@ -8839,21 +9074,36 @@
   (return-type "none")
 )
 
-(define-method set_loop
+(define-method set_auto_reverse
   (of-object "ClutterTimeline")
-  (c-name "clutter_timeline_set_loop")
+  (c-name "clutter_timeline_set_auto_reverse")
   (return-type "none")
   (parameters
-    '("gboolean" "loop")
+    '("gboolean" "reverse")
   )
 )
 
-(define-method get_loop
+(define-method get_auto_reverse
   (of-object "ClutterTimeline")
-  (c-name "clutter_timeline_get_loop")
+  (c-name "clutter_timeline_get_auto_reverse")
   (return-type "gboolean")
 )
 
+(define-method set_repeat_count
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_set_repeat_count")
+  (return-type "none")
+  (parameters
+    '("gint" "count")
+  )
+)
+
+(define-method get_repeat_count
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_repeat_count")
+  (return-type "gint")
+)
+
 (define-method rewind
   (of-object "ClutterTimeline")
   (c-name "clutter_timeline_rewind")
@@ -8917,6 +9167,16 @@
   (return-type "guint")
 )
 
+(define-method add_marker
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_add_marker")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "marker_name")
+    '("gdouble" "progress")
+  )
+)
+
 (define-method add_marker_at_time
   (of-object "ClutterTimeline")
   (c-name "clutter_timeline_add_marker_at_time")
@@ -8951,65 +9211,480 @@
   (c-name "clutter_timeline_has_marker")
   (return-type "gboolean")
   (parameters
-    '("const-gchar*" "marker_name")
+    '("const-gchar*" "marker_name")
+  )
+)
+
+(define-method advance_to_marker
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_advance_to_marker")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "marker_name")
+  )
+)
+
+(define-method set_progress_func
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_set_progress_func")
+  (return-type "none")
+  (parameters
+    '("ClutterTimelineProgressFunc" "func")
+    '("gpointer" "data")
+    '("GDestroyNotify" "notify")
+  )
+)
+
+(define-method set_progress_mode
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_set_progress_mode")
+  (return-type "none")
+  (parameters
+    '("ClutterAnimationMode" "mode")
+  )
+)
+
+(define-method get_progress_mode
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_progress_mode")
+  (return-type "ClutterAnimationMode")
+)
+
+(define-method set_step_progress
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_set_step_progress")
+  (return-type "none")
+  (parameters
+    '("gint" "n_steps")
+    '("ClutterStepMode" "step_mode")
+  )
+)
+
+(define-method get_step_progress
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_step_progress")
+  (return-type "gboolean")
+  (parameters
+    '("gint*" "n_steps")
+    '("ClutterStepMode*" "step_mode")
+  )
+)
+
+(define-method set_cubic_bezier_progress
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_set_cubic_bezier_progress")
+  (return-type "none")
+  (parameters
+    '("const-ClutterPoint*" "c_1")
+    '("const-ClutterPoint*" "c_2")
+  )
+)
+
+(define-method get_cubic_bezier_progress
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_cubic_bezier_progress")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterPoint*" "c_1")
+    '("ClutterPoint*" "c_2")
+  )
+)
+
+(define-method get_duration_hint
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_duration_hint")
+  (return-type "gint64")
+)
+
+(define-method get_current_repeat
+  (of-object "ClutterTimeline")
+  (c-name "clutter_timeline_get_current_repeat")
+  (return-type "gint")
+)
+
+
+
+;; From clutter-transition-group.h
+
+(define-function clutter_transition_group_get_type
+  (c-name "clutter_transition_group_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_transition_group_new
+  (c-name "clutter_transition_group_new")
+  (is-constructor-of "ClutterTransitionGroup")
+  (return-type "ClutterTransition*")
+)
+
+(define-method add_transition
+  (of-object "ClutterTransitionGroup")
+  (c-name "clutter_transition_group_add_transition")
+  (return-type "none")
+  (parameters
+    '("ClutterTransition*" "transition")
+  )
+)
+
+(define-method remove_transition
+  (of-object "ClutterTransitionGroup")
+  (c-name "clutter_transition_group_remove_transition")
+  (return-type "none")
+  (parameters
+    '("ClutterTransition*" "transition")
+  )
+)
+
+(define-method remove_all
+  (of-object "ClutterTransitionGroup")
+  (c-name "clutter_transition_group_remove_all")
+  (return-type "none")
+)
+
+
+
+;; From clutter-transition.h
+
+(define-function clutter_transition_get_type
+  (c-name "clutter_transition_get_type")
+  (return-type "GType")
+)
+
+(define-method set_interval
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_interval")
+  (return-type "none")
+  (parameters
+    '("ClutterInterval*" "interval")
+  )
+)
+
+(define-method get_interval
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_get_interval")
+  (return-type "ClutterInterval*")
+)
+
+(define-method set_from_value
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_from_value")
+  (return-type "none")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
+(define-method set_to_value
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_to_value")
+  (return-type "none")
+  (parameters
+    '("const-GValue*" "value")
+  )
+)
+
+(define-method set_from
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_from")
+  (return-type "none")
+  (parameters
+    '("GType" "value_type")
+  )
+  (varargs #t)
+)
+
+(define-method set_to
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_to")
+  (return-type "none")
+  (parameters
+    '("GType" "value_type")
+  )
+  (varargs #t)
+)
+
+(define-method set_animatable
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_animatable")
+  (return-type "none")
+  (parameters
+    '("ClutterAnimatable*" "animatable")
+  )
+)
+
+(define-method get_animatable
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_get_animatable")
+  (return-type "ClutterAnimatable*")
+)
+
+(define-method set_remove_on_complete
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_set_remove_on_complete")
+  (return-type "none")
+  (parameters
+    '("gboolean" "remove_complete")
+  )
+)
+
+(define-method get_remove_on_complete
+  (of-object "ClutterTransition")
+  (c-name "clutter_transition_get_remove_on_complete")
+  (return-type "gboolean")
+)
+
+
+
+;; From clutter-types.h
+
+(define-function clutter_point_get_type
+  (c-name "clutter_point_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_point_zero
+  (c-name "clutter_point_zero")
+  (return-type "const-ClutterPoint*")
+)
+
+(define-function clutter_point_alloc
+  (c-name "clutter_point_alloc")
+  (return-type "ClutterPoint*")
+)
+
+(define-method init
+  (of-object "ClutterPoint")
+  (c-name "clutter_point_init")
+  (return-type "ClutterPoint*")
+  (parameters
+    '("float" "x")
+    '("float" "y")
+  )
+)
+
+(define-method copy
+  (of-object "ClutterPoint")
+  (c-name "clutter_point_copy")
+  (return-type "ClutterPoint*")
+)
+
+(define-method free
+  (of-object "ClutterPoint")
+  (c-name "clutter_point_free")
+  (return-type "none")
+)
+
+(define-method equals
+  (of-object "ClutterPoint")
+  (c-name "clutter_point_equals")
+  (return-type "gboolean")
+  (parameters
+    '("const-ClutterPoint*" "b")
+  )
+)
+
+(define-method distance
+  (of-object "ClutterPoint")
+  (c-name "clutter_point_distance")
+  (return-type "float")
+  (parameters
+    '("const-ClutterPoint*" "b")
+    '("float*" "x_distance")
+    '("float*" "y_distance")
+  )
+)
+
+(define-function clutter_size_get_type
+  (c-name "clutter_size_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_size_alloc
+  (c-name "clutter_size_alloc")
+  (return-type "ClutterSize*")
+)
+
+(define-method init
+  (of-object "ClutterSize")
+  (c-name "clutter_size_init")
+  (return-type "ClutterSize*")
+  (parameters
+    '("float" "width")
+    '("float" "height")
+  )
+)
+
+(define-method copy
+  (of-object "ClutterSize")
+  (c-name "clutter_size_copy")
+  (return-type "ClutterSize*")
+)
+
+(define-method free
+  (of-object "ClutterSize")
+  (c-name "clutter_size_free")
+  (return-type "none")
+)
+
+(define-method equals
+  (of-object "ClutterSize")
+  (c-name "clutter_size_equals")
+  (return-type "gboolean")
+  (parameters
+    '("const-ClutterSize*" "b")
+  )
+)
+
+(define-function clutter_rect_get_type
+  (c-name "clutter_rect_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_rect_zero
+  (c-name "clutter_rect_zero")
+  (return-type "const-ClutterRect*")
+)
+
+(define-function clutter_rect_alloc
+  (c-name "clutter_rect_alloc")
+  (return-type "ClutterRect*")
+)
+
+(define-method init
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_init")
+  (return-type "ClutterRect*")
+  (parameters
+    '("float" "x")
+    '("float" "y")
+    '("float" "width")
+    '("float" "height")
+  )
+)
+
+(define-method copy
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_copy")
+  (return-type "ClutterRect*")
+)
+
+(define-method free
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_free")
+  (return-type "none")
+)
+
+(define-method equals
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_equals")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterRect*" "b")
+  )
+)
+
+(define-method normalize
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_normalize")
+  (return-type "ClutterRect*")
+)
+
+(define-method get_center
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_get_center")
+  (return-type "none")
+  (parameters
+    '("ClutterPoint*" "center")
+  )
+)
+
+(define-method contains_point
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_contains_point")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterPoint*" "point")
   )
 )
 
-(define-method advance_to_marker
-  (of-object "ClutterTimeline")
-  (c-name "clutter_timeline_advance_to_marker")
-  (return-type "none")
+(define-method contains_rect
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_contains_rect")
+  (return-type "gboolean")
   (parameters
-    '("const-gchar*" "marker_name")
+    '("ClutterRect*" "b")
   )
 )
 
-(define-method do_tick
-  (of-object "ClutterTimeline")
-  (c-name "clutter_timeline_do_tick")
+(define-method union
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_union")
   (return-type "none")
   (parameters
-    '("GTimeVal*" "tick_time")
+    '("ClutterRect*" "b")
+    '("ClutterRect*" "res")
   )
 )
 
-
-
-;; From clutter-timeout-pool.h
-
-(define-function clutter_timeout_pool_new
-  (c-name "clutter_timeout_pool_new")
-  (is-constructor-of "ClutterTimeoutPool")
-  (return-type "ClutterTimeoutPool*")
+(define-method intersection
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_intersection")
+  (return-type "gboolean")
   (parameters
-    '("gint" "priority")
+    '("ClutterRect*" "b")
+    '("ClutterRect*" "res")
   )
 )
 
-(define-method add
-  (of-object "ClutterTimeoutPool")
-  (c-name "clutter_timeout_pool_add")
-  (return-type "guint")
+(define-method offset
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_offset")
+  (return-type "none")
   (parameters
-    '("guint" "fps")
-    '("GSourceFunc" "func")
-    '("gpointer" "data")
-    '("GDestroyNotify" "notify")
+    '("float" "d_x")
+    '("float" "d_y")
   )
 )
 
-(define-method remove
-  (of-object "ClutterTimeoutPool")
-  (c-name "clutter_timeout_pool_remove")
+(define-method inset
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_inset")
   (return-type "none")
   (parameters
-    '("guint" "id")
+    '("float" "d_x")
+    '("float" "d_y")
   )
 )
 
+(define-method clamp_to_pixel
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_clamp_to_pixel")
+  (return-type "none")
+)
+
+(define-method get_x
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_get_x")
+  (return-type "float")
+)
 
+(define-method get_y
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_get_y")
+  (return-type "float")
+)
 
-;; From clutter-types.h
+(define-method get_width
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_get_width")
+  (return-type "float")
+)
+
+(define-method get_height
+  (of-object "ClutterRect")
+  (c-name "clutter_rect_get_height")
+  (return-type "float")
+)
 
 (define-function clutter_vertex_get_type
   (c-name "clutter_vertex_get_type")
@@ -9027,6 +9702,22 @@
   )
 )
 
+(define-function clutter_vertex_alloc
+  (c-name "clutter_vertex_alloc")
+  (return-type "ClutterVertex*")
+)
+
+(define-method init
+  (of-object "ClutterVertex")
+  (c-name "clutter_vertex_init")
+  (return-type "ClutterVertex*")
+  (parameters
+    '("gfloat" "x")
+    '("gfloat" "y")
+    '("gfloat" "z")
+  )
+)
+
 (define-method copy
   (of-object "ClutterVertex")
   (c-name "clutter_vertex_copy")
@@ -9065,6 +9756,35 @@
   )
 )
 
+(define-function clutter_actor_box_alloc
+  (c-name "clutter_actor_box_alloc")
+  (return-type "ClutterActorBox*")
+)
+
+(define-method init
+  (of-object "ClutterActorBox")
+  (c-name "clutter_actor_box_init")
+  (return-type "ClutterActorBox*")
+  (parameters
+    '("gfloat" "x_1")
+    '("gfloat" "y_1")
+    '("gfloat" "x_2")
+    '("gfloat" "y_2")
+  )
+)
+
+(define-method init_rect
+  (of-object "ClutterActorBox")
+  (c-name "clutter_actor_box_init_rect")
+  (return-type "none")
+  (parameters
+    '("gfloat" "x")
+    '("gfloat" "y")
+    '("gfloat" "width")
+    '("gfloat" "height")
+  )
+)
+
 (define-method copy
   (of-object "ClutterActorBox")
   (c-name "clutter_actor_box_copy")
@@ -9172,47 +9892,241 @@
   (return-type "none")
 )
 
-(define-function clutter_geometry_get_type
-  (c-name "clutter_geometry_get_type")
-  (return-type "GType")
+(define-method union
+  (of-object "ClutterActorBox")
+  (c-name "clutter_actor_box_union")
+  (return-type "none")
+  (parameters
+    '("const-ClutterActorBox*" "b")
+    '("ClutterActorBox*" "result")
+  )
 )
 
-(define-method union
-  (of-object "ClutterGeometry")
-  (c-name "clutter_geometry_union")
+(define-method set_origin
+  (of-object "ClutterActorBox")
+  (c-name "clutter_actor_box_set_origin")
   (return-type "none")
   (parameters
-    '("const-ClutterGeometry*" "geometry_b")
-    '("ClutterGeometry*" "result")
+    '("gfloat" "x")
+    '("gfloat" "y")
+  )
+)
+
+(define-method set_size
+  (of-object "ClutterActorBox")
+  (c-name "clutter_actor_box_set_size")
+  (return-type "none")
+  (parameters
+    '("gfloat" "width")
+    '("gfloat" "height")
   )
 )
 
-(define-function clutter_knot_get_type
-  (c-name "clutter_knot_get_type")
+(define-function clutter_path_node_get_type
+  (c-name "clutter_path_node_get_type")
   (return-type "GType")
 )
 
 (define-method copy
-  (of-object "ClutterKnot")
-  (c-name "clutter_knot_copy")
-  (return-type "ClutterKnot*")
+  (of-object "ClutterPathNode")
+  (c-name "clutter_path_node_copy")
+  (return-type "ClutterPathNode*")
 )
 
 (define-method free
-  (of-object "ClutterKnot")
-  (c-name "clutter_knot_free")
+  (of-object "ClutterPathNode")
+  (c-name "clutter_path_node_free")
   (return-type "none")
 )
 
 (define-method equal
-  (of-object "ClutterKnot")
-  (c-name "clutter_knot_equal")
+  (of-object "ClutterPathNode")
+  (c-name "clutter_path_node_equal")
+  (return-type "gboolean")
+  (parameters
+    '("const-ClutterPathNode*" "node_b")
+  )
+)
+
+(define-function clutter_paint_volume_get_type
+  (c-name "clutter_paint_volume_get_type")
+  (return-type "GType")
+)
+
+(define-method copy
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_copy")
+  (return-type "ClutterPaintVolume*")
+)
+
+(define-method free
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_free")
+  (return-type "none")
+)
+
+(define-method set_origin
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_set_origin")
+  (return-type "none")
+  (parameters
+    '("const-ClutterVertex*" "origin")
+  )
+)
+
+(define-method get_origin
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_get_origin")
+  (return-type "none")
+  (parameters
+    '("ClutterVertex*" "vertex")
+  )
+)
+
+(define-method set_width
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_set_width")
+  (return-type "none")
+  (parameters
+    '("gfloat" "width")
+  )
+)
+
+(define-method get_width
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_get_width")
+  (return-type "gfloat")
+)
+
+(define-method set_height
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_set_height")
+  (return-type "none")
+  (parameters
+    '("gfloat" "height")
+  )
+)
+
+(define-method get_height
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_get_height")
+  (return-type "gfloat")
+)
+
+(define-method set_depth
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_set_depth")
+  (return-type "none")
+  (parameters
+    '("gfloat" "depth")
+  )
+)
+
+(define-method get_depth
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_get_depth")
+  (return-type "gfloat")
+)
+
+(define-method union
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_union")
+  (return-type "none")
+  (parameters
+    '("const-ClutterPaintVolume*" "another_pv")
+  )
+)
+
+(define-method union_box
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_union_box")
+  (return-type "none")
+  (parameters
+    '("const-ClutterActorBox*" "box")
+  )
+)
+
+(define-method set_from_allocation
+  (of-object "ClutterPaintVolume")
+  (c-name "clutter_paint_volume_set_from_allocation")
   (return-type "gboolean")
   (parameters
-    '("const-ClutterKnot*" "knot_b")
+    '("ClutterActor*" "actor")
+  )
+)
+
+(define-function clutter_margin_get_type
+  (c-name "clutter_margin_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_margin_new
+  (c-name "clutter_margin_new")
+  (is-constructor-of "ClutterMargin")
+  (return-type "ClutterMargin*")
+)
+
+(define-method copy
+  (of-object "ClutterMargin")
+  (c-name "clutter_margin_copy")
+  (return-type "ClutterMargin*")
+)
+
+(define-method free
+  (of-object "ClutterMargin")
+  (c-name "clutter_margin_free")
+  (return-type "none")
+)
+
+(define-function clutter_interval_register_progress_func
+  (c-name "clutter_interval_register_progress_func")
+  (return-type "none")
+  (parameters
+    '("GType" "value_type")
+    '("ClutterProgressFunc" "func")
+  )
+)
+
+(define-function clutter_matrix_get_type
+  (c-name "clutter_matrix_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_matrix_alloc
+  (c-name "clutter_matrix_alloc")
+  (return-type "ClutterMatrix*")
+)
+
+(define-method init_identity
+  (of-object "ClutterMatrix")
+  (c-name "clutter_matrix_init_identity")
+  (return-type "ClutterMatrix*")
+)
+
+(define-method init_from_array
+  (of-object "ClutterMatrix")
+  (c-name "clutter_matrix_init_from_array")
+  (return-type "ClutterMatrix*")
+  (parameters
+    '("const-float" "values[16]")
+  )
+)
+
+(define-method init_from_matrix
+  (of-object "ClutterMatrix")
+  (c-name "clutter_matrix_init_from_matrix")
+  (return-type "ClutterMatrix*")
+  (parameters
+    '("const-ClutterMatrix*" "b")
   )
 )
 
+(define-method free
+  (of-object "ClutterMatrix")
+  (c-name "clutter_matrix_free")
+  (return-type "none")
+)
+
 
 
 ;; From clutter-units.h
@@ -9361,18 +10275,6 @@
 
 
 
-;; From clutter-util.h
-
-(define-function clutter_util_next_p2
-  (c-name "clutter_util_next_p2")
-  (return-type "gint")
-  (parameters
-    '("gint" "a")
-  )
-)
-
-
-
 ;; From clutter-version.h
 
 (define-function clutter_check_version
@@ -9385,4 +10287,64 @@
   )
 )
 
+(define-function clutter_check_windowing_backend
+  (c-name "clutter_check_windowing_backend")
+  (return-type "gboolean")
+  (parameters
+    '("const-char*" "backend_type")
+  )
+)
+
+
+
+;; From clutter-zoom-action.h
+
+(define-function clutter_zoom_action_get_type
+  (c-name "clutter_zoom_action_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_zoom_action_new
+  (c-name "clutter_zoom_action_new")
+  (is-constructor-of "ClutterZoomAction")
+  (return-type "ClutterAction*")
+)
+
+(define-method set_zoom_axis
+  (of-object "ClutterZoomAction")
+  (c-name "clutter_zoom_action_set_zoom_axis")
+  (return-type "none")
+  (parameters
+    '("ClutterZoomAxis" "axis")
+  )
+)
+
+(define-method get_zoom_axis
+  (of-object "ClutterZoomAction")
+  (c-name "clutter_zoom_action_get_zoom_axis")
+  (return-type "ClutterZoomAxis")
+)
+
+(define-method get_focal_point
+  (of-object "ClutterZoomAction")
+  (c-name "clutter_zoom_action_get_focal_point")
+  (return-type "none")
+  (parameters
+    '("ClutterPoint*" "point")
+  )
+)
+
+(define-method get_transformed_focal_point
+  (of-object "ClutterZoomAction")
+  (c-name "clutter_zoom_action_get_transformed_focal_point")
+  (return-type "none")
+  (parameters
+    '("ClutterPoint*" "point")
+  )
+)
+
+
+
+;; From config.h
+
 
diff --git a/clutter/src/clutter_others.defs b/clutter/src/clutter_others.defs
index 2d75ed2..8e18abe 100644
--- a/clutter/src/clutter_others.defs
+++ b/clutter/src/clutter_others.defs
@@ -17,6 +17,91 @@
   )
 )
 
+; ClutterActor
+; added these as overrides because they're parsed as ClutterEvent, but aren't
+; compiled.
+
+(define-signal button-press-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterButtonEvent*" "p0")
+  )
+)
+
+(define-signal button-release-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterButtonEvent*" "p0")
+  )
+)
+
+(define-signal scroll-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterScrollEvent*" "p0")
+  )
+)
+
+(define-signal key-press-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterKeyEvent*" "p0")
+  )
+)
+
+(define-signal key-release-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterKeyEvent*" "p0")
+  )
+)
+
+(define-signal motion-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterMotionEvent*" "p0")
+  )
+)
+
+(define-signal enter-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterCrossingEvent*" "p0")
+  )
+)
+
+(define-signal leave-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterCrossingEvent*" "p0")
+  )
+)
+
+(define-signal touch-event
+  (of-object "ClutterActor")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterEvent*" "p0")
+  )
+)
+
 ; ClutterContainer
 
 (define-signal actor-added
@@ -46,3 +131,202 @@
     '("GParamSpec*" "pspec")
   )
 )
+
+;; ClutterConstraint
+
+(define-function clutter_constraint_get_type
+  (c-name "clutter_constraint_get_type")
+  (return-type "GType")
+)
+
+(define-method add_constraint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_constraint")
+  (return-type "none")
+  (parameters
+	'("ClutterConstraint*" "constraint")
+  )
+)
+
+(define-method add_constraint_with_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_add_constraint_with_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+	'("ClutterConstraint*" "constraint")
+  )
+)
+
+(define-method remove_constraint
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_constraint")
+  (return-type "none")
+  (parameters
+	'("ClutterConstraint*" "constraint")
+  )
+)
+
+(define-method remove_constraint_by_name
+  (of-object "ClutterActor")
+  (c-name "clutter_actor_remove_constraint_by_name")
+  (return-type "none")
+  (parameters
+    '("const-gchar*" "name")
+  )
+)
+
+;; From clutter-bind-constraint.h
+
+(define-function clutter_bind_constraint_get_type
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_bind_constraint_new
+  (c-name "clutter_bind_constraint_new")
+  (is-constructor-of "ClutterBindConstraint")
+  (return-type "ClutterConstraint*")
+  (parameters
+    '("ClutterActor*" "source")
+    '("ClutterBindCoordinate" "coordinate")
+    '("gfloat" "offset")
+  )
+)
+
+(define-function clutter_bind_constraint_set_source
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_set_source")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "source")
+  )
+)
+
+(define-function clutter_bind_constraint_get_source
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_get_source")
+  (return-type "ClutterActor*")
+  (parameters
+  )
+)
+
+(define-function clutter_bind_constraint_set_coordinate
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_set_coordinate")
+  (return-type "none")
+  (parameters
+    '("ClutterBindCoordinate" "coordinate")
+  )
+)
+
+(define-function clutter_bind_constraint_get_coordinate
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_get_coordinate")
+  (return-type "ClutterBindCoordinate")
+  (parameters
+  )
+)
+
+(define-function clutter_bind_constraint_set_offset
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_set_offset")
+  (return-type "none")
+  (parameters
+    '("gfloat" "offset")
+  )
+)
+
+(define-function clutter_bind_constraint_get_offset
+  (of-object "ClutterBindConstraint")
+  (c-name "clutter_bind_constraint_get_offset")
+  (return-type "gfloat")
+  (parameters
+  )
+)
+
+;; From ClutterCanvas
+
+(define-signal draw
+  (of-object "ClutterCanvas")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("cairo_t*" "p0")
+    '("gint" "p1")
+    '("gint" "p2")
+  )
+)
+;; From clutter-snap-constraint.h
+
+(define-function clutter_snap_constraint_get_type
+  (c-name "clutter_snap_constraint_get_type")
+  (return-type "GType")
+)
+
+(define-function clutter_snap_constraint_new
+  (c-name "clutter_snap_constraint_new")
+  (is-constructor-of "ClutterSnapConstraint")
+  (return-type "ClutterConstraint*")
+  (parameters
+    '("ClutterActor*" "source")
+    '("ClutterSnapEdge" "from_edge")
+    '("ClutterSnapEdge" "to_edge")
+    '("gfloat" "offset")
+  )
+)
+
+(define-function clutter_snap_constraint_set_source
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_set_source")
+  (return-type "none")
+  (parameters
+    '("ClutterActor*" "source")
+  )
+)
+
+(define-function clutter_snap_constraint_get_source
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_get_source")
+  (return-type "ClutterActor*")
+  (parameters
+  )
+)
+
+(define-function clutter_snap_constraint_set_edges
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_set_edges")
+  (return-type "none")
+  (parameters
+    '("ClutterSnapEdge" "from_edge")
+    '("ClutterSnapEdge" "to_edge")
+  )
+)
+
+(define-function clutter_snap_constraint_get_edges
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_get_edges")
+  (return-type "none")
+  (parameters
+    '("ClutterSnapEdge*" "from_edge")
+    '("ClutterSnapEdge*" "to_edge")
+  )
+)
+
+(define-function clutter_snap_constraint_set_offset
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_set_offset")
+  (return-type "none")
+  (parameters
+    '("gfloat" "offset")
+  )
+)
+
+(define-function clutter_snap_constraint_get_offset
+  (of-object "ClutterSnapConstraint")
+  (c-name "clutter_snap_constraint_get_offset")
+  (return-type "gfloat")
+  (parameters
+  )
+)
diff --git a/clutter/src/clutter_signals.defs b/clutter/src/clutter_signals.defs
index 34cd827..c52af47 100644
--- a/clutter/src/clutter_signals.defs
+++ b/clutter/src/clutter_signals.defs
@@ -1,3 +1,5 @@
+;; From ClutterAction
+
 ;; From ClutterActor
 
 (define-signal destroy
@@ -51,7 +53,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal button-press-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -61,7 +62,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal button-release-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -71,7 +71,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal scroll-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -81,7 +80,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal key-press-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -91,7 +89,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal key-release-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -101,7 +98,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal motion-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -123,7 +119,6 @@
   (when "last")
 )
 
-;; Hand-edited to use more specific event type
 (define-signal enter-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -133,7 +128,6 @@
   )
 )
 
-;; Hand-edited to use more specific event type
 (define-signal leave-event
   (of-object "ClutterActor")
   (return-type "gboolean")
@@ -152,40 +146,50 @@
   )
 )
 
-(define-signal paint
+(define-signal realize
   (of-object "ClutterActor")
   (return-type "void")
   (when "last")
 )
 
-(define-signal realize
+(define-signal unrealize
   (of-object "ClutterActor")
   (return-type "void")
   (when "last")
 )
 
-(define-signal unrealize
+(define-signal allocation-changed
+  (of-object "ClutterActor")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActorBox*" "p0")
+    '("ClutterAllocationFlags" "p1")
+  )
+)
+
+(define-signal transitions-completed
   (of-object "ClutterActor")
   (return-type "void")
   (when "last")
 )
 
-(define-signal pick
+(define-signal transition-stopped
   (of-object "ClutterActor")
   (return-type "void")
   (when "last")
   (parameters
-    '("ClutterColor*" "p0")
+    '("const-gchar*" "p0")
+    '("gboolean" "p1")
   )
 )
 
-(define-signal allocation-changed
+(define-signal touch-event
   (of-object "ClutterActor")
-  (return-type "void")
+  (return-type "gboolean")
   (when "last")
   (parameters
-    '("ClutterActorBox*" "p0")
-    '("ClutterAllocationFlags" "p1")
+    '("ClutterEvent*" "p0")
   )
 )
 
@@ -234,6 +238,24 @@
   (construct-only #f)
 )
 
+(define-property position
+  (of-object "ClutterActor")
+  (prop-type "GParamBoxed")
+  (docs "The position of the origin of the actor")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property size
+  (of-object "ClutterActor")
+  (prop-type "GParamBoxed")
+  (docs "The size of the actor")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 (define-property fixed-x
   (of-object "ClutterActor")
   (prop-type "GParamFloat")
@@ -351,19 +373,19 @@
   (construct-only #f)
 )
 
-(define-property depth
+(define-property z-position
   (of-object "ClutterActor")
   (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
+  (docs "The actor's position on the Z axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property clip
+(define-property clip-rect
   (of-object "ClutterActor")
   (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
+  (docs "The visible region of the actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
@@ -396,10 +418,19 @@
   (construct-only #f)
 )
 
+(define-property offscreen-redirect
+  (of-object "ClutterActor")
+  (prop-type "GParamFlags")
+  (docs "Flags controlling when to flatten the actor into a single image")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 (define-property visible
   (of-object "ClutterActor")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
+  (docs "Whether the actor is visible or not")
   (readable #t)
   (writable #t)
   (construct-only #f)
@@ -432,46 +463,46 @@
   (construct-only #f)
 )
 
-(define-property scale-x
+(define-property pivot-point
   (of-object "ClutterActor")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
+  (prop-type "GParamBoxed")
+  (docs "The point around which the scaling and rotation occur")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-y
+(define-property pivot-point-z
   (of-object "ClutterActor")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
+  (prop-type "GParamFloat")
+  (docs "Z component of the pivot point")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-x
+(define-property scale-x
   (of-object "ClutterActor")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
+  (prop-type "GParamDouble")
+  (docs "Scale factor on the X axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-y
+(define-property scale-y
   (of-object "ClutterActor")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
+  (prop-type "GParamDouble")
+  (docs "Scale factor on the Y axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-gravity
+(define-property scale-z
   (of-object "ClutterActor")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
+  (prop-type "GParamDouble")
+  (docs "Scale factor on the Z axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
@@ -504,75 +535,66 @@
   (construct-only #f)
 )
 
-(define-property rotation-center-x
-  (of-object "ClutterActor")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-y
+(define-property translation-x
   (of-object "ClutterActor")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
+  (prop-type "GParamFloat")
+  (docs "Translation along the X axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-z
+(define-property translation-y
   (of-object "ClutterActor")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
+  (prop-type "GParamFloat")
+  (docs "Translation along the Y axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-z-gravity
+(define-property translation-z
   (of-object "ClutterActor")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
+  (prop-type "GParamFloat")
+  (docs "Translation along the Z axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property anchor-x
+(define-property transform
   (of-object "ClutterActor")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
+  (prop-type "GParamBoxed")
+  (docs "Transformation matrix")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property anchor-y
+(define-property transform-set
   (of-object "ClutterActor")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
+  (prop-type "GParamBoolean")
+  (docs "Whether the transform property is set")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property anchor-gravity
+(define-property child-transform
   (of-object "ClutterActor")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
+  (prop-type "GParamBoxed")
+  (docs "Children transformation matrix")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property show-on-set-parent
+(define-property child-transform-set
   (of-object "ClutterActor")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
+  (docs "Whether the child-transform property is set")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
@@ -594,4587 +616,1952 @@
   (construct-only #f)
 )
 
-
-;; From ClutterAlpha
-
-(define-property timeline
-  (of-object "ClutterAlpha")
+(define-property actions
+  (of-object "ClutterActor")
   (prop-type "GParamObject")
-  (docs "Timeline used by the alpha")
-  (readable #t)
+  (docs "Adds an action to the actor")
+  (readable #f)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property alpha
-  (of-object "ClutterAlpha")
-  (prop-type "GParamDouble")
-  (docs "Alpha value")
-  (readable #t)
-  (writable #f)
+(define-property constraints
+  (of-object "ClutterActor")
+  (prop-type "GParamObject")
+  (docs "Adds a constraint to the actor")
+  (readable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property mode
-  (of-object "ClutterAlpha")
-  (prop-type "GParamULong")
-  (docs "Progress mode")
-  (readable #t)
+(define-property effect
+  (of-object "ClutterActor")
+  (prop-type "GParamObject")
+  (docs "Add an effect to be applied on the actor")
+  (readable #f)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterAnimation
-
-(define-signal completed
-  (of-object "ClutterAnimation")
-  (return-type "void")
-  (when "last")
+(define-property layout-manager
+  (of-object "ClutterActor")
+  (prop-type "GParamObject")
+  (docs "The object controlling the layout of an actor's children")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
 )
 
-(define-signal started
-  (of-object "ClutterAnimation")
-  (return-type "void")
-  (when "last")
+(define-property x-expand
+  (of-object "ClutterActor")
+  (prop-type "GParamBoolean")
+  (docs "Whether extra horizontal space should be assigned to the actor")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
 )
 
-(define-property object
-  (of-object "ClutterAnimation")
-  (prop-type "GParamObject")
-  (docs "Object to which the animation applies")
+(define-property y-expand
+  (of-object "ClutterActor")
+  (prop-type "GParamBoolean")
+  (docs "Whether extra vertical space should be assigned to the actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property mode
-  (of-object "ClutterAnimation")
-  (prop-type "GParamULong")
-  (docs "The mode of the animation")
+(define-property x-align
+  (of-object "ClutterActor")
+  (prop-type "GParamEnum")
+  (docs "The alignment of the actor on the X axis within its allocation")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property duration
-  (of-object "ClutterAnimation")
-  (prop-type "GParamUInt")
-  (docs "Duration of the animation, in milliseconds")
+(define-property y-align
+  (of-object "ClutterActor")
+  (prop-type "GParamEnum")
+  (docs "The alignment of the actor on the Y axis within its allocation")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property loop
-  (of-object "ClutterAnimation")
-  (prop-type "GParamBoolean")
-  (docs "Whether the animation should loop")
+(define-property margin-top
+  (of-object "ClutterActor")
+  (prop-type "GParamFloat")
+  (docs "Extra space at the top")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property timeline
-  (of-object "ClutterAnimation")
-  (prop-type "GParamObject")
-  (docs "The timeline used by the animation")
+(define-property margin-bottom
+  (of-object "ClutterActor")
+  (prop-type "GParamFloat")
+  (docs "Extra space at the bottom")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property alpha
-  (of-object "ClutterAnimation")
-  (prop-type "GParamObject")
-  (docs "The alpha used by the animation")
+(define-property margin-left
+  (of-object "ClutterActor")
+  (prop-type "GParamFloat")
+  (docs "Extra space at the left")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterAnimator
-
-(define-property duration
-  (of-object "ClutterAnimator")
-  (prop-type "GParamUInt")
-  (docs "The duration of the animation")
+(define-property margin-right
+  (of-object "ClutterActor")
+  (prop-type "GParamFloat")
+  (docs "Extra space at the right")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property timeline
-  (of-object "ClutterAnimator")
-  (prop-type "GParamObject")
-  (docs "The timeline of the animation")
+(define-property background-color
+  (of-object "ClutterActor")
+  (prop-type "ClutterParamSpecColor")
+  (docs "The actor's background color")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBackend
-
-(define-signal resolution-changed
-  (of-object "ClutterBackend")
-  (return-type "void")
-  (when "first")
+(define-property background-color-set
+  (of-object "ClutterActor")
+  (prop-type "GParamBoolean")
+  (docs "Whether the background color is set")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
 )
 
-(define-signal font-changed
-  (of-object "ClutterBackend")
-  (return-type "void")
-  (when "first")
+(define-property first-child
+  (of-object "ClutterActor")
+  (prop-type "GParamObject")
+  (docs "The actor's first child")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
 )
 
-;; From ClutterBehaviourDepth
-
-(define-property alpha
-  (of-object "ClutterBehaviourDepth")
+(define-property last-child
+  (of-object "ClutterActor")
   (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+  (docs "The actor's last child")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property depth-start
-  (of-object "ClutterBehaviourDepth")
-  (prop-type "GParamInt")
-  (docs "Initial depth to apply")
+(define-property content
+  (of-object "ClutterActor")
+  (prop-type "GParamObject")
+  (docs "Delegate object for painting the actor's content")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property depth-end
-  (of-object "ClutterBehaviourDepth")
-  (prop-type "GParamInt")
-  (docs "Final depth to apply")
+(define-property content-gravity
+  (of-object "ClutterActor")
+  (prop-type "GParamEnum")
+  (docs "Alignment of the actor's content")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBehaviourEllipse
-
-(define-property alpha
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+(define-property content-box
+  (of-object "ClutterActor")
+  (prop-type "GParamBoxed")
+  (docs "The bounding box of the actor's content")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property center
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamBoxed")
-  (docs "Center of ellipse")
+(define-property minification-filter
+  (of-object "ClutterActor")
+  (prop-type "GParamEnum")
+  (docs "The filter used when reducing the size of the content")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property width
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamInt")
-  (docs "Width of the ellipse")
+(define-property magnification-filter
+  (of-object "ClutterActor")
+  (prop-type "GParamEnum")
+  (docs "The filter used when increasing the size of the content")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property height
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamInt")
-  (docs "Height of ellipse")
+(define-property content-repeat
+  (of-object "ClutterActor")
+  (prop-type "GParamFlags")
+  (docs "The repeat policy for the actor's content")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-start
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamDouble")
-  (docs "Initial angle")
+;; From ClutterActorMeta
+
+(define-property actor
+  (of-object "ClutterActorMeta")
+  (prop-type "GParamObject")
+  (docs "The actor attached to the meta")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property angle-end
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamDouble")
-  (docs "Final angle")
+(define-property name
+  (of-object "ClutterActorMeta")
+  (prop-type "GParamString")
+  (docs "The name of the meta")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-tilt-x
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamDouble")
-  (docs "Tilt of the ellipse around x axis")
+(define-property enabled
+  (of-object "ClutterActorMeta")
+  (prop-type "GParamBoolean")
+  (docs "Whether the meta is enabled")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-tilt-y
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamDouble")
-  (docs "Tilt of the ellipse around y axis")
+;; From ClutterAlignConstraint
+
+(define-property source
+  (of-object "ClutterAlignConstraint")
+  (prop-type "GParamObject")
+  (docs "The source of the alignment")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-tilt-z
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamDouble")
-  (docs "Tilt of the ellipse around z axis")
+(define-property align-axis
+  (of-object "ClutterAlignConstraint")
+  (prop-type "GParamEnum")
+  (docs "The axis to align the position to")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property direction
-  (of-object "ClutterBehaviourEllipse")
-  (prop-type "GParamEnum")
-  (docs "Direction of rotation")
+(define-property factor
+  (of-object "ClutterAlignConstraint")
+  (prop-type "GParamFloat")
+  (docs "The alignment factor, between 0.0 and 1.0")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBehaviour
+;; From ClutterAnimatable
+
+;; From ClutterBackend
 
-(define-signal applied
-  (of-object "ClutterBehaviour")
+(define-signal resolution-changed
+  (of-object "ClutterBackend")
   (return-type "void")
   (when "first")
-  (parameters
-    '("ClutterActor*" "p0")
-  )
 )
 
-(define-signal removed
-  (of-object "ClutterBehaviour")
+(define-signal font-changed
+  (of-object "ClutterBackend")
   (return-type "void")
   (when "first")
-  (parameters
-    '("ClutterActor*" "p0")
-  )
 )
 
-(define-property alpha
-  (of-object "ClutterBehaviour")
-  (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal settings-changed
+  (of-object "ClutterBackend")
+  (return-type "void")
+  (when "first")
 )
 
-;; From ClutterBehaviourOpacity
+;; From ClutterBindConstraint
 
-(define-property alpha
-  (of-object "ClutterBehaviourOpacity")
+(define-property source
+  (of-object "ClutterBindConstraint")
   (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+  (docs "The source of the binding")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property opacity-start
-  (of-object "ClutterBehaviourOpacity")
-  (prop-type "GParamUInt")
-  (docs "Initial opacity level")
+(define-property coordinate
+  (of-object "ClutterBindConstraint")
+  (prop-type "GParamEnum")
+  (docs "The coordinate to bind")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property opacity-end
-  (of-object "ClutterBehaviourOpacity")
-  (prop-type "GParamUInt")
-  (docs "Final opacity level")
+(define-property offset
+  (of-object "ClutterBindConstraint")
+  (prop-type "GParamFloat")
+  (docs "The offset in pixels to apply to the binding")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBehaviourPath
+;; From ClutterBinLayout
 
-(define-signal knot-reached
-  (of-object "ClutterBehaviourPath")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("guint" "p0")
-  )
-)
+;; From ClutterBlurEffect
 
-(define-property alpha
-  (of-object "ClutterBehaviourPath")
-  (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+;; From ClutterBoxLayout
+
+(define-property spacing
+  (of-object "ClutterBoxLayout")
+  (prop-type "GParamUInt")
+  (docs "Spacing between children")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property path
-  (of-object "ClutterBehaviourPath")
-  (prop-type "GParamObject")
-  (docs "The ClutterPath object representing the path to animate along")
+(define-property homogeneous
+  (of-object "ClutterBoxLayout")
+  (prop-type "GParamBoolean")
+  (docs "Whether the layout should be homogeneous, i.e. all childs get the same size")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBehaviourRotate
-
-(define-property alpha
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+(define-property pack-start
+  (of-object "ClutterBoxLayout")
+  (prop-type "GParamBoolean")
+  (docs "Whether to pack items at the start of the box")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-start
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamDouble")
-  (docs "Initial angle")
+(define-property orientation
+  (of-object "ClutterBoxLayout")
+  (prop-type "GParamEnum")
+  (docs "The orientation of the layout")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property angle-end
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamDouble")
-  (docs "Final angle")
+;; From ClutterBrightnessContrastEffect
+
+(define-property brightness
+  (of-object "ClutterBrightnessContrastEffect")
+  (prop-type "ClutterParamSpecColor")
+  (docs "The brightness change to apply")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property axis
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamEnum")
-  (docs "Axis of rotation")
+(define-property contrast
+  (of-object "ClutterBrightnessContrastEffect")
+  (prop-type "ClutterParamSpecColor")
+  (docs "The contrast change to apply")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property direction
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamEnum")
-  (docs "Direction of rotation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterCanvas
+
+(define-signal draw
+  (of-object "ClutterCanvas")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("CairoContext*" "p0")
+    '("gint" "p1")
+    '("gint" "p2")
+  )
 )
 
-(define-property center-x
-  (of-object "ClutterBehaviourRotate")
+(define-property width
+  (of-object "ClutterCanvas")
   (prop-type "GParamInt")
-  (docs "X center of rotation")
+  (docs "The width of the canvas")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property center-y
-  (of-object "ClutterBehaviourRotate")
+(define-property height
+  (of-object "ClutterCanvas")
   (prop-type "GParamInt")
-  (docs "Y center of rotation")
+  (docs "The height of the canvas")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property center-z
-  (of-object "ClutterBehaviourRotate")
-  (prop-type "GParamInt")
-  (docs "Z center of rotation")
+;; From ClutterChildMeta
+
+(define-property container
+  (of-object "ClutterChildMeta")
+  (prop-type "GParamObject")
+  (docs "The container that created this data")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-;; From ClutterBehaviourScale
-
-(define-property alpha
-  (of-object "ClutterBehaviourScale")
+(define-property actor
+  (of-object "ClutterChildMeta")
   (prop-type "GParamObject")
-  (docs "Alpha Object to drive the behaviour")
+  (docs "The actor wrapped by this data")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property x-scale-start
-  (of-object "ClutterBehaviourScale")
-  (prop-type "GParamDouble")
-  (docs "Initial scale on the X axis")
+;; From ClutterClickAction
+
+(define-signal clicked
+  (of-object "ClutterClickAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
+)
+
+(define-signal long-press
+  (of-object "ClutterClickAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("ClutterLongPressState" "p1")
+  )
+)
+
+(define-property held
+  (of-object "ClutterClickAction")
+  (prop-type "GParamBoolean")
+  (docs "Whether the clickable has a grab")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property y-scale-start
-  (of-object "ClutterBehaviourScale")
-  (prop-type "GParamDouble")
-  (docs "Initial scale on the Y axis")
+(define-property pressed
+  (of-object "ClutterClickAction")
+  (prop-type "GParamBoolean")
+  (docs "Whether the clickable should be in pressed state")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property x-scale-end
-  (of-object "ClutterBehaviourScale")
-  (prop-type "GParamDouble")
-  (docs "Final scale on the X axis")
+(define-property long-press-threshold
+  (of-object "ClutterClickAction")
+  (prop-type "GParamInt")
+  (docs "The maximum threshold before a long press is cancelled")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property y-scale-end
-  (of-object "ClutterBehaviourScale")
-  (prop-type "GParamDouble")
-  (docs "Final scale on the Y axis")
+(define-property long-press-duration
+  (of-object "ClutterClickAction")
+  (prop-type "GParamInt")
+  (docs "The minimum duration of a long press to recognize the gesture")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterBox
+;; From ClutterClone
 
-(define-property color
-  (of-object "ClutterBox")
+(define-property source
+  (of-object "ClutterClone")
   (prop-type "GParamObject")
-  (docs "The color to be used to paint the background of the ClutterBox. Setting this property will set the 'color-set' property as a side effect")
+  (docs "Specifies the actor to be cloned")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property color-set
-  (of-object "ClutterBox")
-  (prop-type "GParamObject")
-  (docs "Whether the 'color' property has been set")
+;; From ClutterColor
+
+;; From ClutterColorizeEffect
+
+(define-property tint
+  (of-object "ClutterColorizeEffect")
+  (prop-type "ClutterParamSpecColor")
+  (docs "The tint to apply")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property layout-manager
-  (of-object "ClutterBox")
-  (prop-type "GParamObject")
-  (docs "The ClutterLayoutManager used by the ClutterBox")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
+;; From ClutterConstraint
+
+;; From ClutterContainer
+
+(define-signal actor-added
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-;; From ClutterBinLayout
+(define-signal actor-removed
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
+)
 
-(define-property x-align
-  (of-object "ClutterBinLayout")
-  (prop-type "GParamEnum")
-  (docs "Default horizontal alignment for the actors inside the layout manager")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal child-notify
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("GParam" "p1")
+  )
 )
 
-(define-property y-align
-  (of-object "ClutterBinLayout")
-  (prop-type "GParamEnum")
-  (docs "Default vertical alignment for the actors inside the layout manager")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterContent
+
+(define-signal attached
+  (of-object "ClutterContent")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-;; From BoxLayout
+(define-signal detached
+  (of-object "ClutterContent")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
+)
 
+;; From ClutterDeformEffect
 
-(define-property spacing
-  (of-object "ClutterBoxLayout")
+(define-property x-tiles
+  (of-object "ClutterDeformEffect")
   (prop-type "GParamUInt")
-  (docs "Spacing between children")
+  (docs "The number of horizontal tiles")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property vertical
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamBoolean")
-  (docs "Whether the layout should be vertical, rather than horizontal")
+(define-property y-tiles
+  (of-object "ClutterDeformEffect")
+  (prop-type "GParamUInt")
+  (docs "The number of vertical tiles")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property homogeneous
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamBoolean")
-  (docs "Whether the layout should be homogeneous, i.e. all children get the same size")
+(define-property back-material
+  (of-object "ClutterDeformEffect")
+  (prop-type "GParamBoxed")
+  (docs "The material to be used when painting the back of the actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property pack-start
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamBoolean")
-  (docs "Whether to pack items at the start of the box")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterDeviceManager
+
+(define-signal device-added
+  (of-object "ClutterDeviceManager")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterInputDevice*" "p0")
+  )
 )
 
-(define-property use-animations
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamBoolean")
-  (docs "Whether layout changes should be animated")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal device-removed
+  (of-object "ClutterDeviceManager")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterInputDevice*" "p0")
+  )
 )
 
-(define-property easing-mode
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamULong")
-  (docs "The easing mode of the animations")
+(define-property backend
+  (of-object "ClutterDeviceManager")
+  (prop-type "GParamObject")
+  (docs "The ClutterBackend of the device manager")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property easing-duration
-  (of-object "ClutterBoxLayout")
-  (prop-type "GParamUInt")
-  (docs "The duration of the animations")
+;; From ClutterDesaturateEffect
+
+(define-property factor
+  (of-object "ClutterDesaturateEffect")
+  (prop-type "GParamDouble")
+  (docs "The desaturation factor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterCairoTexture
+;; From ClutterDragAction
 
-(define-property name
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drag-begin
+  (of-object "ClutterDragAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+    '("ClutterModifierType" "p3")
+  )
 )
 
-(define-property x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drag-progress
+  (of-object "ClutterDragAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+  )
 )
 
-(define-property y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drag-motion
+  (of-object "ClutterDragAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+  )
 )
 
-(define-property width
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drag-end
+  (of-object "ClutterDragAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+    '("ClutterModifierType" "p3")
+  )
 )
 
-(define-property height
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
+(define-property x-drag-threshold
+  (of-object "ClutterDragAction")
+  (prop-type "GParamInt")
+  (docs "The horizontal amount of pixels required to start dragging")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fixed-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
+(define-property y-drag-threshold
+  (of-object "ClutterDragAction")
+  (prop-type "GParamInt")
+  (docs "The vertical amount of pixels required to start dragging")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fixed-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
+(define-property drag-handle
+  (of-object "ClutterDragAction")
+  (prop-type "GParamObject")
+  (docs "The actor that is being dragged")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fixed-position-set
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
+(define-property drag-axis
+  (of-object "ClutterDragAction")
+  (prop-type "GParamEnum")
+  (docs "Constraints the dragging to an axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property min-width
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
+(define-property drag-area
+  (of-object "ClutterDragAction")
+  (prop-type "GParamBoxed")
+  (docs "Constrains the dragging to a rectangle")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property min-width-set
-  (of-object "ClutterCairoTexture")
+(define-property drag-area-set
+  (of-object "ClutterDragAction")
   (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
+  (docs "Whether the drag area is set")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property min-height
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
+;; From ClutterDropAction
 
-(define-property min-height-set
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal can-drop
+  (of-object "ClutterDropAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+  )
 )
 
-(define-property natural-width
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal over-in
+  (of-object "ClutterDropAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property natural-width-set
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal over-out
+  (of-object "ClutterDropAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property natural-height
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drop
+  (of-object "ClutterDropAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+  )
 )
 
-(define-property natural-height-set
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal drop-cancel
+  (of-object "ClutterDropAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gfloat" "p1")
+    '("gfloat" "p2")
+  )
 )
 
-(define-property request-mode
-  (of-object "ClutterCairoTexture")
+;; From ClutterEffect
+
+;; From ClutterEvent
+
+;; From ClutterFixedLayout
+
+;; From ClutterFlowLayout
+
+(define-property orientation
+  (of-object "ClutterFlowLayout")
   (prop-type "GParamEnum")
-  (docs "The actor's request mode")
+  (docs "The orientation of the layout")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property allocation
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
+(define-property homogeneous
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamBoolean")
+  (docs "Whether each item should receive the same allocation")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property depth
-  (of-object "ClutterCairoTexture")
+(define-property column-spacing
+  (of-object "ClutterFlowLayout")
   (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
+  (docs "The spacing between columns")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property clip
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
+(define-property row-spacing
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamFloat")
+  (docs "The spacing between rows")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property has-clip
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
+(define-property min-column-width
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamFloat")
+  (docs "Minimum width for each column")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property opacity
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
+(define-property max-column-width
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamFloat")
+  (docs "Maximum width for each column")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property visible
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
+(define-property min-row-height
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamFloat")
+  (docs "Minimum height for each row")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property mapped
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
+(define-property max-row-height
+  (of-object "ClutterFlowLayout")
+  (prop-type "GParamFloat")
+  (docs "Maximum height for each row")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property realized
-  (of-object "ClutterCairoTexture")
+(define-property snap-to-grid
+  (of-object "ClutterFlowLayout")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
+  (docs "Snap to grid")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
+;; From ClutterGestureAction
 
-(define-property reactive
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal gesture-begin
+  (of-object "ClutterGestureAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property scale-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal gesture-progress
+  (of-object "ClutterGestureAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property scale-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal gesture-end
+  (of-object "ClutterGestureAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property scale-center-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal gesture-cancel
+  (of-object "ClutterGestureAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-(define-property scale-center-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
+(define-property n-touch-points
+  (of-object "ClutterGestureAction")
+  (prop-type "GParamInt")
+  (docs "Number of touch points")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-gravity
-  (of-object "ClutterCairoTexture")
+;; From ClutterGridLayout
+
+(define-property orientation
+  (of-object "ClutterGridLayout")
   (prop-type "GParamEnum")
-  (docs "The center of scaling")
+  (docs "The orientation of the layout")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
+(define-property row-spacing
+  (of-object "ClutterGridLayout")
+  (prop-type "GParamUInt")
+  (docs "The amount of space between two consecutive rows")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
+(define-property column-spacing
+  (of-object "ClutterGridLayout")
+  (prop-type "GParamUInt")
+  (docs "The amount of space between two consecutive columns")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-z
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
+(define-property row-homogeneous
+  (of-object "ClutterGridLayout")
+  (prop-type "GParamBoolean")
+  (docs "If TRUE, the rows are all the same height")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
+(define-property column-homogeneous
+  (of-object "ClutterGridLayout")
+  (prop-type "GParamBoolean")
+  (docs "If TRUE, the columns are all the same width")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
+;; From ClutterImage
+
+;; From ClutterInputDevice
+
+(define-property backend
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamObject")
+  (docs "The backend instance")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property rotation-center-z
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
+(define-property id
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamInt")
+  (docs "Unique identifier of the device")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property rotation-center-z-gravity
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
+(define-property name
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamString")
+  (docs "The name of the device")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property anchor-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
+(define-property device-type
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamEnum")
+  (docs "The type of the device")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property anchor-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
+(define-property device-manager
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamObject")
+  (docs "The device manager instance")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property anchor-gravity
-  (of-object "ClutterCairoTexture")
+(define-property device-mode
+  (of-object "ClutterInputDevice")
   (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
+  (docs "The mode of the device")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property show-on-set-parent
-  (of-object "ClutterCairoTexture")
+(define-property has-cursor
+  (of-object "ClutterInputDevice")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
+  (docs "Whether the device has a cursor")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property text-direction
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
+(define-property enabled
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamBoolean")
+  (docs "Whether the device is enabled")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property has-pointer
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
+(define-property n-axes
+  (of-object "ClutterInputDevice")
+  (prop-type "GParamUInt")
+  (docs "The number of axes on the device")
   (readable #t)
   (writable #f)
   (construct-only #f)
 )
 
-(define-property disable-slicing
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Force the underlying texture to be singlularand not made of of smaller space saving inidivual textures.")
+;; From ClutterInterval
+
+(define-property value-type
+  (of-object "ClutterInterval")
+  (prop-type "GParamGType")
+  (docs "The type of the values in the interval")
   (readable #t)
   (writable #t)
   (construct-only #t)
 )
 
-(define-property tile-waste
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamInt")
-  (docs "Maximum waste area of a sliced texture")
+(define-property initial
+  (of-object "ClutterInterval")
+  (prop-type "GParamBoxed")
+  (docs "Initial value of the interval")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property pixel-format
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamEnum")
-  (docs "CoglPixelFormat to use.")
+(define-property final
+  (of-object "ClutterInterval")
+  (prop-type "GParamBoxed")
+  (docs "Final value of the interval")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property sync-size
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Auto sync size of actor to underlying pixbuf dimensions")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterKeyframeTransition
+
+;; From ClutterLayoutManager
+
+(define-signal layout-changed
+  (of-object "ClutterLayoutManager")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property repeat-y
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Repeat underlying pixbuf rather than scale in y direction.")
+;; From ClutterLayoutMeta
+
+(define-property manager
+  (of-object "ClutterLayoutMeta")
+  (prop-type "GParamObject")
+  (docs "The manager that created this data")
   (readable #t)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property repeat-x
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Repeat underlying pixbuf rather than scale in x direction.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterListModel
+
+;; From ClutterModel
+
+(define-signal row-added
+  (of-object "ClutterModel")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterModelIter*" "p0")
+  )
 )
 
-(define-property filter-quality
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamEnum")
-  (docs "Rendering quality used when drawing the texture.")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal row-removed
+  (of-object "ClutterModel")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterModelIter*" "p0")
+  )
 )
 
-(define-property cogl-texture
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The underlying COGL texture handle used to draw this actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal row-changed
+  (of-object "ClutterModel")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterModelIter*" "p0")
+  )
 )
 
-(define-property cogl-material
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoxed")
-  (docs "The underlying COGL material handle used to draw this actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal sort-changed
+  (of-object "ClutterModel")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property filename
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamString")
-  (docs "The full path of the file containing the texture")
-  (readable #f)
-  (writable #t)
-  (construct-only #f)
+(define-signal filter-changed
+  (of-object "ClutterModel")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property keep-aspect-ratio
-  (of-object "ClutterCairoTexture")
+(define-property filter-set
+  (of-object "ClutterModel")
   (prop-type "GParamBoolean")
-  (docs "Keep the aspect ratio of the texture when requesting the preferred width or height")
+  (docs "Whether the model has a filter")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property load-async
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Load files inside a thread to avoid blocking when loading images.")
-  (readable #f)
-  (writable #t)
-  (construct-only #f)
-)
+;; From ClutterOffscreenEffect
 
-(define-property load-data-async
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamBoolean")
-  (docs "Decode image data files inside a thread to reduce blocking when loading images.")
-  (readable #f)
+;; From ClutterPageTurnEffect
+
+(define-property period
+  (of-object "ClutterPageTurnEffect")
+  (prop-type "GParamDouble")
+  (docs "The period of the page turn")
+  (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property surface-width
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamUInt")
-  (docs "Surface Width")
+(define-property angle
+  (of-object "ClutterPageTurnEffect")
+  (prop-type "GParamDouble")
+  (docs "The angle of the page rotation, in degrees")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property surface-height
-  (of-object "ClutterCairoTexture")
-  (prop-type "GParamUInt")
-  (docs "Surface Height")
+(define-property radius
+  (of-object "ClutterPageTurnEffect")
+  (prop-type "GParamFloat")
+  (docs "The radius of the page curl")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterChildMeta
+;; From ClutterPanAction
 
-(define-property container
-  (of-object "ClutterChildMeta")
-  (prop-type "GParamObject")
-  (docs "The container that created this data")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
+(define-signal pan
+  (of-object "ClutterPanAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gboolean" "p1")
+  )
 )
 
-(define-property actor
-  (of-object "ClutterChildMeta")
-  (prop-type "GParamObject")
-  (docs "The actor wrapped by this data")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
+(define-signal pan-stopped
+  (of-object "ClutterPanAction")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-;; From ClutterClone
-
-(define-property name
-  (of-object "ClutterClone")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
+(define-property pan-axis
+  (of-object "ClutterPanAction")
+  (prop-type "GParamEnum")
+  (docs "Constraints the panning to an axis")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property x
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
+(define-property interpolate
+  (of-object "ClutterPanAction")
+  (prop-type "GParamBoolean")
+  (docs "Whether interpolated events emission is enabled.")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property y
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
+(define-property deceleration
+  (of-object "ClutterPanAction")
+  (prop-type "GParamDouble")
+  (docs "Rate at which the interpolated panning will decelerate in")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property width
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
+(define-property acceleration-factor
+  (of-object "ClutterPanAction")
+  (prop-type "GParamDouble")
+  (docs "Factor applied to the momentum when starting the interpolated phase")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property height
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
+;; From ClutterPath
+
+(define-property description
+  (of-object "ClutterPath")
+  (prop-type "GParamString")
+  (docs "SVG-style description of the path")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fixed-x
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
+(define-property length
+  (of-object "ClutterPath")
+  (prop-type "GParamUInt")
+  (docs "An approximation of the total length of the path.")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property fixed-y
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterPathConstraint
+
+(define-signal node-reached
+  (of-object "ClutterPathConstraint")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("guint" "p1")
+  )
 )
 
-(define-property fixed-position-set
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
+(define-property path
+  (of-object "ClutterPathConstraint")
+  (prop-type "GParamObject")
+  (docs "The path used to constrain an actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property min-width
-  (of-object "ClutterClone")
+(define-property offset
+  (of-object "ClutterPathConstraint")
   (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
+  (docs "The offset along the path, between -1.0 and 2.0")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property min-width-set
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterRotateAction
+
+(define-signal rotate
+  (of-object "ClutterRotateAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("gdouble" "p1")
+  )
 )
 
-(define-property min-height
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
+;; From ClutterScript
+
+(define-property filename-set
+  (of-object "ClutterScript")
+  (prop-type "GParamBoolean")
+  (docs "Whether the :filename property is set")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property min-height-set
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
+(define-property filename
+  (of-object "ClutterScript")
+  (prop-type "GParamString")
+  (docs "The path of the currently parsed file")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property natural-width
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
+(define-property translation-domain
+  (of-object "ClutterScript")
+  (prop-type "GParamString")
+  (docs "The translation domain used to localize string")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property natural-width-set
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
+;; From ClutterScriptable
+
+;; From ClutterScrollActor
+
+(define-property scroll-mode
+  (of-object "ClutterScrollActor")
+  (prop-type "GParamFlags")
+  (docs "The scrolling direction")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property natural-height
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
+;; From ClutterShaderEffect
+
+(define-property shader-type
+  (of-object "ClutterShaderEffect")
+  (prop-type "GParamEnum")
+  (docs "The type of shader used")
+  (readable #f)
   (writable #t)
-  (construct-only #f)
+  (construct-only #t)
 )
 
-(define-property natural-height-set
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
+;; From ClutterSnapConstraint
+
+(define-property source
+  (of-object "ClutterSnapConstraint")
+  (prop-type "GParamObject")
+  (docs "The source of the constraint")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property request-mode
-  (of-object "ClutterClone")
+(define-property from-edge
+  (of-object "ClutterSnapConstraint")
   (prop-type "GParamEnum")
-  (docs "The actor's request mode")
+  (docs "The edge of the actor that should be snapped")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property allocation
-  (of-object "ClutterClone")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
+(define-property to-edge
+  (of-object "ClutterSnapConstraint")
+  (prop-type "GParamEnum")
+  (docs "The edge of the source that should be snapped")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property depth
-  (of-object "ClutterClone")
+(define-property offset
+  (of-object "ClutterSnapConstraint")
   (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
+  (docs "The offset in pixels to apply to the constraint")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property clip
-  (of-object "ClutterClone")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+;; From ClutterStage
+
+(define-signal activate
+  (of-object "ClutterStage")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property has-clip
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal fullscreen
+  (of-object "ClutterStage")
+  (return-type "void")
+  (when "first")
 )
 
-(define-property opacity
-  (of-object "ClutterClone")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal unfullscreen
+  (of-object "ClutterStage")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property visible
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal deactivate
+  (of-object "ClutterStage")
+  (return-type "void")
+  (when "last")
 )
 
-(define-property mapped
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
+(define-signal delete-event
+  (of-object "ClutterStage")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterEvent*" "p0")
+  )
 )
 
-(define-property realized
-  (of-object "ClutterClone")
+(define-property fullscreen-set
+  (of-object "ClutterStage")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
+  (docs "Whether the main stage is fullscreen")
   (readable #t)
   (writable #f)
   (construct-only #f)
 )
 
-(define-property reactive
-  (of-object "ClutterClone")
+(define-property cursor-visible
+  (of-object "ClutterStage")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterClone")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
+  (docs "Whether the mouse pointer is visible on the main stage")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-y
-  (of-object "ClutterClone")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
+(define-property perspective
+  (of-object "ClutterStage")
+  (prop-type "GParamBoxed")
+  (docs "Perspective projection parameters")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-x
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
+(define-property title
+  (of-object "ClutterStage")
+  (prop-type "GParamString")
+  (docs "Stage Title")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-y
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
+(define-property user-resizable
+  (of-object "ClutterStage")
+  (prop-type "GParamBoolean")
+  (docs "Whether the stage is able to be resized via user interaction")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-gravity
-  (of-object "ClutterClone")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
+(define-property use-alpha
+  (of-object "ClutterStage")
+  (prop-type "GParamBoolean")
+  (docs "Whether to honour the alpha component of the stage color")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-x
-  (of-object "ClutterClone")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
+(define-property key-focus
+  (of-object "ClutterStage")
+  (prop-type "GParamObject")
+  (docs "The currently key focused actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-y
-  (of-object "ClutterClone")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
+(define-property no-clear-hint
+  (of-object "ClutterStage")
+  (prop-type "GParamBoolean")
+  (docs "Whether the stage should clear its contents")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-z
-  (of-object "ClutterClone")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
+(define-property accept-focus
+  (of-object "ClutterStage")
+  (prop-type "GParamBoolean")
+  (docs "Whether the stage should accept focus on show")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-x
-  (of-object "ClutterClone")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
+;; From ClutterStageManager
 
-(define-property rotation-center-y
-  (of-object "ClutterClone")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal stage-added
+  (of-object "ClutterStageManager")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterStage*" "p0")
+  )
 )
 
-(define-property rotation-center-z
-  (of-object "ClutterClone")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal stage-removed
+  (of-object "ClutterStageManager")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("ClutterStage*" "p0")
+  )
 )
 
-(define-property rotation-center-z-gravity
-  (of-object "ClutterClone")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
+(define-property default-stage
+  (of-object "ClutterStageManager")
+  (prop-type "GParamObject")
+  (docs "The default stage")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property anchor-x
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
+;; From ClutterSwipeAction
 
-(define-property anchor-y
-  (of-object "ClutterClone")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal swipe
+  (of-object "ClutterSwipeAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("ClutterSwipeDirection" "p1")
+  )
 )
 
-(define-property anchor-gravity
-  (of-object "ClutterClone")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
+;; From ClutterTableLayout
 
-(define-property show-on-set-parent
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
+(define-property row-spacing
+  (of-object "ClutterTableLayout")
+  (prop-type "GParamUInt")
+  (docs "Spacing between rows")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property text-direction
-  (of-object "ClutterClone")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
+(define-property column-spacing
+  (of-object "ClutterTableLayout")
+  (prop-type "GParamUInt")
+  (docs "Spacing between columns")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property has-pointer
-  (of-object "ClutterClone")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
+;; From ClutterTapAction
 
-(define-property source
-  (of-object "ClutterClone")
-  (prop-type "GParamObject")
-  (docs "Specifies the actor to be cloned")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+(define-signal tap
+  (of-object "ClutterTapAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+  )
 )
 
-;; From ClutterColor
-
-;; From ClutterContainer
+;; From ClutterText
 
-(define-signal actor-added
-  (of-object "ClutterContainer")
+(define-signal text-changed
+  (of-object "ClutterText")
   (return-type "void")
-  (when "first")
-  (parameters
-    '("ClutterActor*" "p0")
-  )
+  (when "last")
 )
 
-(define-signal actor-removed
-  (of-object "ClutterContainer")
+(define-signal insert-text
+  (of-object "ClutterText")
   (return-type "void")
-  (when "first")
+  (when "last")
   (parameters
-    '("ClutterActor*" "p0")
+    '("const-gchar*" "p0")
+    '("gint" "p1")
+    '("gpointer" "p2")
   )
 )
 
-(define-signal child-notify
-  (of-object "ClutterContainer")
+(define-signal delete-text
+  (of-object "ClutterText")
   (return-type "void")
-  (when "first")
+  (when "last")
   (parameters
-    '("ClutterActor*" "p0")
-    '("GParam" "p1")
+    '("gint" "p0")
+    '("gint" "p1")
   )
 )
 
-;; From ClutterDeviceManager
-
-(define-signal device-added
-  (of-object "ClutterDeviceManager")
+(define-signal cursor-changed
+  (of-object "ClutterText")
   (return-type "void")
   (when "last")
-  (parameters
-    '("ClutterInputDevice*" "p0")
-  )
 )
 
-(define-signal device-removed
-  (of-object "ClutterDeviceManager")
+(define-signal activate
+  (of-object "ClutterText")
   (return-type "void")
   (when "last")
-  (parameters
-    '("ClutterInputDevice*" "p0")
-  )
 )
 
-(define-property backend
-  (of-object "ClutterDeviceManager")
+(define-property buffer
+  (of-object "ClutterText")
   (prop-type "GParamObject")
-  (docs "The ClutterBackend of the device manager")
+  (docs "The buffer for the text")
   (readable #t)
   (writable #t)
-  (construct-only #t)
+  (construct-only #f)
 )
 
-;; From ClutterEvent
-
-;; From FlowLayout
-
-(define-property orientation
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamEnum")
-  (docs "The orientation of the layout")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property homogeneous
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamBoolean")
-  (docs "Whether each item should receive the same allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property column-spacing
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "The spacing between columns")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property row-spacing
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "The spacing between rows")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-column-width
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "Minimum width for each column")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-column-width
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "Maximum width for each column")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-row-height
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "Minimum height for each row")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-row-height
-  (of-object "ClutterFlowLayout")
-  (prop-type "GParamFloat")
-  (docs "Maximum height for each row")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterGroup
-
-(define-property name
-  (of-object "ClutterGroup")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property x
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property y
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property width
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property height
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-position-set
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width-set
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height-set
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width-set
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height-set
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property request-mode
-  (of-object "ClutterGroup")
-  (prop-type "GParamEnum")
-  (docs "The actor's request mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property allocation
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property depth
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property clip
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-clip
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property opacity
-  (of-object "ClutterGroup")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property visible
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property mapped
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property realized
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property reactive
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-gravity
-  (of-object "ClutterGroup")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-z
-  (of-object "ClutterGroup")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z-gravity
-  (of-object "ClutterGroup")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-x
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-y
-  (of-object "ClutterGroup")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-gravity
-  (of-object "ClutterGroup")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property show-on-set-parent
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-
-(define-property text-direction
-  (of-object "ClutterGroup")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-pointer
-  (of-object "ClutterGroup")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-;; ClutterInputDevice
-
-(define-property id
-  (of-object "ClutterInputDevice")
-  (prop-type "GParamInt")
-  (docs "Unique identifier of the device")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
-)
-
-(define-property device-type
-  (of-object "ClutterInputDevice")
-  (prop-type "GParamEnum")
-  (docs "The type of the device")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
-)
-
-(define-property name
-  (of-object "ClutterInputDevice")
-  (prop-type "GParamString")
-  (docs "The name of the device")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
-)
-
-;; From ClutterInterval
-
-(define-property value-type
-  (of-object "ClutterInterval")
-  (prop-type "GParamGType")
-  (docs "The type of the values in the interval")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
-)
-
-;; From ClutterLayoutManager
-
-(define-signal layout-changed
-  (of-object "ClutterLayoutManager")
-  (return-type "void")
-  (when "last")
-)
-
-;; From ClutterLayoutMeta
-
-(define-property manager
-  (of-object "ClutterLayoutMeta")
-  (prop-type "GParamObject")
-  (docs "The manager that created this data")
-  (readable #t)
-  (writable #t)
-  (construct-only #t)
-)
-
-;; From ClutterMedia
-
-(define-signal eos
-  (of-object "ClutterMedia")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal error
-  (of-object "ClutterMedia")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gpointer" "p0")
-  )
-)
-
-
-(define-property duration
-  (of-object "ClutterMedia")
-  (prop-type "GParamDouble")
-  (docs "The duration of the stream, in seconds")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property can-seek
-  (of-object "ClutterMedia")
-  (prop-type "GParamBoolean")
-  (docs "Whether the current stream is seekable")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property buffer-fill
-  (of-object "ClutterMedia")
-  (prop-type "GParamDouble")
-  (docs "The fill level of the buffer")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property playing
-  (of-object "ClutterMedia")
-  (prop-type "GParamBoolean")
-  (docs "Wheter the actor is playing")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property subtitle-font-name
-  (of-object "ClutterMedia")
-  (prop-type "GParamString")
-  (docs "The font used to display subtitles")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property audio-volume
-  (of-object "ClutterMedia")
-  (prop-type "GParamDouble")
-  (docs "The volume of the audio")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property progress
-  (of-object "ClutterMedia")
-  (prop-type "GParamDouble")
-  (docs "Current progress of the playback")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property subtitle-uri
-  (of-object "ClutterMedia")
-  (prop-type "GParamString")
-  (docs "URI of a subtitle file")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property uri
-  (of-object "ClutterMedia")
-  (prop-type "GParamString")
-  (docs "URI of a media file")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterPath
-
-(define-property description
-  (of-object "ClutterPath")
-  (prop-type "GParamString")
-  (docs "SVG-style description of the path")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property length
-  (of-object "ClutterPath")
-  (prop-type "GParamUInt")
-  (docs "An approximation of the total length of the path.")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-;; From ClutterRectangle
-
-(define-property name
-  (of-object "ClutterRectangle")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property width
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property height
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-position-set
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width-set
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height-set
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width-set
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height-set
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property request-mode
-  (of-object "ClutterRectangle")
-  (prop-type "GParamEnum")
-  (docs "The actor's request mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property allocation
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property depth
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property clip
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-clip
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property opacity
-  (of-object "ClutterRectangle")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property visible
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property mapped
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property realized
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property reactive
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-gravity
-  (of-object "ClutterRectangle")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-z
-  (of-object "ClutterRectangle")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z-gravity
-  (of-object "ClutterRectangle")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-x
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-y
-  (of-object "ClutterRectangle")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-gravity
-  (of-object "ClutterRectangle")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property show-on-set-parent
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property text-direction
-  (of-object "ClutterRectangle")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-pointer
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property color
-  (of-object "ClutterRectangle")
-  (prop-type "ClutterParamSpecColor")
-  (docs "The color of the rectangle")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property border-color
-  (of-object "ClutterRectangle")
-  (prop-type "ClutterParamSpecColor")
-  (docs "The color of the border of the rectangle")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property border-width
-  (of-object "ClutterRectangle")
-  (prop-type "GParamUInt")
-  (docs "The width of the border of the rectangle")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-border
-  (of-object "ClutterRectangle")
-  (prop-type "GParamBoolean")
-  (docs "Whether the rectangle should have a border")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterScore
-
-(define-signal timeline-started
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("ClutterTimeline*" "p0")
-  )
-)
-
-(define-signal timeline-completed
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("ClutterTimeline*" "p0")
-  )
-)
-
-(define-signal completed
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal started
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal paused
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-property loop
-  (of-object "ClutterScore")
-  (prop-type "GParamBoolean")
-  (docs "Whether the score should restart once finished")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterScript
-
-(define-property filename-set
-  (of-object "ClutterScript")
-  (prop-type "GParamBoolean")
-  (docs "Whether the :filename property is set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property filename
-  (of-object "ClutterScript")
-  (prop-type "GParamString")
-  (docs "The path of the currently parsed file")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-;; From ClutterStage
-
-
-(define-signal activate
-  (of-object "ClutterStage")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal fullscreen
-  (of-object "ClutterStage")
-  (return-type "void")
-  (when "first")
-)
-
-(define-signal unfullscreen
-  (of-object "ClutterStage")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal deactivate
-  (of-object "ClutterStage")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal delete-event
-  (of-object "ClutterStage")
-  (return-type "gboolean")
-  (when "last")
-  (parameters
-    '("ClutterEvent*" "p0")
-  )
-)
-
-(define-property name
-  (of-object "ClutterStage")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property x
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property y
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property width
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property height
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-x
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-y
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-position-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property request-mode
-  (of-object "ClutterStage")
-  (prop-type "GParamEnum")
-  (docs "The actor's request mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property allocation
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property depth
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property clip
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-clip
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property opacity
-  (of-object "ClutterStage")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property visible
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property mapped
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property realized
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property reactive
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterStage")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-y
-  (of-object "ClutterStage")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-x
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-y
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-gravity
-  (of-object "ClutterStage")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-x
-  (of-object "ClutterStage")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-y
-  (of-object "ClutterStage")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-z
-  (of-object "ClutterStage")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-x
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-y
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z-gravity
-  (of-object "ClutterStage")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-x
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-y
-  (of-object "ClutterStage")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-gravity
-  (of-object "ClutterStage")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property show-on-set-parent
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property text-direction
-  (of-object "ClutterStage")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-pointer
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property color
-  (of-object "ClutterStage")
-  (prop-type "ClutterParamSpecColor")
-  (docs "The color of the stage")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fullscreen-set
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the main stage is fullscreen")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property offscreen
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the main stage should be rendered offscreen")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cursor-visible
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the mouse pointer is visible on the main stage")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property perspective
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "Perspective projection parameters")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property title
-  (of-object "ClutterStage")
-  (prop-type "GParamString")
-  (docs "Stage Title")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property user-resizable
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether the stage is able to be resized via user interaction")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property use-fog
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to enable depth cueing")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fog
-  (of-object "ClutterStage")
-  (prop-type "GParamBoxed")
-  (docs "Settings for the depth cueing")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property use-alpha
-  (of-object "ClutterStage")
-  (prop-type "GParamBoolean")
-  (docs "Whether to honour the alpha component of the stage color")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property key-focus
-  (of-object "ClutterStage")
-  (prop-type "GParamObject")
-  (docs "The currently key focused actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterText
-
-(define-signal text-changed
-  (of-object "ClutterText")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal insert-text
-  (of-object "ClutterText")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("const-gchar*" "p0")
-    '("gint" "p1")
-    '("gpointer" "p2")
-  )
-)
-
-(define-signal delete-text
-  (of-object "ClutterText")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gint" "p0")
-    '("gint" "p1")
-  )
-)
-
-;; Hand-edited to add constness
-(define-signal cursor-event
-  (of-object "ClutterText")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("const-ClutterGeometry*" "p0")
-  )
-)
-
-(define-signal activate
-  (of-object "ClutterText")
-  (return-type "void")
-  (when "last")
-)
-
-(define-property name
-  (of-object "ClutterText")
-  (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property x
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property y
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property width
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property height
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-x
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-y
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-position-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property request-mode
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "The actor's request mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property allocation
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property depth
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property clip
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-clip
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property opacity
-  (of-object "ClutterText")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property visible
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property mapped
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property realized
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property reactive
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterText")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-y
-  (of-object "ClutterText")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-x
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-center-y
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-gravity
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-x
-  (of-object "ClutterText")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-y
-  (of-object "ClutterText")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-angle-z
-  (of-object "ClutterText")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-x
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-y
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property rotation-center-z-gravity
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-x
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-y
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property anchor-gravity
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property show-on-set-parent
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property text-direction
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-pointer
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property font-name
-  (of-object "ClutterText")
-  (prop-type "GParamString")
-  (docs "The font to be used by the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property font-description
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "The font description to be used")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property text
-  (of-object "ClutterText")
-  (prop-type "GParamString")
-  (docs "The text to render")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property color
-  (of-object "ClutterText")
-  (prop-type "ClutterParamSpecColor")
-  (docs "Color of the font used by the text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property use-markup
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether or not the text includes Pango markup")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property attributes
-  (of-object "ClutterText")
-  (prop-type "GParamBoxed")
-  (docs "A list of style attributes to apply to the contents of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property line-alignment
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "The preferred alignment for the string, for multi-line text")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property line-wrap
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "If set, wrap the lines if the text becomes too wide")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property line-wrap-mode
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "Control how line-wrapping is done")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property justify
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the text should be justified")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property ellipsize
-  (of-object "ClutterText")
-  (prop-type "GParamEnum")
-  (docs "The preferred place to ellipsize the string")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property position
-  (of-object "ClutterText")
-  (prop-type "GParamInt")
-  (docs "The cursor position")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property selection-bound
-  (of-object "ClutterText")
-  (prop-type "GParamInt")
-  (docs "The cursor position of the other end of the selection")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property selection-color
-  (of-object "ClutterText")
-  (prop-type "ClutterParamSpecColor")
-  (docs "Selection Color")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property selection-color-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the selection color has been set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property cursor-visible
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the input cursor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cursor-color
-  (of-object "ClutterText")
-  (prop-type "ClutterParamSpecColor")
-  (docs "Cursor Color")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property cursor-color-set
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the cursor color has been set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property cursor-size
-  (of-object "ClutterText")
-  (prop-type "GParamInt")
-  (docs "The width of the cursor, in pixels")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property editable
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the text is editable")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property selectable
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the text is selectable")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property activatable
-  (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether pressing return causes the activate signal to be emitted")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property password-char
-  (of-object "ClutterText")
-  (prop-type "GParamUnichar")
-  (docs "If non-zero, use this character to display the actor's contents")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property max-length
-  (of-object "ClutterText")
-  (prop-type "GParamFloat")
-  (docs "Maximum length of the text inside the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property single-line-mode
+(define-property font-name
   (of-object "ClutterText")
-  (prop-type "GParamBoolean")
-  (docs "Whether the text should be a single line")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-;; From ClutterTexture
-
-(define-signal size-change
-  (of-object "ClutterTexture")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gint" "p0")
-    '("gint" "p1")
-  )
-)
-
-(define-signal pixbuf-change
-  (of-object "ClutterTexture")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal load-finished
-  (of-object "ClutterTexture")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("gpointer" "p0")
-  )
-)
-
-(define-property name
-  (of-object "ClutterTexture")
   (prop-type "GParamString")
-  (docs "Name of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property x
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property y
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property width
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Width of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property height
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Height of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced X position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced Y position of the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property fixed-position-set
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use fixed positioning for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-width-set
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced minimum height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property min-height-set
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the min-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced natural width request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-width-set
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-width property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Forced natural height request for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property natural-height-set
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use the natural-height property")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property request-mode
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "The actor's request mode")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property allocation
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The actor's allocation")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property depth
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Position on the Z axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property clip
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The clip region for the actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property has-clip
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has a clip set")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property clip-to-allocation
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Sets the clip region to track the actor's allocation")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property opacity
-  (of-object "ClutterTexture")
-  (prop-type "GParamUInt")
-  (docs "Opacity of an actor")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property visible
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is visible")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property mapped
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor will be painted")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property realized
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor has been realized")
-  (readable #t)
-  (writable #f)
-  (construct-only #f)
-)
-
-(define-property reactive
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Whether the actor is reactive to events")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the X axis")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
-)
-
-(define-property scale-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamDouble")
-  (docs "Scale factor on the Y axis")
+  (docs "The font to be used by the text")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Horizontal scale center")
+(define-property font-description
+  (of-object "ClutterText")
+  (prop-type "GParamBoxed")
+  (docs "The font description to be used")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-center-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Vertical scale center")
+(define-property text
+  (of-object "ClutterText")
+  (prop-type "GParamString")
+  (docs "The text to render")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property scale-gravity
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "The center of scaling")
+(define-property color
+  (of-object "ClutterText")
+  (prop-type "ClutterParamSpecColor")
+  (docs "Color of the font used by the text")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the X axis")
+(define-property use-markup
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether or not the text includes Pango markup")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Y axis")
+(define-property attributes
+  (of-object "ClutterText")
+  (prop-type "GParamBoxed")
+  (docs "A list of style attributes to apply to the contents of the actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-angle-z
-  (of-object "ClutterTexture")
-  (prop-type "GParamDouble")
-  (docs "The rotation angle on the Z axis")
+(define-property line-alignment
+  (of-object "ClutterText")
+  (prop-type "GParamEnum")
+  (docs "The preferred alignment for the string, for multi-line text")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the X axis")
+(define-property line-wrap
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "If set, wrap the lines if the text becomes too wide")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Y axis")
+(define-property line-wrap-mode
+  (of-object "ClutterText")
+  (prop-type "GParamEnum")
+  (docs "Control how line-wrapping is done")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-z
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The rotation center on the Z axis")
+(define-property justify
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether the text should be justified")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property rotation-center-z-gravity
-  (of-object "ClutterTexture")
+(define-property ellipsize
+  (of-object "ClutterText")
   (prop-type "GParamEnum")
-  (docs "Center point for rotation around the Z axis")
+  (docs "The preferred place to ellipsize the string")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property anchor-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "X coordinate of the anchor point")
+(define-property selection-bound
+  (of-object "ClutterText")
+  (prop-type "GParamInt")
+  (docs "The cursor position of the other end of the selection")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property anchor-y
-  (of-object "ClutterTexture")
-  (prop-type "GParamFloat")
-  (docs "Y coordinate of the anchor point")
+(define-property selection-color
+  (of-object "ClutterText")
+  (prop-type "ClutterParamSpecColor")
+  (docs "Selection Color")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property anchor-gravity
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "The anchor point as a ClutterGravity")
+(define-property selection-color-set
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether the selection color has been set")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property show-on-set-parent
-  (of-object "ClutterTexture")
+(define-property cursor-visible
+  (of-object "ClutterText")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor is shown when parented")
+  (docs "Whether the input cursor is visible")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-
-(define-property text-direction
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "Direction of the text")
+(define-property cursor-color
+  (of-object "ClutterText")
+  (prop-type "ClutterParamSpecColor")
+  (docs "Cursor Color")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property has-pointer
-  (of-object "ClutterTexture")
+(define-property cursor-color-set
+  (of-object "ClutterText")
   (prop-type "GParamBoolean")
-  (docs "Whether the actor contains the pointer of an input device")
+  (docs "Whether the cursor color has been set")
   (readable #t)
   (writable #f)
   (construct-only #f)
 )
 
-(define-property disable-slicing
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Force the underlying texture to be singlularand not made of of smaller space saving inidivual textures.")
+(define-property cursor-size
+  (of-object "ClutterText")
+  (prop-type "GParamInt")
+  (docs "The width of the cursor, in pixels")
   (readable #t)
   (writable #t)
-  (construct-only #t)
+  (construct-only #f)
 )
 
-(define-property tile-waste
-  (of-object "ClutterTexture")
+(define-property cursor-position
+  (of-object "ClutterText")
   (prop-type "GParamInt")
-  (docs "Maximum waste area of a sliced texture")
+  (docs "The cursor position")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property pixel-format
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "CoglPixelFormat to use.")
+(define-property editable
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether the text is editable")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property sync-size
-  (of-object "ClutterTexture")
+(define-property selectable
+  (of-object "ClutterText")
   (prop-type "GParamBoolean")
-  (docs "Auto sync size of actor to underlying pixbuf dimensions")
+  (docs "Whether the text is selectable")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property repeat-y
-  (of-object "ClutterTexture")
+(define-property activatable
+  (of-object "ClutterText")
   (prop-type "GParamBoolean")
-  (docs "Repeat underlying pixbuf rather than scale in y direction.")
+  (docs "Whether pressing return causes the activate signal to be emitted")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property repeat-x
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Repeat underlying pixbuf rather than scale in x direction.")
+(define-property password-char
+  (of-object "ClutterText")
+  (prop-type "GParamUnichar")
+  (docs "If non-zero, use this character to display the actor's contents")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property filter-quality
-  (of-object "ClutterTexture")
-  (prop-type "GParamEnum")
-  (docs "Rendering quality used when drawing the texture.")
+(define-property max-length
+  (of-object "ClutterText")
+  (prop-type "GParamInt")
+  (docs "Maximum length of the text inside the actor")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property cogl-texture
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The underlying COGL texture handle used to draw this actor")
+(define-property single-line-mode
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether the text should be a single line")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property cogl-material
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoxed")
-  (docs "The underlying COGL material handle used to draw this actor")
+(define-property selected-text-color
+  (of-object "ClutterText")
+  (prop-type "ClutterParamSpecColor")
+  (docs "Selected Text Color")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property filename
-  (of-object "ClutterTexture")
-  (prop-type "GParamString")
-  (docs "The full path of the file containing the texture")
-  (readable #f)
-  (writable #t)
+(define-property selected-text-color-set
+  (of-object "ClutterText")
+  (prop-type "GParamBoolean")
+  (docs "Whether the selected text color has been set")
+  (readable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property keep-aspect-ratio
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Keep the aspect ratio of the texture when requesting the preferred width or height")
+;; From ClutterTextBuffer
+
+(define-signal inserted-text
+  (of-object "ClutterTextBuffer")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("guint" "p0")
+    '("const-gchar*" "p1")
+    '("guint" "p2")
+  )
+)
+
+(define-signal deleted-text
+  (of-object "ClutterTextBuffer")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("guint" "p0")
+    '("guint" "p1")
+  )
+)
+
+(define-property text
+  (of-object "ClutterTextBuffer")
+  (prop-type "GParamString")
+  (docs "The contents of the buffer")
   (readable #t)
-  (writable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property load-async
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Load files inside a thread to avoid blocking when loading images.")
-  (readable #f)
-  (writable #t)
+(define-property length
+  (of-object "ClutterTextBuffer")
+  (prop-type "GParamUInt")
+  (docs "Length of the text currently in the buffer")
+  (readable #t)
+  (writable #f)
   (construct-only #f)
 )
 
-(define-property load-data-async
-  (of-object "ClutterTexture")
-  (prop-type "GParamBoolean")
-  (docs "Decode image data files inside a thread to reduce blocking when loading images.")
-  (readable #f)
+(define-property max-length
+  (of-object "ClutterTextBuffer")
+  (prop-type "GParamInt")
+  (docs "Maximum number of characters for this entry. Zero if no maximum")
+  (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
 ;; From ClutterTimeline
 
-(define-signal completed
+(define-signal new-frame
   (of-object "ClutterTimeline")
   (return-type "void")
   (when "last")
+  (parameters
+    '("gint" "p0")
+  )
 )
 
-(define-signal started
+(define-signal completed
   (of-object "ClutterTimeline")
   (return-type "void")
   (when "last")
 )
 
-(define-signal paused
+(define-signal started
   (of-object "ClutterTimeline")
   (return-type "void")
   (when "last")
 )
 
-(define-signal new-frame
+(define-signal paused
   (of-object "ClutterTimeline")
   (return-type "void")
   (when "last")
-  (parameters
-    '("gint" "p0")
-  )
 )
 
 (define-signal marker-reached
@@ -5187,13 +2574,13 @@
   )
 )
 
-(define-property loop
+(define-signal stopped
   (of-object "ClutterTimeline")
-  (prop-type "GParamBoolean")
-  (docs "Should the timeline automatically restart")
-  (readable #t)
-  (writable #t)
-  (construct-only #f)
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("gboolean" "p0")
+  )
 )
 
 (define-property delay
@@ -5223,108 +2610,82 @@
   (construct-only #f)
 )
 
-;; From ClutterScore
-
-(define-signal timeline-started
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("ClutterTimeline*" "p0")
-  )
-)
-
-(define-signal timeline-completed
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-  (parameters
-    '("ClutterTimeline*" "p0")
-  )
-)
-
-(define-signal completed
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal started
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-signal paused
-  (of-object "ClutterScore")
-  (return-type "void")
-  (when "last")
-)
-
-(define-property loop
-  (of-object "ClutterScore")
+(define-property auto-reverse
+  (of-object "ClutterTimeline")
   (prop-type "GParamBoolean")
-  (docs "Whether the score should restart once finished")
+  (docs "Whether the direction should be reversed when reaching the end")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterShader
-
-(define-property vertex-source
-  (of-object "ClutterShader")
-  (prop-type "GParamString")
-  (docs "Source of vertex shader")
+(define-property repeat-count
+  (of-object "ClutterTimeline")
+  (prop-type "GParamInt")
+  (docs "How many times the timeline should repeat")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fragment-source
-  (of-object "ClutterShader")
-  (prop-type "GParamString")
-  (docs "Source of fragment shader")
+(define-property progress-mode
+  (of-object "ClutterTimeline")
+  (prop-type "GParamEnum")
+  (docs "How the timeline should compute the progress")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property compiled
-  (of-object "ClutterShader")
-  (prop-type "GParamBoolean")
-  (docs "Whether the shader is compiled and linked")
+;; From ClutterTransition
+
+(define-property interval
+  (of-object "ClutterTransition")
+  (prop-type "GParamObject")
+  (docs "The interval of values to transition")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property enabled
-  (of-object "ClutterShader")
-  (prop-type "GParamBoolean")
-  (docs "Whether the shader is enabled")
+(define-property animatable
+  (of-object "ClutterTransition")
+  (prop-type "GParamObject")
+  (docs "The animatable object")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-;; From ClutterScript
-
-(define-property filename-set
-  (of-object "ClutterScript")
+(define-property remove-on-complete
+  (of-object "ClutterTransition")
   (prop-type "GParamBoolean")
-  (docs "Whether the :filename property is set")
+  (docs "Detach the transition when completed")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property filename
-  (of-object "ClutterScript")
-  (prop-type "GParamString")
-  (docs "The path of the currently parsed file")
+;; From ClutterTransitionGroup
+
+;; From ClutterZoomAction
+
+(define-signal zoom
+  (of-object "ClutterZoomAction")
+  (return-type "gboolean")
+  (when "last")
+  (parameters
+    '("ClutterActor*" "p0")
+    '("ClutterPoint*" "p1")
+    '("gdouble" "p2")
+  )
+)
+
+(define-property zoom-axis
+  (of-object "ClutterZoomAction")
+  (prop-type "GParamEnum")
+  (docs "Constraints the zoom to an axis")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
-
diff --git a/clutter/src/clutter_vfuncs.defs b/clutter/src/clutter_vfuncs.defs
index 8fd0009..aa6d7cf 100644
--- a/clutter/src/clutter_vfuncs.defs
+++ b/clutter/src/clutter_vfuncs.defs
@@ -1,383 +1,567 @@
-; ClutterLayout
-
-(define-vfunc get_layout_flags
-	(of-object "ClutterLayout")
-	(return-type "ClutterLayoutFlags")
-)
-
-(define-vfunc width_for_height
-	(of-object "ClutterLayout")
-	(return-type "void")
-	(parameters
-		'("float*" "width")
-		'("float" "height")
-	)
-)
+; ClutterActor
 
-(define-vfunc height_for_width
-	(of-object "ClutterLayout")
-	(return-type "void")
-	(parameters
-		'("float" "width")
-		'("float*" "height")
-	)
+(define-vfunc show_all
+  (of-object "ClutterActor")
+  (return-type "void")
 )
 
-(define-vfunc natural_request
-	(of-object "ClutterLayout")
-	(return-type "void")
-	(parameters
-		'("float*" "width")
-		'("float*" "height")
-	)
+(define-vfunc hide_all
+  (of-object "ClutterActor")
+  (return-type "void")
 )
 
-(define-vfunc tune_request
-	(of-object "ClutterLayout")
-	(return-type "gboolean")
-	(parameters
-		'("float" "given_width")
-		'("float" "given_height")
-		'("float*" "width")
-		'("float*" "height")
-	)
+(define-vfunc pick
+  (of-object "ClutterActor")
+  (return-type "void")
+  (parameters
+    '("const-ClutterColor*" "color")
+  )
 )
 
-; ClutterLayoutManager
-
 (define-vfunc get_preferred_width
-	(of-object "ClutterLayoutManager")
-	(return-type "void")
-	(parameters
-		'("ClutterContainer*" "container")
-		'("float" "for_height")
-		'("float*" "minimum_width_p")
-		'("float*" "natural_width_p")
-	)
+  (of-object "ClutterActor")
+  (return-type "void")
+  (parameters
+    '("float" "for_height")
+    '("float*" "min_width_p")
+    '("float*" "natural_width_p")
+  )
 )
 
 (define-vfunc get_preferred_height
-	(of-object "ClutterLayoutManager")
-	(return-type "void")
-	(parameters
-		'("ClutterContainer*" "container")
-		'("float" "for_width")
-		'("float*" "minimum_height_p")
-		'("float*" "natural_height_p")
-	)
+  (of-object "ClutterActor")
+  (return-type "void")
+  (parameters
+    '("float" "for_width")
+    '("float*" "min_height_p")
+    '("float*" "natural_height_p")
+  )
 )
 
 (define-vfunc allocate
-	(of-object "ClutterLayoutManager")
-	(return-type "void")
-	(parameters
-		'("ClutterContainer*" "container")
-		'("const-ClutterActorBox*" "allocation")
-		'("ClutterAllocationFlags" "flags")
-	)
+  (of-object "ClutterActor")
+  (return-type "void")
+  (parameters
+    '("const-ClutterActorBox*" "box")
+    '("ClutterAllocationFlags" "flags")
+  )
 )
 
-(define-vfunc set_container
-	(of-object "ClutterLayoutManager")
-	(return-type "void")
-	(parameters
-		'("ClutterContainer*" "container")
-	)
+(define-vfunc apply_transform
+  (of-object "ClutterActor")
+  (return-type "void")
+  (parameters
+    '("ClutterMatrix" "matrix")
+  )
 )
 
-(define-vfunc get_child_meta_type
-	(of-object "ClutterLayoutManager")
-	(return-type "GType")
+; ClutterActorMeta
+
+(define-vfunc set_actor
+  (of-object "ClutterActorMeta")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-vfunc create_child_meta
-	(of-object "ClutterLayoutManager")
-	(return-type "ClutterLayoutMeta*")
-	(parameters
-		'("ClutterContainer*" "container")
-		'("ClutterActor*" "actorallocation")
-	)
+; ClutterAnimatable
+
+(define-vfunc get_initial_state
+  (of-object "ClutterAnimatable")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("GValue*" "value")
+  )
 )
 
-(define-vfunc begin_animation
-	(of-object "ClutterLayoutManager")
-	(return-type "ClutterAlpha*")
-	(parameters
-		'("guint" "duration")
-		'("gulong" "mode")
-	)
+(define-vfunc set_final_state
+  (of-object "ClutterAnimatable")
+  (return-type "void")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("GValue*" "value")
+  )
 )
 
-(define-vfunc get_animation_progress
-	(of-object "ClutterLayoutManager")
-	(return-type "double")
+(define-vfunc interpolate_value
+  (of-object "ClutterAnimatable")
+  (return-type "gboolean")
+  (parameters
+    '("const-gchar*" "property_name")
+    '("ClutterInterval*" "interval")
+    '("gdouble" "progess")
+    '("GValue*" "value")
+  )
 )
 
-(define-vfunc end_animation
-	(of-object "ClutterLayoutManager")
-	(return-type "void")
+; ClutterConstraint
+
+(define-vfunc update_allocation
+  (of-object "ClutterConstraint"
+  (return-type "void"
+  (parameters
+    '("ClutterActor*" "actor")
+    '("ClutterActorBox*" "allocation")
+  )
 )
 
-; ClutterBox
+; ClutterContainer
 
-(define-vfunc unpack_child
-	(of-object "ClutterBox")
-	(return-type "void")
-	(parameters
-		'("ClutterBoxChild*" "child")
-	)
+(define-vfunc add
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-vfunc pack_child
-	(of-object "ClutterBox")
-	(return-type "void")
-	(parameters
-		'("ClutterBoxChild*" "child")
-	)
+(define-vfunc remove
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-; ClutterMedia
+(define-vfunc foreach
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (parameters
+    '("ClutterCallback" "callback")
+    '("gpointer" "user_data")
+  )
+)
+
+(define-vfunc raise
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+    '("ClutterActor*" "sibling")
+  )
+)
 
-(define-vfunc set_uri
-  (of-object "ClutterMedia")
+(define-vfunc lower
+  (of-object "ClutterContainer")
   (return-type "void")
   (parameters
-    '("const-char*" "uri")
+    '("ClutterActor*" "actor")
+    '("ClutterActor*" "sibling")
   )
 )
 
-(define-vfunc get_uri
-  (of-object "ClutterMedia")
-  (return-type "const-char*")
+(define-vfunc sort_depth_order
+  (of-object "ClutterContainer")
+  (return-type "void")
+)
+
+(define-vfunc create_child_meta
+  (of-object "ClutterContainer")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-vfunc set_playing
-  (of-object "ClutterMedia")
+(define-vfunc destroy_child_meta
+  (of-object "ClutterContainer")
   (return-type "void")
+  (parameters    '("ClutterActor*" "actor")
+  )
+)
+
+(define-vfunc get_child_meta
+  (of-object "ClutterContainer")
+  (return-type "ClutterChildMeta*")
   (parameters
-    '("gboolean" "playing")
+    '("ClutterActor*" "actor")
   )
 )
 
-(define-vfunc get_playing
-  (of-object "ClutterMedia")
+; ClutterContent
+
+(define-vfunc get_preferred_size
+  (of-object "ClutterContent")
   (return-type "gboolean")
+  (parameters
+    '("gfloat*" "width")
+    '("gfloat*" "height")
+  )
 )
 
-(define-vfunc set_position
-  (of-object "ClutterMedia")
+(define-vfunc paint_content
+  (of-object "ClutterContent")
   (return-type "void")
   (parameters
-    '("int" "position")
+    '("ClutterActor*" "actor")
+    '("ClutterPaintNode*" "node")
   )
 )
 
-(define-vfunc get_position
-  (of-object "ClutterMedia")
-  (return-type "int")
+(define-vfunc attached
+  (of-object "ClutterContent")
+  (return-type "void")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-vfunc set_volume
-  (of-object "ClutterMedia")
+(define-vfunc detached
+  (of-object "ClutterContent")
   (return-type "void")
   (parameters
-    '("double" "volume")
+    '("ClutterActor*" "actor")
   )
 )
 
-(define-vfunc get_volume
-  (of-object "ClutterMedia")
-  (return-type "double")
+(define-vfunc invalidate
+  (of-object "ClutterContent")
+  (return-type "void")
 )
 
-(define-vfunc can_seek
-  (of-object "ClutterMedia")
+; ClutterDeformEffect
+
+(define-vfunc deform_vertex
+  (of-object "ClutterDeformEffect")
+  (return-type "void")
+  (parameters
+    '("gfloat" "width")
+    '("gfloat" "height")
+    '("CoglTextureVertex*" "vertex")
+  )
+)
+
+; ClutterDropAction
+
+(define-vfunc can_drop
+  (of-object "ClutterDropAction")
   (return-type "gboolean")
+  (parameters
+    '("ClutterActor*" "actor")
+    '("gfloat" "event_x")
+    '("gfloat" "event_y")
+  )
+)
+(define-vfunc over_in
+  (of-object "ClutterDropAction")
+  (return-type "void"
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+(define-vfunc over_out
+  (of-object "ClutterDropAction")
+  (return-type "void"
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
+(define-vfunc drop
+  (of-object "ClutterDropAction")
+  (return-type "void"
+  (parameters
+    '("ClutterActor*" "actor")
+    '("gfloat" "event_x")
+    '("gfloat" "event_y")
+  )
+)
+
+; ClutterEffect
 
-(define-vfunc get_buffer_percent
-  (of-object "ClutterMedia")
-  (return-type "int")
+(define-vfunc pre_paint
+  (of-object "ClutterEffect")
+  (return-type "void")
 )
 
-(define-vfunc get_duration
-  (of-object "ClutterMedia")
-  (return-type "int")
+(define-vfunc post_paint
+  (of-object "ClutterEffect")
+  (return-type "void")
 )
 
-; ClutterBehaviour
+(define-vfunc get_paint_volume
+  (of-object "ClutterEffect")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterPaintVolume*" "volume")
+  )
+)
 
-(define-vfunc alpha_notify
-  (of-object "ClutterBehaviour")
+(define-vfunc paint
+  (of-object "ClutterEffect")
   (return-type "void")
   (parameters
-    '("double" "alpha_value")
+    '("ClutterEffectPaintFlags" "flags")
   )
 )
 
-; ClutterScriptable
-
-(define-vfunc set_id
-  (of-object "ClutterScriptable")
+(define-vfunc pick
+  (of-object "ClutterEffect")
   (return-type "void")
   (parameters
-    '("const-gchar*" "name")
+    '("ClutterEffectPaintFlags" "flags")
   )
 )
 
-(define-vfunc get_id
-  (of-object "ClutterScriptable")
-  (return-type "const-gchar*")
+;ClutterGestureAction
+
+(define-vfunc gesture_begin
+  (of-object "ClutterGestureAction")
+  (return-type "gboolean")
 )
 
-(define-vfunc parse_custom_node
-  (of-object "ClutterScriptable")
+(define-vfunc gesture_progress
+  (of-object "ClutterGestureAction")
   (return-type "gboolean")
   (parameters
-    '("ClutterScript*" "script")
-    '("GValue*" "value")
-    '("const-gchar*" "name")
-    '("JSonNode*" "node")
+     '("ClutterActor*" "actor")
   )
 )
 
-(define-vfunc set_custom_property
-  (of-object "ClutterScriptable")
-  (return-type "void")
+(define-vfunc gesture_end
+  (of-object "ClutterGestureAction")
+  (return-type "")
   (parameters
-    '("ClutterScript*" "script")
-    '("const-gchar*" "name")
-    '("const-GValue*" "value")
+    '("ClutterActor*" "actor")
   )
 )
 
-; ClutterActor
-
-(define-vfunc show_all
-  (of-object "ClutterActor")
-  (return-type "void")
+(define-vfunc gesture_cancel
+  (of-object "ClutterGestureAction")
+  (return-type "")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
+)
+(define-vfunc gesture_prepare
+  (of-object "ClutterGestureAction")
+  (return-type "gboolean")
+  (parameters
+    '("ClutterActor*" "actor")
+  )
 )
 
-(define-vfunc hide_all
-  (of-object "ClutterActor")
-  (return-type "void")
+; ClutterInterval
+
+(define-vfunc validate
+  (of-object "ClutterInterval")
+  (return-type "gboolean")
+  (parameters
+    '("GParamSpec" "pspec")
+  )
 )
 
-(define-vfunc pick
-  (of-object "ClutterActor")
-  (return-type "void")
+(define-vfunc compute_value
+  (of-object "ClutterInterval")
+  (return-type "gboolean")
   (parameters
-    '("const-ClutterColor*" "color")
+    '("gdouble" "factor")
+    '("GValue" "value")
   )
 )
 
+
+; ClutterLayoutManager
+
 (define-vfunc get_preferred_width
-  (of-object "ClutterActor")
-  (return-type "void")
+	(of-object "ClutterLayoutManager")
+	(return-type "void")
+	(parameters
+		'("ClutterContainer*" "container")
+		'("float" "for_height")
+		'("float*" "minimum_width_p")
+		'("float*" "natural_width_p")
+	)
+)
+
+(define-vfunc get_preferred_height
+	(of-object "ClutterLayoutManager")
+	(return-type "void")
+	(parameters
+		'("ClutterContainer*" "container")
+		'("float" "for_width")
+		'("float*" "minimum_height_p")
+		'("float*" "natural_height_p")
+	)
+)
+
+(define-vfunc allocate
+	(of-object "ClutterLayoutManager")
+	(return-type "void")
+	(parameters
+		'("ClutterContainer*" "container")
+		'("const-ClutterActorBox*" "allocation")
+		'("ClutterAllocationFlags" "flags")
+	)
+)
+
+(define-vfunc set_container
+	(of-object "ClutterLayoutManager")
+	(return-type "void")
+	(parameters
+		'("ClutterContainer*" "container")
+	)
+)
+
+(define-vfunc get_child_meta_type
+	(of-object "ClutterLayoutManager")
+	(return-type "GType")
+)
+
+(define-vfunc create_child_meta
+	(of-object "ClutterLayoutManager")
+	(return-type "ClutterLayoutMeta*")
+	(parameters
+		'("ClutterContainer*" "container")
+		'("ClutterActor*" "actor")
+	)
+)
+
+; ClutterModel
+
+(define-vfunc get_n_rows
+  (of-object "ClutterModel")
+  (return-type "guint")
+)
+
+(define-vfunc get_n_columns
+  (of-object "ClutterModel")
+  (return-type "guint")
+)
+
+(define-vfunc get_column_name
+  (of-object "ClutterModel")
+  (return-type "const gchar*")
   (parameters
-    '("float" "for_height")
-    '("float*" "min_width_p")
-    '("float*" "natural_width_p")
+    '("guint" "column")
   )
 )
 
-(define-vfunc get_preferred_height
-  (of-object "ClutterActor")
-  (return-type "void")
+(define-vfunc get_column_type
+  (of-object "ClutterModel")
+  (return-type "GType")
   (parameters
-    '("float" "for_width")
-    '("float*" "min_height_p")
-    '("float*" "natural_height_p")
+    '("guint" "column")
   )
 )
 
-(define-vfunc allocate
-  (of-object "ClutterActor")
-  (return-type "void")
+(define-vfunc insert_row
+  (of-object "ClutterModel")
+  (return-type "ClutterModelIter*")
   (parameters
-    '("const-ClutterActorBox*" "box")
-    '("ClutterAllocationFlags" "absolute_origin_changed")
+    '("gint" "index_")
   )
 )
 
-(define-vfunc get_paint_area
-  (of-object "ClutterActor")
-  (return-type "void")
+(define-vfunc remove_row
+  (of-object "ClutterModel")
+  (return-type "")
   (parameters
-    '("ClutterActorBox*" "box")
+    '("guint" "row")
   )
 )
 
-; ClutterContainer
+(define-vfunc get_iter_at_row
+  (of-object "ClutterModel")
+  (return-type "ClutterModelIter*")
+  (parameters
+    '("guint" "row")
+  )
+)
 
-(define-vfunc add
-  (of-object "ClutterContainer")
+(define-vfunc resort
+  (of-object "ClutterModel")
   (return-type "void")
   (parameters
-    '("ClutterActor*" "actor")
+    '("ClutterModelSortFunc" "func")
+    '("gpointer" "data")
   )
 )
 
-(define-vfunc remove
-  (of-object "ClutterContainer")
-  (return-type "void")
+;ClutterOffscreenEffect
+
+(define-vfunc create_texture
+  (of-object "ClutterOffscreenEffect")
+  (return-type "CoglHandle")
   (parameters
-    '("ClutterActor*" "actor")
+    '("gfloat" "width")
+    '("gfloat" "height")
   )
 )
 
-(define-vfunc foreach
-  (of-object "ClutterContainer")
+(define-vfunc paint_target
+  (of-object "ClutterOffscreenEffect")
+  (return-type "void")
+)
+
+; ClutterScriptable
+
+(define-vfunc set_id
+  (of-object "ClutterScriptable")
   (return-type "void")
   (parameters
-    '("ClutterCallback" "callback")
-    '("gpointer" "user_data")
+    '("const-gchar*" "name")
   )
 )
 
-(define-vfunc raise
-  (of-object "ClutterContainer")
-  (return-type "void")
+(define-vfunc get_id
+  (of-object "ClutterScriptable")
+  (return-type "const-gchar*")
+)
+
+(define-vfunc parse_custom_node
+  (of-object "ClutterScriptable")
+  (return-type "gboolean")
   (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
+    '("ClutterScript*" "script")
+    '("GValue*" "value")
+    '("const-gchar*" "name")
+    '("JSonNode*" "node")
   )
 )
 
-(define-vfunc lower
-  (of-object "ClutterContainer")
+(define-vfunc set_custom_property
+  (of-object "ClutterScriptable")
   (return-type "void")
   (parameters
-    '("ClutterActor*" "actor")
-    '("ClutterActor*" "sibling")
+    '("ClutterScript*" "script")
+    '("const-gchar*" "name")
+    '("const-GValue*" "value")
   )
 )
 
-(define-vfunc sort_depth_order
-  (of-object "ClutterContainer")
-  (return-type "void")
+; ClutterShaderEffect
+
+(define-vfunc get_static_shader_source
+  (of-object "ClutterShaderEffect")
+  (return-type "gchar*")
 )
 
-(define-vfunc create_child_meta
-  (of-object "ClutterContainer")
+; ClutterTransition
+
+(define-vfunc attached
+  (of-object "ClutterTransition")
   (return-type "void")
   (parameters
-    '("ClutterActor*" "actor")
+    '("ClutterAnimatable*" "animatable")
   )
 )
 
-(define-vfunc destroy_child_meta
-  (of-object "ClutterContainer")
+(define-vfunc detached
+  (of-object "ClutterTransition")
   (return-type "void")
   (parameters
-    '("ClutterActor*" "actor")
+    '("ClutterAnimatable*" "animatable")
   )
 )
 
-(define-vfunc get_child_meta
-  (of-object "ClutterContainer")
-  (return-type "ClutterChildMeta*")
+(define-vfunc compute_value
+  (of-object "ClutterTransition")
+  (return-type "void")
   (parameters
-    '("ClutterActor*" "actor")
+    '("ClutterAnimatable*" "animatable")
+    '("ClutterInterval*" "interval")
+    '("gdouble" "progress")
   )
 )
diff --git a/doc/reference/Doxyfile.in b/doc/reference/Doxyfile.in
index 9fb71e0..ccbd87f 100644
--- a/doc/reference/Doxyfile.in
+++ b/doc/reference/Doxyfile.in
@@ -1,105 +1,816 @@
-# Doxyfile 1.6.1
-# @configure_input@
+# Doxyfile 1.8.6
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
 
 #---------------------------------------------------------------------------
 # Project related configuration options
 #---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all text
+# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
+# for the list of possible encodings.
+# The default value is: UTF-8.
+
 DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
 PROJECT_NAME           = @PACKAGE_NAME@
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
 PROJECT_NUMBER         = @PACKAGE_VERSION@
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          =
+
+# With the PROJECT_LOGO tag one can specify an logo or icon that is included in
+# the documentation. The maximum height of the logo should not exceed 55 pixels
+# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo
+# to the output directory.
+
+PROJECT_LOGO           =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
 OUTPUT_DIRECTORY       = reference
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
 CREATE_SUBDIRS         = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
 OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
 BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
 REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
 ABBREVIATE_BRIEF       =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
 ALWAYS_DETAILED_SEC    = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
 INLINE_INHERITED_MEMB  = NO
+
+# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
 FULL_PATH_NAMES        = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
 STRIP_FROM_PATH        = "@abs_top_builddir@/clutter/" \
                          "@abs_top_srcdir@/clutter/" \
                          "@abs_top_builddir@/" \
                          "@abs_top_srcdir@/"
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
 STRIP_FROM_INC_PATH    = "@abs_top_builddir@/clutter/" \
                          "@abs_top_srcdir@/clutter/" \
                          "@abs_top_builddir@/" \
                          "@abs_top_srcdir@/"
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
 SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
 JAVADOC_AUTOBRIEF      = YES
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
 QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
 MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
 INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a
+# new page for each member. If set to NO, the documentation of a member will be
+# part of the file/class/namespace that contains it.
+# The default value is: NO.
+
 SEPARATE_MEMBER_PAGES  = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
 TAB_SIZE               = 8
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:\n"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". You can put \n's in the value part of an alias to insert
+# newlines.
+
 ALIASES                = "newin{2}=\xrefitem since_\1_\2 \"Since @PACKAGE_NAME@ \1.\2\" \"New API in @PACKAGE_NAME@ \1.\2\""
+
+# This tag can be used to specify a number of word-keyword mappings (TCL only).
+# A mapping has the form "name=value". For example adding "class=itcl::class"
+# will allow you to use the command class in the itcl::class meaning.
+
+TCL_SUBST              =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
 OPTIMIZE_OUTPUT_FOR_C  = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
 OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
 OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
 OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+# C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make
+# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
+# (default is Fortran), use: inc=Fortran f=C.
+#
+# Note For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen.
+
 EXTENSION_MAPPING      =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See http://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by by putting a % sign in front of the word
+# or globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
 BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
 CPP_CLI_SUPPORT        = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
 SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
 IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
 DISTRIBUTE_GROUP_DOC   = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
 SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = NO
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
 TYPEDEF_HIDES_STRUCT   = NO
-SYMBOL_CACHE_SIZE      = 0
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 0
+
 #---------------------------------------------------------------------------
 # Build related configuration options
 #---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
 EXTRACT_ALL            = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
 EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
 EXTRACT_STATIC         = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
 EXTRACT_LOCAL_CLASSES  = NO
+
+# This flag is only useful for Objective-C code. When set to YES local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO only methods in the interface are
+# included.
+# The default value is: NO.
+
 EXTRACT_LOCAL_METHODS  = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
 EXTRACT_ANON_NSPACES   = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
 HIDE_UNDOC_MEMBERS     = YES
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO these classes will be included in the various overviews. This option has
+# no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
 HIDE_UNDOC_CLASSES     = YES
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# (class|struct|union) declarations. If set to NO these declarations will be
+# included in the documentation.
+# The default value is: NO.
+
 HIDE_FRIEND_COMPOUNDS  = YES
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
 HIDE_IN_BODY_DOCS      = YES
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
 INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+# names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+# The default value is: system dependent.
+
 CASE_SENSE_NAMES       = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES the
+# scope will be hidden.
+# The default value is: NO.
+
 HIDE_SCOPE_NAMES       = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
 SHOW_INCLUDE_FILES     = NO
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = NO
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
 INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO the members will appear in declaration order.
+# The default value is: YES.
+
 SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
 SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
 SORT_MEMBERS_CTORS_1ST = YES
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
 SORT_GROUP_NAMES       = YES
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
 SORT_BY_SCOPE_NAME     = YES
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = NO
+
+# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the
+# todo list. This list is created by putting \todo commands in the
+# documentation.
+# The default value is: YES.
+
 GENERATE_TODOLIST      = NO
+
+# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the
+# test list. This list is created by putting \test commands in the
+# documentation.
+# The default value is: YES.
+
 GENERATE_TESTLIST      = NO
+
+# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
 GENERATE_BUGLIST       = NO
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
 GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
 ENABLED_SECTIONS       =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
 MAX_INITIALIZER_LINES  = 2
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES the list
+# will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
 SHOW_USED_FILES        = YES
-SHOW_DIRECTORIES       = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
 SHOW_FILES             = NO
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
 SHOW_NAMESPACES        = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
 FILE_VERSION_FILTER    =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
 LAYOUT_FILE            =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. Do not use file names with spaces, bibtex cannot handle them. See
+# also \cite for info how to create references.
+
+CITE_BIB_FILES         =
+
 #---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
+# Configuration options related to warning and progress messages
 #---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
 QUIET                  = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
 WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
 WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some parameters
+# in a documented function, or documenting parameters that don't exist or using
+# markup commands wrongly.
+# The default value is: YES.
+
 WARN_IF_DOC_ERROR      = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO doxygen will only warn about wrong or incomplete parameter
+# documentation, but not about the absence of documentation.
+# The default value is: NO.
+
 WARN_NO_PARAMDOC       = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
 WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr).
+
 WARN_LOGFILE           = reference/doxygen.log
+
 #---------------------------------------------------------------------------
-# configuration options related to the input files
+# Configuration options related to the input files
 #---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces.
+# Note: If this tag is empty the current directory is searched.
+
 INPUT                  =
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see: http://www.gnu.org/software/libiconv) for the list of
+# possible encodings.
+# The default value is: UTF-8.
+
 INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank the
+# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii,
+# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp,
+# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown,
+# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,
+# *.qsf, *.as and *.js.
+
 FILE_PATTERNS          =
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
 RECURSIVE              = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
 EXCLUDE                =
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
 EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
 EXCLUDE_PATTERNS       =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
 EXCLUDE_SYMBOLS        = _* \
                          adaptor_trait \
                          basic_filebuf \
@@ -109,128 +820,1137 @@ EXCLUDE_SYMBOLS        = _* \
                          internal \
                          pair \
                          unary_function
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
 EXAMPLE_PATH           = "@abs_top_srcdir@/examples"
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
 EXAMPLE_PATTERNS       = *.cc \
                          *.h
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
 EXAMPLE_RECURSIVE      = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
 IMAGE_PATH             =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+
 INPUT_FILTER           =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+
 FILTER_PATTERNS        =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER ) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
 FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE =
+
 #---------------------------------------------------------------------------
-# configuration options related to source browsing
+# Configuration options related to source browsing
 #---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
 SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
 INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
 STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# function all documented functions referencing it will be listed.
+# The default value is: NO.
+
 REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
 REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES, then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
 REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see http://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
 USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
 VERBATIM_HEADERS       = NO
+
 #---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
+# Configuration options related to the alphabetical class index
 #---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
 ALPHABETICAL_INDEX     = NO
+
+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+# which the alphabetical index list will be split.
+# Minimum value: 1, maximum value: 20, default value: 5.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
 COLS_IN_ALPHA_INDEX    = 5
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
 IGNORE_PREFIX          =
+
 #---------------------------------------------------------------------------
-# configuration options related to the HTML output
+# Configuration options related to the HTML output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output
+# The default value is: YES.
+
 GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 HTML_HEADER            =
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 HTML_FOOTER            =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 HTML_STYLESHEET        = "@MMDOCTOOLDIR@/doxygen.css"
-HTML_ALIGN_MEMBERS     = YES
-HTML_DYNAMIC_SECTIONS  = NO
-GENERATE_DOCSET        = NO
-DOCSET_FEEDNAME        = "Doxygen generated docs"
-DOCSET_BUNDLE_ID       = org.doxygen.Project
-GENERATE_HTMLHELP      = NO
-CHM_FILE               =
-HHC_LOCATION           =
-GENERATE_CHI           = NO
-CHM_INDEX_ENCODING     =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-
+# defined cascading style sheet that is included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefor more robust against future updates.
+# Doxygen will copy the style sheet file to the output directory. For an example
+# see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  =
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the stylesheet and background images according to
+# this color. Hue is specified as an angle on a colorwheel, see
+# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use grayscales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to NO can help when comparing the output of multiple runs.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = NO
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see: http://developer.apple.com/tools/xcode/), introduced with
+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+# Makefile in the HTML output directory. Running make will produce the docset in
+# that directory and running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+# for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = NO
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+# Windows.
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               =
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler ( hhc.exe). If non-empty
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated (
+# YES) or that it should be included in the master .chm file ( NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated (
+# YES) or a normal table of contents ( NO) in the .chm file.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
 BINARY_TOC             = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
 TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QCH_FILE               =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHP_NAMESPACE          =
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
+# folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+# filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHP_CUST_FILTER_NAME   =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+# filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHP_CUST_FILTER_ATTRS  =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHP_SECT_FILTER_ATTRS  =
+
+# The QHG_LOCATION tag can be used to specify the location of Qt's
+# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+# generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
 QHG_LOCATION           =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 1
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine-tune the look of the index. As an example, the default style
+# sheet generated by doxygen has an example that shows how to put an image at
+# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+# the same information as the tab index, you could consider setting
+# DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 GENERATE_TREEVIEW      = NONE
-USE_INLINE_TREES       = NO
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 1
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 TREEVIEW_WIDTH         = 250
+
+# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# http://www.mathjax.org) which uses client side Javascript for the rendering
+# instead of using prerendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. See the MathJax site (see:
+# http://docs.mathjax.org/en/latest/output.html) for more details.
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility), NativeMML (i.e. MathML) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from http://www.mathjax.org before deployment.
+# The default value is: http://cdn.mathjax.org/mathjax/latest.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        = http://cdn.mathjax.org/mathjax/latest
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
 SEARCHENGINE           = NO
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using Javascript. There
+# are two flavours of web server based searching depending on the
+# EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for
+# searching and an index file used by the script. When EXTERNAL_SEARCH is
+# enabled the indexing and searching needs to be provided by external tools. See
+# the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer ( doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: http://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer ( doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see: http://xapian.org/). See the section "External Indexing and
+# Searching" for details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  =
+
 #---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
+# Configuration options related to the LaTeX output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES doxygen will generate LaTeX output.
+# The default value is: YES.
+
 GENERATE_LATEX         = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when enabling USE_PDFLATEX this option is only used for generating
+# bitmaps for formulas in the HTML output, but not in the Makefile that is
+# written to the output directory.
+# The default file is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 PAPER_TYPE             = a4wide
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. To get the times font for
+# instance you can specify
+# EXTRA_PACKAGES=times
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 EXTRA_PACKAGES         =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+# generated LaTeX document. The header should contain everything until the first
+# chapter. If it is left blank doxygen will generate a standard header. See
+# section "Doxygen usage" for information on how to let doxygen write the
+# default header to a separate file.
+#
+# Note: Only use a user-defined header if you know what you are doing! The
+# following commands have a special meaning inside the header: $title,
+# $datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will
+# replace them by respectively the title of the page, the current date and time,
+# only the current date, the version number of doxygen, the project name (see
+# PROJECT_NAME), or the project number (see PROJECT_NUMBER).
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+# generated LaTeX document. The footer should contain everything after the last
+# chapter. If it is left blank doxygen will generate a standard footer.
+#
+# Note: Only use a user-defined footer if you know what you are doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 PDF_HYPERLINKS         = YES
+
+# If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+# the PDF file directly from the LaTeX files. Set this option to YES to get a
+# higher quality PDF documentation.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help. This option is also used
+# when generating formulas in HTML.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_HIDE_INDICES     = NO
+
+# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+# code with syntax highlighting in the LaTeX output.
+#
+# Note that which sources are shown also depends on other settings such as
+# SOURCE_BROWSER.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
 LATEX_SOURCE_CODE      = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
 #---------------------------------------------------------------------------
-# configuration options related to the RTF output
+# Configuration options related to the RTF output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
 GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
 RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
 COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
 RTF_HYPERLINKS         = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's config
+# file, i.e. a series of assignments. You only have to provide replacements,
+# missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
 RTF_STYLESHEET_FILE    =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's config file. A template extensions file can be generated
+# using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
 RTF_EXTENSIONS_FILE    =
+
 #---------------------------------------------------------------------------
-# configuration options related to the man page output
+# Configuration options related to the man page output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
 GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
 MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
 MAN_EXTENSION          = .3
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
 MAN_LINKS              = NO
+
 #---------------------------------------------------------------------------
-# configuration options related to the XML output
+# Configuration options related to the XML output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
 GENERATE_XML           = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
 XML_OUTPUT             = xml
+
+# The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a
+# validating XML parser to check the syntax of the XML files.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
 XML_SCHEMA             =
+
+# The XML_DTD tag can be used to specify a XML DTD, which can be used by a
+# validating XML parser to check the syntax of the XML files.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
 XML_DTD                =
+
+# If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
 XML_PROGRAMLISTING     = NO
+
 #---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
+# Configuration options related to the DOCBOOK output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES doxygen will generate an AutoGen
+# Definitions (see http://autogen.sf.net) file that captures the structure of
+# the code including all documentation. Note that this feature is still
+# experimental and incomplete at the moment.
+# The default value is: NO.
+
 GENERATE_AUTOGEN_DEF   = NO
+
 #---------------------------------------------------------------------------
-# configuration options related to the Perl module output
+# Configuration options related to the Perl module output
 #---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
 GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
 PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
 PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
 PERLMOD_MAKEVAR_PREFIX =
+
 #---------------------------------------------------------------------------
 # Configuration options related to the preprocessor
 #---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
 ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES doxygen will expand all macro names
+# in the source code. If set to NO only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 MACRO_EXPANSION        = YES
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 EXPAND_ONLY_PREDEF     = YES
+
+# If the SEARCH_INCLUDES tag is set to YES the includes files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
 INCLUDE_PATH           = "@abs_top_builddir@/clutter" \
                          "@abs_top_srcdir@/clutter"
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 INCLUDE_FILE_PATTERNS  = *.h
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 PREDEFINED             = __cplusplus \
                          DOXYGEN_SHOULD_SKIP_THIS \
                          "G_GNUC_CONST=" \
@@ -239,45 +1959,370 @@ PREDEFINED             = __cplusplus \
                          GLIBMM_PROPERTIES_ENABLED \
                          GLIBMM_EXCEPTIONS_ENABLED \
                          GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 EXPAND_AS_DEFINED      = CLUTTERMM_MAJOR_VERSION \
                          CLUTTERMM_MINOR_VERSION \
                          CLUTTERMM_MICRO_VERSION
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all refrences to function-like macros that are alone on a line, have an
+# all uppercase name, and do not end with a semicolon. Such function macros are
+# typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
 SKIP_FUNCTION_MACROS   = YES
+
 #---------------------------------------------------------------------------
-# Configuration::additions related to external references
+# Configuration options related to external references
 #---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have an unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
 TAGFILES               = @DOXYGEN_TAGFILES@
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
 GENERATE_TAGFILE       = "reference/@CLUTTERMM_MODULE_NAME@.tag"
+
+# If the ALLEXTERNALS tag is set to YES all external class will be listed in the
+# class index. If set to NO only the inherited external classes will be listed.
+# The default value is: NO.
+
 ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed in
+# the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
 EXTERNAL_GROUPS        = NO
+
+# If the EXTERNAL_PAGES tag is set to YES all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of 'which perl').
+# The default file (with absolute path) is: /usr/bin/perl.
+
 PERL_PATH              = @PERL@
+
 #---------------------------------------------------------------------------
 # Configuration options related to the dot tool
 #---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram
+# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+# NO turns the diagrams off. Note that this option also works with HAVE_DOT
+# disabled, but it is recommended to install and use dot, since it yields more
+# powerful graphs.
+# The default value is: YES.
+
 CLASS_DIAGRAMS         = NO
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see:
+# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
 MSCGEN_PATH            =
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               =
+
+# If set to YES, the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
 HIDE_UNDOC_RELATIONS   = NO
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: NO.
+
 HAVE_DOT               = YES
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font n the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_FONTNAME           = FreeSans
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_FONTPATH           =
+
+# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+# each documented class showing the direct and indirect inheritance relations.
+# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 TEMPLATE_RELATIONS     = YES
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 INCLUDE_GRAPH          = NO
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 INCLUDED_BY_GRAPH      = NO
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DIRECTORY_GRAPH        = NO
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot.
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, gif and svg.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_PATH               =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOTFILE_DIRS           =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_MULTI_TARGETS      = YES
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES doxygen will remove the intermediate dot
+# files that are used to generate the various graphs.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
 DOT_CLEANUP            = YES
-- 
1.8.5.3

