[animation] Add an emitter for ::completed
The ::completed signal requires an emitter in case we want to stop the animation and safely dispose it inside application code without breaking invariants.
This commit is contained in:
parent
a5c88e62f2
commit
44d0733665
@ -1133,6 +1133,24 @@ clutter_animation_get_alpha (ClutterAnimation *animation)
|
|||||||
return animation->priv->alpha;
|
return animation->priv->alpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* clutter_animation_completed:
|
||||||
|
* @animation: a #ClutterAnimation
|
||||||
|
*
|
||||||
|
* Emits the ::completed signal on @animation. After this function
|
||||||
|
* terminates @animation will be unreferenced and it will not be
|
||||||
|
* valid anymore, unless g_object_ref() was called before
|
||||||
|
*
|
||||||
|
* Since: 1.0
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
clutter_animation_completed (ClutterAnimation *animation)
|
||||||
|
{
|
||||||
|
g_return_if_fail (CLUTTER_IS_ANIMATION (animation));
|
||||||
|
|
||||||
|
g_signal_emit (animation, animation_signals[COMPLETED], 0);
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* starts the timeline
|
* starts the timeline
|
||||||
*/
|
*/
|
||||||
|
@ -128,6 +128,7 @@ void clutter_animation_unbind_property (ClutterAnimation *an
|
|||||||
const gchar *property_name);
|
const gchar *property_name);
|
||||||
ClutterInterval *clutter_animation_get_interval (ClutterAnimation *animation,
|
ClutterInterval *clutter_animation_get_interval (ClutterAnimation *animation,
|
||||||
const gchar *property_name);
|
const gchar *property_name);
|
||||||
|
void clutter_animation_completed (ClutterAnimation *animation);
|
||||||
|
|
||||||
ClutterAnimation * clutter_actor_animate (ClutterActor *actor,
|
ClutterAnimation * clutter_actor_animate (ClutterActor *actor,
|
||||||
gulong mode,
|
gulong mode,
|
||||||
|
Loading…
Reference in New Issue
Block a user