* actor is not visible.
*
* 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.
+ * #ClutterActor <function>map()</function> 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.
*
* When overriding map, it is mandatory to chain up to the parent
* implementation.
* unmaps its children if they were mapped.
*
* 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.
+ * #ClutterActor <function>unmap()</function> 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.
*
* When overriding unmap, it is mandatory to chain up to the parent
* implementation.
* sure it isn't mapped, an application-visible side effect that you
* may not be expecting.
*
- * This function should not really be in the public API, because
+ * This function should not be called by application code.
+ */
+void
+clutter_actor_unrealize (ClutterActor *self)
+{
+ g_return_if_fail (CLUTTER_IS_ACTOR (self));
+ g_return_if_fail (!CLUTTER_ACTOR_IS_MAPPED (self));
+
+/* This function should not really be in the public API, because
* there isn't a good reason to call it. ClutterActor will already
* unrealize things for you when it's important to do so.
*
* _clutter_actor_rerealize() (inside Clutter) or just call your
* code that recreates your resources directly (outside Clutter).
*/
-void
-clutter_actor_unrealize (ClutterActor *self)
-{
- g_return_if_fail (CLUTTER_IS_ACTOR (self));
- g_return_if_fail (!CLUTTER_ACTOR_IS_MAPPED (self));
#ifdef CLUTTER_ENABLE_DEBUG
clutter_actor_verify_map_state (self);
* ClutterActor::key-focus-in:
* @actor: the actor which now has key focus
*
- * The ::focus-in signal is emitted when @actor recieves key focus.
+ * The ::key-focus-in signal is emitted when @actor receives key focus.
*
* Since: 0.6
*/
G_TYPE_NONE, 0);
/**
- * ClutterActor::map:
- * @actor: the #ClutterActor to map
- *
- * The ::map virtual functon must be overridden in order to call
- * clutter_actor_map() on any child actors if the actor is not a
- * #ClutterContainer. When overriding, it is mandatory to chain up
- * to the parent implementation.
- *
- * Since: 1.0
- */
-
- /**
- * ClutterActor::unmap:
- * @actor: the #ClutterActor to unmap
- *
- * The ::unmap virtual functon must be overridden in order to call
- * clutter_actor_unmap() on any child actors if the actor is not a
- * #ClutterContainer. When overriding, it is mandatory to chain up
- * to the parent implementation.
- *
- * Since: 1.0
- */
-
- /**
* ClutterActor::pick:
* @actor: the #ClutterActor that received the signal
* @color: the #ClutterColor to be used when picking
* @enter_event: signal class closure for #ClutterActor::enter-event
* @leave_event: signal class closure for #ClutterActor::leave-event
* @captured_event: signal class closure for #ClutterActor::captured-event
- * @key_focus_in: signal class closure for #ClutterActor::focus-in
- * @key_focus_out: signal class closure for #ClutterActor::focus-out
+ * @key_focus_in: signal class closure for #ClutterActor::key-focus-in
+ * @key_focus_out: signal class closure for #ClutterActor::key-focus-out
* @queue_relayout: class handler for #ClutterActor::queue-relayout
*
* Base class for actors.
* ]|
*
* <note>If the alpha function is a periodic function, i.e. it returns to
- * 0 after reaching %CLUTTER_ALPHA_MAX_ALPHA, then the actors will walk
- * the path back to the starting #ClutterKnot.</note>
+ * 0.0 after reaching 1.0, then the actors will walk the path back to the
+ * starting #ClutterKnot.</note>
*
* #ClutterBehaviourPath is available since Clutter 0.2
*/
/**
* ClutterBehaviourPath::knot-reached:
* @pathb: the object which received the signal
- * @knot_num: the index of the #ClutterPathKnot reached
+ * @knot_num: the index of the #ClutterKnot reached
*
* This signal is emitted each time a node defined inside the path
* is reached.
* @tint: the color to be used
*
* Creates a new #ClutterColorizeEffect to be used with
- * clutter_actor_set_effect()
+ * clutter_actor_add_effect()
*
* Return value: the newly created #ClutterColorizeEffect or %NULL
*
*
* The #ClutterActor that is effectively being dragged
*
- * A #ClutterDragActor will, be default, use the #ClutterActor that
+ * A #ClutterDragAction will, be default, use the #ClutterActor that
* has been attached to the action; it is possible to create a
* separate #ClutterActor and use it instead.
*
*
* Return value: 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().
+ * returned. You can use the merge id with clutter_script_unmerge_objects().
*
* Since: 0.6
*/
</partintro>
<xi:include href="xml/clutter-backend.xml"/>
- <xi:include href="xml/clutter-x11.xml"/>
+
+ <chapter>
+ <xi:include href="xml/clutter-x11.xml"/>
+ <xi:include href="xml/clutter-x11-texture-pixmap.xml"/>
+ </chapter>
+
<xi:include href="xml/clutter-glx.xml"/>
<xi:include href="xml/clutter-win32.xml"/>
<xi:include href="xml/clutter-egl.xml"/>
Actors are also able to receive events.</para>
<para>Subclasses of #ClutterActor include #ClutterStage, #ClutterTexture,
- #ClutterLabel, #ClutterRectangle, #ClutterEntry and
- #ClutterGroup. #ClutterActor<!-- -->s are added to a parent, transformed
+ #ClutterText, #ClutterRectangle, #ClutterCairoTexture, #ClutterGroup and
+ #ClutterBox. #ClutterActor<!-- -->s are added to a parent, transformed
and then made visible.</para>
<para>#ClutterStage is the top level #ClutterActor - it's the
when Clutter is initialised. #ClutterStage is a #ClutterGroup, a class
implementing the #ClutterCointainer interface.</para>
+ <para>Clutter allows explicit positioning and sizing through the
+ #ClutterFixedLayout layout manager; and implicit positioning and sizing
+ through fluid layout managers like #ClutterBoxLayout, #ClutterFlowLayout
+ and #ClutterTableLayout. Actors inside fixed layout managers like
+ #ClutterGroup and #ClutterStage can also be positioned and sized implicitly
+ using the #ClutterConstraint sub-classes.</para>
+
<para>#ClutterTimeline<!-- -->s provide the basis for Clutter's animation
- utilities. Multiple timelines can be synchronised using #ClutterScore,
- and #ClutterBehaviour and #ClutterEffect allow for the creation of
- animation effects such as transitions.</para>
+ utilities. #ClutterActor<!-- -->s can be animated using explicit animations
+ through the various #ClutterBehaviour implementations, or implicit
+ animations, through the clutter_actor_animate() function. Animations can
+ also be defined as named states through the #ClutterState class.</para>
<para>Clutter further contains a number of utilities, including;
#ClutterScript - for loading 'UI definition' files formatted in
- <ulink type="http" url="http://json.org">JSON</ulink>, #ClutterShader - a
+ <ulink type="http" url="http://json.org">JSON</ulink>; #ClutterShader - a
class for applying GPU shaders to actors, #ClutterModel - a utility class
- for MVC list type implementations, and fixed point math utilities.</para>
+ for MVC list type implementations; #ClutterAction<!-- -->s,
+ #ClutterConstraint<!-- -->s and #ClutterEffect<!-- -->s.</para>
</partintro>