src/lib/edje_program.c File Reference
Data Structures | |
struct | _Edje_Program_Data |
Functions | |
void | _edje_callbacks_patterns_clean (Edje *ed) |
void | _edje_emit (Edje *ed, const char *sig, const char *src) |
void | _edje_emit_full (Edje *ed, const char *sig, const char *src, void *data, void(*free_func)(void *)) |
void | _edje_emit_handle (Edje *ed, const char *sig, const char *src, Edje_Message_Signal_Data *sdata, Eina_Bool prop) |
void | _edje_program_end (Edje *ed, Edje_Running_Program *runp) |
void | _edje_program_run (Edje *ed, Edje_Program *pr, Eina_Bool force, const char *ssig, const char *ssrc) |
Eina_Bool | _edje_program_run_iterate (Edje_Running_Program *runp, double tim) |
EAPI double | edje_frametime_get (void) |
Get edje trasitions' frame time. | |
EAPI void | edje_frametime_set (double t) |
Set edje trasitions' frame time. | |
EAPI Eina_Bool | edje_object_animation_get (const Evas_Object *obj) |
Get the Edje object's animation state. | |
EAPI void | edje_object_animation_set (Evas_Object *obj, Eina_Bool on) |
Set the object's animation state. | |
EAPI Eina_Bool | edje_object_play_get (const Evas_Object *obj) |
Get the Edje object's state. | |
EAPI void | edje_object_play_set (Evas_Object *obj, Eina_Bool play) |
Set the Edje object to playing or paused states. | |
void | edje_object_propagate_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *o, const char *emission, const char *source), void *data) |
EAPI void | edje_object_signal_callback_add (Evas_Object *obj, const char *emission, const char *source, void(*func)(void *data, Evas_Object *o, const char *emission, const char *source), void *data) |
EAPI void * | edje_object_signal_callback_del (Evas_Object *obj, const char *emission, const char *source, void(*func)(void *data, Evas_Object *o, const char *emission, const char *source)) |
EAPI void * | edje_object_signal_callback_del_full (Evas_Object *obj, const char *emission, const char *source, Edje_Signal_Cb func, void *data) |
Unregister/delete a callback set for an arriving Edje signal, emitted by a given Ejde object. | |
EAPI void * | edje_object_signal_callback_extra_data_get (void) |
Get extra data passed to callbacks. | |
EAPI void | edje_object_signal_emit (Evas_Object *obj, const char *emission, const char *source) |
Send/emit an Edje signal to a given Edje object. | |
Variables | |
int | _edje_anim_count = 0 |
Eina_List * | _edje_animators = NULL |
Ecore_Animator * | _edje_timer = NULL |
Function Documentation
void _edje_callbacks_patterns_clean | ( | Edje * | ed | ) |
References _edje_signals_sources_patterns_clean(), _Edje::callbacks, edje_match_signal_source_free(), and _Edje::patterns.
Referenced by _edje_del(), edje_object_propagate_callback_add(), edje_object_signal_callback_add(), edje_object_signal_callback_del(), and edje_object_signal_callback_del_full().
void _edje_emit | ( | Edje * | ed, | |
const char * | sig, | |||
const char * | src | |||
) |
References _edje_emit_full().
Referenced by _edje_emit_full(), _edje_entry_cursor_begin(), _edje_entry_cursor_copy(), _edje_entry_cursor_down(), _edje_entry_cursor_end(), _edje_entry_cursor_line_begin(), _edje_entry_cursor_line_end(), _edje_entry_cursor_next(), _edje_entry_cursor_pos_set(), _edje_entry_cursor_prev(), _edje_entry_cursor_up(), _edje_entry_text_markup_append(), _edje_entry_text_markup_insert(), _edje_entry_text_markup_set(), _edje_object_file_set_internal(), _edje_program_run(), edje_color_class_del(), edje_color_class_set(), edje_object_animation_set(), edje_object_color_class_del(), edje_object_color_class_set(), edje_object_part_drag_page(), edje_object_part_drag_step(), edje_object_part_drag_value_set(), edje_object_preload(), and edje_object_signal_emit().
void _edje_emit_full | ( | Edje * | ed, | |
const char * | sig, | |||
const char * | src, | |||
void * | data, | |||
void(*)(void *) | free_func | |||
) |
References _edje_children_get(), _edje_emit(), _edje_external_signal_emit(), _edje_fetch(), _edje_real_part_get(), _Edje_Part_Collection::alias, alloca(), _Edje::collection, _Edje_Message_Signal_Data::data, _Edje_Message_Signal::data, _Edje::delete_me, EDJE_MESSAGE_SIGNAL, edje_object_message_send(), EDJE_PART_PATH_SEPARATOR, EDJE_PART_PATH_SEPARATOR_INDEXL, EDJE_PART_PATH_SEPARATOR_INDEXR, EDJE_PART_TYPE_BOX, EDJE_PART_TYPE_EXTERNAL, EDJE_PART_TYPE_GROUP, EDJE_PART_TYPE_TABLE, _Edje_Message_Signal_Data::free_func, _Edje::obj, _Edje_Real_Part::part, _Edje_Message_Signal_Data::ref, _Edje_Message_Signal::sig, _Edje_Message_Signal::src, _Edje_Real_Part::swallowed_object, and _Edje_Part::type.
Referenced by _edje_emit().
void _edje_emit_handle | ( | Edje * | ed, | |
const char * | sig, | |||
const char * | src, | |||
Edje_Message_Signal_Data * | sdata, | |||
Eina_Bool | prop | |||
) |
References _edje_block(), _edje_block_break(), _edje_freeze(), _edje_lua2_script_func_signal(), _edje_program_run(), _edje_real_part_get(), _edje_ref(), _edje_thaw(), _edje_unblock(), _edje_unref(), alloca(), _Edje_Real_Part::chosen_description, _Edje::collection, _Edje::delete_me, _Edje_Program_Data::ed, edje_match_programs_exec(), edje_match_signal_source_hash_get(), _Edje_Signals_Sources_Patterns::exact_match, _Edje_Program::filter, _Edje::L, _Edje_Part_Description_Common::name, _Edje_Program::part, _Edje::patterns, _Edje_Signals_Sources_Patterns::programs, _Edje::programs, _Edje_Program_Data::signal, _Edje_Signals_Sources_Patterns::signals_patterns, _Edje_Program_Data::source, _Edje_Signals_Sources_Patterns::sources_patterns, _Edje_Part_Description_Common::state, _Edje_Program::state, _Edje::table_programs_size, and _Edje_Signals_Sources_Patterns::u.
Referenced by _edje_message_process().
void _edje_program_end | ( | Edje * | ed, | |
Edje_Running_Program * | runp | |||
) |
References _edje_anim_count, _edje_animators, _edje_freeze(), _edje_part_description_apply(), _edje_part_pos_set(), _edje_recalc(), _edje_ref(), _edje_thaw(), _edje_unref(), _Edje::actions, _Edje_Running_Program::delete_me, _Edje::delete_me, _Edje_Program_Target::id, _Edje_Program::mode, _Edje_Real_Part::program, _Edje_Running_Program::program, _Edje_Program::state, _Edje::table_parts, _Edje::table_parts_size, _Edje_Program::targets, _Edje_Program::tween, _Edje_Program::v1, _Edje_Program::v2, _Edje_Program::value, _Edje::walking_actions, and ZERO.
Referenced by _edje_program_run().
void _edje_program_run | ( | Edje * | ed, | |
Edje_Program * | pr, | |||
Eina_Bool | force, | |||
const char * | ssig, | |||
const char * | ssrc | |||
) |
References _edje_anim_count, _edje_animators, _edje_block(), _edje_block_break(), _edje_dragable_pos_set(), _edje_embryo_test_run(), _edje_emit(), _edje_freeze(), _edje_multisense_internal_sound_sample_play(), _edje_multisense_internal_sound_tone_play(), _edje_part_description_apply(), _edje_part_pos_set(), _edje_part_recalc(), _edje_pending_timer_cb(), _edje_program_end(), _edje_program_run(), _edje_recalc(), _edje_recalc_do(), _edje_ref(), _edje_thaw(), _edje_timer, _edje_timer_cb(), _edje_unblock(), _edje_unref(), _Edje_Program::action, _Edje::actions, _Edje_Program::after, _Edje_Calc_Params::center, _Edje_Real_Part_Drag::count, _Edje_Real_Part::current, _Edje::delete_me, _Edje_Real_Part_State::description, _Edje_Real_Part_Drag::down, _Edje_Real_Part::drag, _Edje_Part::dragable, _Edje_Program::dst, _Edje_Program::duration, _Edje_Running_Program::edje, _Edje_Pending_Program::edje, EDJE_ACTION_TYPE_ACTION_STOP, EDJE_ACTION_TYPE_DRAG_VAL_PAGE, EDJE_ACTION_TYPE_DRAG_VAL_SET, EDJE_ACTION_TYPE_DRAG_VAL_STEP, EDJE_ACTION_TYPE_FOCUS_OBJECT, EDJE_ACTION_TYPE_FOCUS_SET, EDJE_ACTION_TYPE_PARAM_COPY, EDJE_ACTION_TYPE_PARAM_SET, EDJE_ACTION_TYPE_SCRIPT, EDJE_ACTION_TYPE_SIGNAL_EMIT, EDJE_ACTION_TYPE_SOUND_SAMPLE, EDJE_ACTION_TYPE_SOUND_TONE, EDJE_ACTION_TYPE_STATE_SET, EDJE_TWEEN_MODE_OPT_FROM_CURRENT, ERR, FLAG_XY, _Edje::focused_part, _Edje_Program::from, _Edje_Program::id, _Edje_Program_After::id, _Edje_Program_Target::id, _Edje_Program::in, _Edje_Calc_Params::light, _Edje_Calc_Params::map, _Edje_Program::mode, _Edje_Part::name, _Edje_Part_Description_Common::name, _Edje::no_anim, _Edje::obj, _Edje_Real_Part::object, _Edje_Real_Part_Drag::page, _Edje_Program::param, _Edje_Real_Part::param1, _Edje_Real_Part::part, _Edje::pending_actions, _Edje_Calc_Params::persp, _Edje_Running_Program::program, _Edje_Real_Part::program, _Edje_Pending_Program::program, _Edje_Program::range, _Edje_Program::sample_name, _Edje_Program::speed, _Edje_Program::src, _Edje_Running_Program::start_time, _Edje_Program::state, _Edje_Part_Description_Common::state, _Edje_Program::state2, _Edje_Real_Part_Drag::step, _Edje_Real_Part::swallowed_object, _Edje::table_parts, _Edje::table_parts_size, _Edje::table_programs, _Edje::table_programs_size, _Edje_Program::targets, _Edje_Program::time, _Edje_Pending_Program::timer, _Edje_Program::tone_name, _Edje_Program::tween, _Edje_Program::v1, _Edje_Program::v2, _Edje_Real_Part_Drag::val, _Edje_Program::value, _Edje_Part_Description_Common::value, _Edje_Program::value2, _Edje_Part_Dragable::x, _Edje_Position_Scale::x, _Edje::x, _Edje_Calc_Params::x, _Edje_Part_Dragable::y, _Edje_Position_Scale::y, _Edje::y, _Edje_Calc_Params::y, and ZERO.
Referenced by _edje_emit_handle(), _edje_pending_timer_cb(), _edje_program_run(), _edje_program_run_iterate(), and edje_edit_program_run().
Eina_Bool _edje_program_run_iterate | ( | Edje_Running_Program * | runp, | |
double | tim | |||
) |
References _edje_anim_count, _edje_animators, _edje_block(), _edje_block_break(), _edje_freeze(), _edje_part_description_apply(), _edje_part_pos_set(), _edje_program_run(), _edje_recalc(), _edje_ref(), _edje_thaw(), _edje_unblock(), _edje_unref(), _Edje::actions, _Edje_Program::after, _Edje_Running_Program::delete_me, _Edje::delete_me, DIV, _Edje_Running_Program::edje, FLOAT_T, FROM_DOUBLE, FROM_INT, _Edje_Program_After::id, _Edje_Program_Target::id, _Edje_Program::mode, _Edje_Real_Part::program, _Edje_Running_Program::program, _Edje_Running_Program::start_time, _Edje_Program::state, _Edje::table_parts, _Edje::table_parts_size, _Edje::table_programs, _Edje::table_programs_size, _Edje_Program::targets, _Edje_Program::time, _Edje_Program::tween, _Edje_Program::v1, _Edje_Program::v2, _Edje_Program::value, _Edje::walking_actions, and ZERO.
Referenced by _edje_timer_cb(), and edje_object_animation_set().
EAPI double edje_frametime_get | ( | void | ) |
Get edje trasitions' frame time.
- Returns:
- The frame time, in seconds.
- See also:
- edje_frametime_set()
EAPI void edje_frametime_set | ( | double | t | ) |
Set edje trasitions' frame time.
- Parameters:
-
t The frame time, in seconds. Default value is 1/30.
- See also:
- edje_frametime_get()
EAPI Eina_Bool edje_object_animation_get | ( | const Evas_Object * | obj | ) |
Get the Edje object's animation state.
- Parameters:
-
obj A handle to an Edje object.
- Returns:
EINA_FALSE
on error or if object is not animated;EINA_TRUE
if animated.
- See also:
- edje_object_animation_set().
References _edje_fetch(), _Edje::delete_me, and _Edje::no_anim.
EAPI void edje_object_animation_set | ( | Evas_Object * | obj, | |
Eina_Bool | on | |||
) |
Set the object's animation state.
- Parameters:
-
obj A handle to an Edje object. on The animation state. EINA_TRUE
to starts orEINA_FALSE
to stops.
- See also:
- edje_object_animation_get()
References _edje_block(), _edje_block_break(), _edje_emit(), _edje_fetch(), _edje_freeze(), _edje_program_run_iterate(), _edje_thaw(), _edje_unblock(), _Edje::actions, _Edje::delete_me, edje_object_animation_set(), EDJE_PART_TYPE_GROUP, _Edje::no_anim, _Edje_Real_Part::part, _Edje_Running_Program::program, _Edje_Running_Program::start_time, _Edje_Real_Part::swallowed_object, _Edje::table_parts, _Edje::table_parts_size, _Edje_Program::time, TO_DOUBLE, _Edje_Program::tween, and _Edje_Part::type.
Referenced by edje_object_animation_set().
EAPI Eina_Bool edje_object_play_get | ( | const Evas_Object * | obj | ) |
Get the Edje object's state.
- Parameters:
-
obj A handle to an Edje object.
- Returns:
EINA_FALSE
if the object is not connected, itsdelete_me
flag is set, or it is at paused state;EINA_TRUE
if the object is at playing state.
- See also:
- edje_object_play_set().
References _edje_fetch(), _Edje::delete_me, and _Edje::paused.
EAPI void edje_object_play_set | ( | Evas_Object * | obj, | |
Eina_Bool | play | |||
) |
Set the Edje object to playing or paused states.
- Parameters:
-
obj A handle to an Edje object. play Object state ( EINA_TRUE
to playing,EINA_FALSE
to paused).
- See also:
- edje_object_play_get().
References _edje_fetch(), _Edje::actions, _Edje::delete_me, edje_object_play_set(), EDJE_PART_TYPE_GROUP, _Edje_Real_Part::part, _Edje::paused, _Edje::paused_at, _Edje_Running_Program::start_time, _Edje_Real_Part::swallowed_object, _Edje::table_parts, _Edje::table_parts_size, and _Edje_Part::type.
Referenced by edje_object_play_set().
void edje_object_propagate_callback_add | ( | Evas_Object * | obj, | |
void(*)(void *data, Evas_Object *o, const char *emission, const char *source) | func, | |||
void * | data | |||
) |
References _edje_callbacks_patterns_clean(), _edje_fetch(), _Edje::callbacks, _Edje_Signal_Callback::data, _Edje::delete_me, _Edje_Signal_Callback::func, _Edje_Signal_Callback::just_added, _Edje::just_added_callbacks, _Edje_Signal_Callback::propagate, _Edje_Signal_Callback::signal, _Edje_Signal_Callback::source, and _Edje::walking_callbacks.
Referenced by _edje_object_file_set_internal().
EAPI void edje_object_signal_callback_add | ( | Evas_Object * | obj, | |
const char * | emission, | |||
const char * | source, | |||
void(*)(void *data, Evas_Object *o, const char *emission, const char *source) | func, | |||
void * | data | |||
) |
References _edje_callbacks_patterns_clean(), _edje_fetch(), _Edje::callbacks, _Edje_Signal_Callback::data, _Edje::delete_me, _Edje_Signal_Callback::func, _Edje_Signal_Callback::just_added, _Edje::just_added_callbacks, _Edje_Signal_Callback::signal, _Edje_Signal_Callback::source, and _Edje::walking_callbacks.
EAPI void* edje_object_signal_callback_del | ( | Evas_Object * | obj, | |
const char * | emission, | |||
const char * | source, | |||
void(*)(void *data, Evas_Object *o, const char *emission, const char *source) | func | |||
) |
References _edje_callbacks_patterns_clean(), _edje_fetch(), _Edje::callbacks, _Edje_Signal_Callback::data, _Edje::delete_callbacks, _Edje_Signal_Callback::delete_me, _Edje::delete_me, _Edje_Signal_Callback::func, _Edje_Signal_Callback::signal, _Edje_Signal_Callback::source, and _Edje::walking_callbacks.
EAPI void* edje_object_signal_callback_del_full | ( | Evas_Object * | obj, | |
const char * | emission, | |||
const char * | source, | |||
Edje_Signal_Cb | func, | |||
void * | data | |||
) |
Unregister/delete a callback set for an arriving Edje signal, emitted by a given Ejde object.
- Parameters:
-
obj A handle to an Edje object emission The signal's "emission" string source The signal's "source" string func The callback function passed on the callback's registration data The pointer given to be passed as data to func
- Returns:
data
, on success orNULL
, on errors (or ifdata
had this value)
References _edje_callbacks_patterns_clean(), _edje_fetch(), _Edje::callbacks, _Edje_Signal_Callback::data, _Edje::delete_callbacks, _Edje_Signal_Callback::delete_me, _Edje::delete_me, _Edje_Signal_Callback::func, _Edje_Signal_Callback::signal, _Edje_Signal_Callback::source, and _Edje::walking_callbacks.
EAPI void* edje_object_signal_callback_extra_data_get | ( | void | ) |
Get extra data passed to callbacks.
- Returns:
- the extra data for that callback.
- See also:
- edje_object_signal_callback_add() for more on Edje signals.
- Since:
- 1.1.0
EAPI void edje_object_signal_emit | ( | Evas_Object * | obj, | |
const char * | emission, | |||
const char * | source | |||
) |
Send/emit an Edje signal to a given Edje object.
- Parameters:
-
obj A handle to an Edje object emission The signal's "emission" string source The signal's "source" string
obj's
EDC specification level, can respond to a signal by having declared matching 'signal'
and 'source'
fields on its block (see the syntax for EDC files).As an example,
edje_object_signal_emit(obj, "a_signal", "");
program { name: "a_program"; signal: "a_signal"; source: ""; action: ... }
- See also:
- edje_object_signal_callback_add() for more on Edje signals.
References _edje_emit(), _edje_fetch(), and _Edje::delete_me.
Referenced by _edje_object_orientation_inform().
Variable Documentation
int _edje_anim_count = 0 |
Referenced by _edje_file_del(), _edje_program_end(), _edje_program_run(), _edje_program_run_iterate(), and _edje_timer_cb().
Eina_List* _edje_animators = NULL |
Referenced by _edje_del(), _edje_file_del(), _edje_program_end(), _edje_program_run(), _edje_program_run_iterate(), and _edje_timer_cb().
Ecore_Animator* _edje_timer = NULL |
Referenced by _edje_program_run(), _edje_timer_cb(), and edje_shutdown().