Message_Queue

These functions provide an abstraction layer between the application code and the interface, while allowing extremely flexible dynamic layouts and animations. More...

Functions

void _edje_message_cb_set (Edje *ed, void(*func)(void *data, Evas_Object *obj, Edje_Message_Type type, int id, void *msg), void *data)
void _edje_message_del (Edje *ed)
void _edje_message_free (Edje_Message *em)
void _edje_message_init (void)
Edje_Message_edje_message_new (Edje *ed, Edje_Queue queue, Edje_Message_Type type, int id)
void _edje_message_parameters_push (Edje_Message *em)
void _edje_message_process (Edje_Message *em)
void _edje_message_queue_clear (void)
void _edje_message_queue_process (void)
void _edje_message_send (Edje *ed, Edje_Queue queue, Edje_Message_Type type, int id, void *emsg)
void _edje_message_shutdown (void)
EAPI void edje_message_signal_process (void)
 Process all queued up edje messages.
EAPI void edje_object_message_handler_set (Evas_Object *obj, Edje_Message_Handler_Cb func, void *data)
 Set the message handler function for this an object.
EAPI void edje_object_message_send (Evas_Object *obj, Edje_Message_Type type, int id, void *msg)
 Send message to object.
EAPI void edje_object_message_signal_process (Evas_Object *obj)
 Process an object's message queue.

Detailed Description

These functions provide an abstraction layer between the application code and the interface, while allowing extremely flexible dynamic layouts and animations.


Function Documentation

void _edje_message_del ( Edje ed  ) 
void _edje_message_init ( void   ) 

Referenced by edje_init().

void _edje_message_queue_clear ( void   ) 
void _edje_message_shutdown ( void   ) 

References _edje_message_queue_clear().

Referenced by edje_init(), and edje_shutdown().

EAPI void edje_message_signal_process ( void   ) 

Process all queued up edje messages.

This function triggers the processing of messages addressed to any (alive) edje objects.

References _edje_message_queue_process().

EAPI void edje_object_message_handler_set ( Evas_Object *  obj,
Edje_Message_Handler_Cb  func,
void *  data 
)

Set the message handler function for this an object.

Parameters:
obj The edje object reference.
func The function to handle messages.
data The data to be associated to the message handler.

This function associates a message handler function and data to the edje object.

References _edje_fetch(), and _edje_message_cb_set().

EAPI void edje_object_message_send ( Evas_Object *  obj,
Edje_Message_Type  type,
int  id,
void *  msg 
)

Send message to object.

Parameters:
obj The edje object reference.
type The type of message to send.
id A identification number for the message.
msg The message to be send.

This function sends messages to this object and to all of its child objects, if applicable. The function that handles messages arriving at this edje object is is set with edje_object_message_handler_set().

See also:
edje_object_message_handler_set()

References _edje_fetch(), _edje_message_send(), edje_object_message_send(), EDJE_PART_TYPE_GROUP, EDJE_QUEUE_SCRIPT, _Edje_Real_Part::part, _Edje_Real_Part::swallowed_object, _Edje::table_parts, _Edje::table_parts_size, and _Edje_Part::type.

Referenced by edje_object_message_send().

EAPI void edje_object_message_signal_process ( Evas_Object *  obj  ) 

Process an object's message queue.

Parameters:
obj The edje object reference.

This function goes through the object message queue processing the pending messages for *this* specific edje object. Normally they'd be processed only at idle time.

References _edje_del(), _edje_fetch(), _edje_message_free(), _edje_message_process(), _Edje::delete_me, _Edje_Message::edje, _Edje::processing_messages, and WRN.