Top | Description | Object Hierarchy | Properties | Signals | ![]() |
![]() |
![]() |
![]() |
struct ClutterScore; struct ClutterScoreClass; ClutterScore * clutter_score_new (void
); void clutter_score_set_loop (ClutterScore *score
,gboolean loop
); gboolean clutter_score_get_loop (ClutterScore *score
); gulong clutter_score_append (ClutterScore *score
,ClutterTimeline *parent
,ClutterTimeline *timeline
); gulong clutter_score_append_at_marker (ClutterScore *score
,ClutterTimeline *parent
,const gchar *marker_name
,ClutterTimeline *timeline
); void clutter_score_remove (ClutterScore *score
,gulong id_
); void clutter_score_remove_all (ClutterScore *score
); ClutterTimeline * clutter_score_get_timeline (ClutterScore *score
,gulong id_
); GSList * clutter_score_list_timelines (ClutterScore *score
); void clutter_score_start (ClutterScore *score
); void clutter_score_pause (ClutterScore *score
); void clutter_score_stop (ClutterScore *score
); gboolean clutter_score_is_playing (ClutterScore *score
); void clutter_score_rewind (ClutterScore *score
);
"completed" :Run Last
"paused" :Run Last
"started" :Run Last
"timeline-completed" :Run Last
"timeline-started" :Run Last
ClutterScore is a base class for sequencing multiple timelines in order. Using ClutterScore it is possible to start multiple timelines at the same time or launch multiple timelines when a particular timeline has emitted the ClutterTimeline::completed signal.
Each time a ClutterTimeline is started and completed, a signal will be emitted.
For example, this code will start two ClutterTimelines after a third timeline terminates:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
ClutterTimeline *timeline_1, *timeline_2, *timeline_3; ClutterScore *score; timeline_1 = clutter_timeline_new_for_duration (1000); timeline_2 = clutter_timeline_new_for_duration (500); timeline_3 = clutter_timeline_new_for_duration (500); score = clutter_score_new (); clutter_score_append (score, NULL, timeline_1); clutter_score_append (score, timeline_1, timeline_2); clutter_score_append (score, timeline_1, timeline_3); clutter_score_start (score); |
A ClutterScore takes a reference on the timelines it manages, so timelines can be safely unreferenced after being appended.
New timelines can be appended to the ClutterScore using
clutter_score_append()
and removed using clutter_score_remove()
.
Timelines can also be appended to a specific marker on the
parent timeline, using clutter_score_append_at_marker()
.
The score can be cleared using clutter_score_remove_all()
.
The list of timelines can be retrieved using
clutter_score_list_timelines()
.
The score state is controlled using clutter_score_start()
,
clutter_score_pause()
, clutter_score_stop()
and clutter_score_rewind()
.
The state can be queried using clutter_score_is_playing()
.
ClutterScore is available since Clutter 0.6
struct ClutterScore;
The ClutterScore structure contains only private data and should be accessed using the provided API
Since 0.6
struct ClutterScoreClass { void (* timeline_started) (ClutterScore *score, ClutterTimeline *timeline); void (* timeline_completed) (ClutterScore *score, ClutterTimeline *timeline); void (* started) (ClutterScore *score); void (* completed) (ClutterScore *score); void (* paused) (ClutterScore *score); };
The ClutterScoreClass structure contains only private data
handler for the "timeline-started" signal | |
handler for the "timeline-completed" signal | |
handler for the "started" signal | |
handler for the "completed" signal | |
handler for the "paused" signal |
Since 0.6
ClutterScore * clutter_score_new (void
);
clutter_score_new
is deprecated and should not be used in newly-written code. 1.8
Creates a new ClutterScore. A ClutterScore is an object that can hold multiple ClutterTimelines in a sequential order.
Returns : |
the newly created ClutterScore. Use g_object_unref()
when done. |
Since 0.6
void clutter_score_set_loop (ClutterScore *score
,gboolean loop
);
clutter_score_set_loop
is deprecated and should not be used in newly-written code. 1.8
Sets whether score
should loop. A looping ClutterScore will start
from its initial state after the ::complete signal has been fired.
|
a ClutterScore |
|
TRUE for enable looping |
Since 0.6
gboolean clutter_score_get_loop (ClutterScore *score
);
clutter_score_get_loop
is deprecated and should not be used in newly-written code. 1.8
Gets whether score
is looping
|
a ClutterScore |
Returns : |
TRUE if the score is looping |
Since 0.6
gulong clutter_score_append (ClutterScore *score
,ClutterTimeline *parent
,ClutterTimeline *timeline
);
clutter_score_append
is deprecated and should not be used in newly-written code. 1.8
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
.
|
a ClutterScore |
|
a ClutterTimeline in the score, or NULL . [allow-none]
|
|
a ClutterTimeline |
Returns : |
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() . |
Since 0.6
gulong clutter_score_append_at_marker (ClutterScore *score
,ClutterTimeline *parent
,const gchar *marker_name
,ClutterTimeline *timeline
);
clutter_score_append_at_marker
is deprecated and should not be used in newly-written code. 1.8
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
.
|
a ClutterScore |
|
the parent ClutterTimeline |
|
the name of the marker to use |
|
the ClutterTimeline to append |
Returns : |
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() . |
Since 0.8
void clutter_score_remove (ClutterScore *score
,gulong id_
);
clutter_score_remove
is deprecated and should not be used in newly-written code. 1.8
Removes the ClutterTimeline with the given id inside score
. If
the timeline has other timelines attached to it, those are removed
as well.
|
a ClutterScore |
|
the id of the timeline to remove |
Since 0.6
void clutter_score_remove_all (ClutterScore *score
);
clutter_score_remove_all
is deprecated and should not be used in newly-written code. 1.8
Removes all the timelines inside score
.
|
a ClutterScore |
Since 0.6
ClutterTimeline * clutter_score_get_timeline (ClutterScore *score
,gulong id_
);
clutter_score_get_timeline
is deprecated and should not be used in newly-written code. 1.8
Retrieves the ClutterTimeline for id_
inside score
.
|
a ClutterScore |
|
the id of the timeline |
Returns : |
the requested timeline, or NULL . This
function does not increase the reference count on the returned
ClutterTimeline. [transfer none]
|
Since 0.6
GSList * clutter_score_list_timelines (ClutterScore *score
);
clutter_score_list_timelines
is deprecated and should not be used in newly-written code. 1.8
Retrieves a list of all the ClutterTimelines managed by score
.
|
a ClutterScore |
Returns : |
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. [transfer container][element-type Clutter.Timeline]
|
Since 0.6
void clutter_score_start (ClutterScore *score
);
clutter_score_start
is deprecated and should not be used in newly-written code. 1.8
Starts the score.
|
A ClutterScore |
Since 0.6
void clutter_score_pause (ClutterScore *score
);
clutter_score_pause
is deprecated and should not be used in newly-written code. 1.8
Pauses a playing score score
.
|
a ClutterScore |
Since 0.6
void clutter_score_stop (ClutterScore *score
);
clutter_score_stop
is deprecated and should not be used in newly-written code. 1.8
Stops and rewinds a playing ClutterScore instance.
|
A ClutterScore |
Since 0.6
gboolean clutter_score_is_playing (ClutterScore *score
);
clutter_score_is_playing
is deprecated and should not be used in newly-written code. 1.8
Query state of a ClutterScore instance.
|
A ClutterScore |
Returns : |
TRUE if score is currently playing |
Since 0.6
void clutter_score_rewind (ClutterScore *score
);
clutter_score_rewind
is deprecated and should not be used in newly-written code. 1.8
Rewinds a ClutterScore to its initial state.
|
A ClutterScore |
Since 0.6
"loop"
property "loop" gboolean : Read / Write
ClutterScore:loop
is deprecated and should not be used in newly-written code. 1.8
Whether the ClutterScore should restart once finished.
Default value: FALSE
Since 0.6
"completed"
signalvoid user_function (ClutterScore *score,
gpointer user_data) : Run Last
ClutterScore::completed
is deprecated and should not be used in newly-written code. 1.8
The ::completed signal is emitted each time a ClutterScore terminates.
|
the score which received the signal |
|
user data set when the signal handler was connected. |
Since 0.6
"paused"
signalvoid user_function (ClutterScore *score,
gpointer user_data) : Run Last
ClutterScore::paused
is deprecated and should not be used in newly-written code. 1.8
The ::paused signal is emitted each time a ClutterScore is paused.
|
the score which received the signal |
|
user data set when the signal handler was connected. |
Since 0.6
"started"
signalvoid user_function (ClutterScore *score,
gpointer user_data) : Run Last
ClutterScore::started
is deprecated and should not be used in newly-written code. 1.8
The ::started signal is emitted each time a ClutterScore starts playing.
|
the score which received the signal |
|
user data set when the signal handler was connected. |
Since 0.6
"timeline-completed"
signalvoid user_function (ClutterScore *score,
ClutterTimeline *timeline,
gpointer user_data) : Run Last
ClutterScore::timeline-completed
is deprecated and should not be used in newly-written code. 1.8
The ::timeline-completed signal is emitted each time a timeline inside a ClutterScore terminates.
|
the score which received the signal |
|
the completed timeline |
|
user data set when the signal handler was connected. |
Since 0.6
"timeline-started"
signalvoid user_function (ClutterScore *score,
ClutterTimeline *timeline,
gpointer user_data) : Run Last
ClutterScore::timeline-started
is deprecated and should not be used in newly-written code. 1.8
The ::timeline-started signal is emitted each time a new timeline inside a ClutterScore starts playing.
|
the score which received the signal |
|
the current timeline |
|
user data set when the signal handler was connected. |
Since 0.6