From eade1ab19e90b6955ead726132503f13ac346356 Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Wed, 10 Nov 2010 11:51:42 +0000 Subject: [PATCH] test-rotate: Remove the behaviour code Use a looping animation with a shared timeline instead. --- tests/interactive/test-rotate.c | 57 +++++++++++++++------------------ 1 file changed, 25 insertions(+), 32 deletions(-) diff --git a/tests/interactive/test-rotate.c b/tests/interactive/test-rotate.c index 9c715abac..b4dc14e3d 100644 --- a/tests/interactive/test-rotate.c +++ b/tests/interactive/test-rotate.c @@ -5,18 +5,14 @@ #include #include -#undef CLUTTER_DISABLE_DEPRECATED #include G_MODULE_EXPORT int test_rotate_main (int argc, char *argv[]) { - ClutterTimeline *timeline; - ClutterAlpha *alpha; - ClutterBehaviour *r_behave; - ClutterActor *stage; - ClutterActor *hand, *label, *rect; - gchar *file; + ClutterTimeline *timeline; + ClutterActor *stage, *hand, *label, *rect; + gchar *file; clutter_init (&argc, &argv); @@ -37,16 +33,25 @@ test_rotate_main (int argc, char *argv[]) g_free (file); - rect = clutter_rectangle_new_with_color (CLUTTER_COLOR_DarkOrange); - clutter_actor_add_effect_with_name (rect, "blur", clutter_blur_effect_new ()); - clutter_actor_set_position (rect, 340, 140); - clutter_actor_set_size (rect, 150, 150); - - clutter_actor_set_position (hand, 240, 140); + clutter_actor_set_position (hand, 326, 265); clutter_actor_add_effect_with_name (hand, "desaturate", clutter_desaturate_effect_new (0.75)); clutter_actor_add_effect_with_name (hand, "blur", clutter_blur_effect_new ()); clutter_actor_animate_with_timeline (hand, CLUTTER_LINEAR, timeline, "@effects.desaturate.factor", 1.0, + "rotation-angle-z", 360.0, + "fixed::anchor-x", 86.0, + "fixed::anchor-y", 125.0, + "opacity", 128, + NULL); + + rect = clutter_rectangle_new_with_color (CLUTTER_COLOR_DarkOrange); + clutter_actor_add_effect_with_name (rect, "blur", clutter_blur_effect_new ()); + clutter_actor_set_position (rect, 415, 215); + clutter_actor_set_size (rect, 150, 150); + clutter_actor_animate_with_timeline (rect, CLUTTER_LINEAR, timeline, + "rotation-angle-z", 360.0, + "fixed::anchor-x", 75.0, + "fixed::anchor-y", 75.0, NULL); label = clutter_text_new_with_text ("Mono 16", @@ -54,28 +59,16 @@ test_rotate_main (int argc, char *argv[]) "of the\n" "Spinning Hand"); clutter_text_set_line_alignment (CLUTTER_TEXT (label), PANGO_ALIGN_CENTER); - clutter_actor_set_position (label, 150, 150); + clutter_actor_set_position (label, 336, 275); clutter_actor_set_size (label, 500, 100); + clutter_actor_animate_with_timeline (label, CLUTTER_LINEAR, timeline, + "rotation-angle-z", 360.0, + "fixed::anchor-x", 86.0, + "fixed::anchor-y", 125.0, + NULL); clutter_container_add (CLUTTER_CONTAINER (stage), rect, hand, label, NULL); - /* Set an alpha func to power behaviour */ - alpha = clutter_alpha_new_full (timeline, CLUTTER_LINEAR); - - /* Create a behaviour for that alpha */ - r_behave = clutter_behaviour_rotate_new (alpha, - CLUTTER_Z_AXIS, - CLUTTER_ROTATE_CW, - 0.0, 360.0); - - clutter_behaviour_rotate_set_center (CLUTTER_BEHAVIOUR_ROTATE (r_behave), - 86, 125, 0); - - /* Apply it to our actor */ - clutter_behaviour_apply (r_behave, hand); - clutter_behaviour_apply (r_behave, label); - clutter_behaviour_apply (r_behave, rect); - /* start the timeline and thus the animations */ clutter_timeline_start (timeline); @@ -83,7 +76,7 @@ test_rotate_main (int argc, char *argv[]) clutter_main(); - g_object_unref (r_behave); + g_object_unref (timeline); return 0; }