From a73df5636bd31eecf4037639bf91628297d63115 Mon Sep 17 00:00:00 2001 From: Tiago Rezende Campos Falcao Date: Wed, 10 Nov 2010 18:05:51 +0000 Subject: [PATCH] Elm_Transit: missing getters elm_transit_tween_mode_get elm_transit_repeat_times_get elm_transit_auto_reverse_get Author: Helen Fornazier SVN revision: 54419 --- legacy/elementary/src/lib/Elementary.h.in | 30 +++++++------- legacy/elementary/src/lib/elm_transit.c | 50 +++++++++++++++++++++++ 2 files changed, 66 insertions(+), 14 deletions(-) diff --git a/legacy/elementary/src/lib/Elementary.h.in b/legacy/elementary/src/lib/Elementary.h.in index 9cad6dba58..b5126171ad 100644 --- a/legacy/elementary/src/lib/Elementary.h.in +++ b/legacy/elementary/src/lib/Elementary.h.in @@ -2340,20 +2340,22 @@ extern "C" { typedef struct _Elm_Transit Elm_Transit; - EAPI Elm_Transit *elm_transit_add(double duration); - EAPI void elm_transit_del(Elm_Transit *transit); - EAPI void elm_transit_effect_add(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit *transit, double progress), void *data, void (*data_free_cb)(void *data, Elm_Transit *transit)); - EAPI void elm_transit_effect_del(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit *transit, double progress), void *data); - EAPI void elm_transit_object_add(Elm_Transit *transit, Evas_Object *obj); - EAPI void elm_transit_object_remove(Elm_Transit *transit, Evas_Object *obj); - EAPI const Eina_List *elm_transit_objects_get(const Elm_Transit *transit); - EAPI void elm_transit_event_block_set(Elm_Transit *transit, Eina_Bool disabled); - EAPI Eina_Bool elm_transit_event_block_get(const Elm_Transit *transit); - EAPI void elm_transit_del_cb_set(Elm_Transit *transit, void (*op)(void *data, Elm_Transit* transit), void *data); - EAPI void elm_transit_auto_reverse_set(Elm_Transit *transit, Eina_Bool reverse); - EAPI void elm_transit_repeat_times_set(Elm_Transit *transit, int repeat); - - EAPI void elm_transit_tween_mode_set(Elm_Transit *transit, Elm_Transit_Tween_Mode tween_mode); + EAPI Elm_Transit *elm_transit_add(double duration); + EAPI void elm_transit_del(Elm_Transit *transit); + EAPI void elm_transit_effect_add(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit *transit, double progress), void *data, void (*data_free_cb)(void *data, Elm_Transit *transit)); + EAPI void elm_transit_effect_del(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit *transit, double progress), void *data); + EAPI void elm_transit_object_add(Elm_Transit *transit, Evas_Object *obj); + EAPI void elm_transit_object_remove(Elm_Transit *transit, Evas_Object *obj); + EAPI const Eina_List *elm_transit_objects_get(const Elm_Transit *transit); + EAPI void elm_transit_event_block_set(Elm_Transit *transit, Eina_Bool disabled); + EAPI Eina_Bool elm_transit_event_block_get(const Elm_Transit *transit); + EAPI void elm_transit_del_cb_set(Elm_Transit *transit, void (*op)(void *data, Elm_Transit* transit), void *data); + EAPI void elm_transit_auto_reverse_set(Elm_Transit *transit, Eina_Bool reverse); + EAPI Eina_Bool elm_transit_auto_reverse_get(Elm_Transit *transit) EINA_ARG_NONNULL(1); + EAPI void elm_transit_repeat_times_set(Elm_Transit *transit, int repeat); + EAPI int elm_transit_repeat_times_get(Elm_Transit *transit); + EAPI void elm_transit_tween_mode_set(Elm_Transit *transit, Elm_Transit_Tween_Mode tween_mode); + EAPI Elm_Transit_Tween_Mode elm_transit_tween_mode_get(Elm_Transit *transit) EINA_ARG_NONNULL(1); EAPI void *elm_transit_effect_resizing_context_new(Evas_Coord from_w, Evas_Coord from_h, Evas_Coord to_w, Evas_Coord to_h); EAPI void elm_transit_effect_resizing_op(void *data, Elm_Transit *transit, double progress); diff --git a/legacy/elementary/src/lib/elm_transit.c b/legacy/elementary/src/lib/elm_transit.c index f461cf3a20..f76956bb7f 100644 --- a/legacy/elementary/src/lib/elm_transit.c +++ b/legacy/elementary/src/lib/elm_transit.c @@ -490,6 +490,22 @@ elm_transit_auto_reverse_set(Elm_Transit *transit, Eina_Bool reverse) } } +/** + * Get if the auto reverse is on + * + * @see elm_transit_auto_reverse_set() + * + * @param transit Transit + * @return EINA_TRUE means auto reverse is on + * + * @ingroup Transit + */ +EAPI Eina_Bool +elm_transit_auto_reverse_get(Elm_Transit *transit) +{ + return transit->auto_reverse; +} + /** * Set the transit repeat count. Effect will be repeated by repeat count. * @@ -522,6 +538,24 @@ elm_transit_repeat_times_set(Elm_Transit *transit, int repeat) } } +/** + * Get the transit repeat count. + * + * @see elm_transit_repeat_times_set() + * + * @param transit Transit + * @return The repeat count + * + * @ingroup Transit + */ +EAPI int +elm_transit_repeat_times_get(Elm_Transit *transit) +{ + if (!transit->auto_reverse || transit->repeat_cnt < 0) + return transit->repeat_cnt; + return _animator_compute_no_reverse_repeat_count(transit->repeat_cnt); +} + /** * Set the transit animation acceleration style. * @@ -537,6 +571,22 @@ elm_transit_tween_mode_set(Elm_Transit *transit, Elm_Transit_Tween_Mode tween_mo transit->tween_mode = tween_mode; } +/** + * Get the transit animation acceleration type. + * + * @note @p transit can not be NULL + * + * @param transit Transit + * @return The tween type + * + * @ingroup Transit + */ +EAPI Elm_Transit_Tween_Mode +elm_transit_tween_mode_get(Elm_Transit *transit) +{ + return transit->tween_mode; +} + /////////////////////////////////////////////////////////////////////////////// //Resizing FX ///////////////////////////////////////////////////////////////////////////////