[timeline] Expose the msec advancement
The method of ClutterTimeline that advances the timeline by a delta (in millisecond) is going to be useful for testing the timeline's behaviour -- and unbreak the timeline test suite that was broken by the MasterClock merge.
This commit is contained in:
parent
d7a1a168ba
commit
5be29cf9bc
@ -356,7 +356,7 @@ _clutter_master_clock_advance (ClutterMasterClock *master_clock)
|
|||||||
ClutterTimeline *timeline = l->data;
|
ClutterTimeline *timeline = l->data;
|
||||||
|
|
||||||
if (clutter_timeline_is_playing (timeline))
|
if (clutter_timeline_is_playing (timeline))
|
||||||
_clutter_timeline_set_delta (timeline, msecs);
|
clutter_timeline_advance_delta (timeline, msecs);
|
||||||
}
|
}
|
||||||
|
|
||||||
master_clock->msecs_delta = msecs;
|
master_clock->msecs_delta = msecs;
|
||||||
|
@ -207,9 +207,6 @@ guint _clutter_pixel_to_id (guchar pixel[4]);
|
|||||||
|
|
||||||
void _clutter_id_to_color (guint id, ClutterColor *col);
|
void _clutter_id_to_color (guint id, ClutterColor *col);
|
||||||
|
|
||||||
void _clutter_timeline_set_delta (ClutterTimeline *timeline,
|
|
||||||
guint msecs);
|
|
||||||
|
|
||||||
/* use this function as the accumulator if you have a signal with
|
/* use this function as the accumulator if you have a signal with
|
||||||
* a G_TYPE_BOOLEAN return value; this will stop the emission as
|
* a G_TYPE_BOOLEAN return value; this will stop the emission as
|
||||||
* soon as one handler returns TRUE
|
* soon as one handler returns TRUE
|
||||||
|
@ -1022,21 +1022,19 @@ clutter_timeline_set_speed (ClutterTimeline *timeline,
|
|||||||
|
|
||||||
if (priv->fps != fps)
|
if (priv->fps != fps)
|
||||||
{
|
{
|
||||||
g_object_ref (timeline);
|
g_object_freeze_notify (G_OBJECT (timeline));
|
||||||
|
|
||||||
priv->fps = fps;
|
priv->fps = fps;
|
||||||
priv->frame_interval = 1000 / priv->fps;
|
priv->frame_interval = 1000 / priv->fps;
|
||||||
|
|
||||||
/* FIXME if the timeline is playing restart */
|
/* if the timeline is playing restart */
|
||||||
|
if (priv->is_playing)
|
||||||
g_object_freeze_notify (G_OBJECT (timeline));
|
clutter_timeline_rewind (timeline);
|
||||||
|
|
||||||
g_object_notify (G_OBJECT (timeline), "duration");
|
g_object_notify (G_OBJECT (timeline), "duration");
|
||||||
g_object_notify (G_OBJECT (timeline), "fps");
|
g_object_notify (G_OBJECT (timeline), "fps");
|
||||||
|
|
||||||
g_object_thaw_notify (G_OBJECT (timeline));
|
g_object_thaw_notify (G_OBJECT (timeline));
|
||||||
|
|
||||||
g_object_unref (timeline);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1372,7 +1370,7 @@ clutter_timeline_get_delta (ClutterTimeline *timeline,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* clutter_timeline_set_delta:
|
* clutter_timeline_advance_delta:
|
||||||
* @timeline: a #ClutterTimeline
|
* @timeline: a #ClutterTimeline
|
||||||
* @msecs: advance in milliseconds
|
* @msecs: advance in milliseconds
|
||||||
*
|
*
|
||||||
@ -1383,8 +1381,8 @@ clutter_timeline_get_delta (ClutterTimeline *timeline,
|
|||||||
* skip frames.
|
* skip frames.
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
_clutter_timeline_set_delta (ClutterTimeline *timeline,
|
clutter_timeline_advance_delta (ClutterTimeline *timeline,
|
||||||
guint msecs)
|
guint msecs)
|
||||||
{
|
{
|
||||||
ClutterTimelinePrivate *priv;
|
ClutterTimelinePrivate *priv;
|
||||||
|
|
||||||
|
@ -166,6 +166,10 @@ gboolean clutter_timeline_has_marker (ClutterTimeline *timeli
|
|||||||
void clutter_timeline_advance_to_marker (ClutterTimeline *timeline,
|
void clutter_timeline_advance_to_marker (ClutterTimeline *timeline,
|
||||||
const gchar *marker_name);
|
const gchar *marker_name);
|
||||||
|
|
||||||
|
/*< private >*/
|
||||||
|
void clutter_timeline_advance_delta (ClutterTimeline *timeline,
|
||||||
|
guint msecs);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
#endif /* _CLUTTER_TIMELINE_H__ */
|
#endif /* _CLUTTER_TIMELINE_H__ */
|
||||||
|
Loading…
Reference in New Issue
Block a user