Main Page | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

Evas.h File Reference

These routines are used for Evas library interaction. More...


Data Structures

struct  _Evas_List
 A linked list node. More...

struct  _Evas_Rectangle
 A rectangle. More...

struct  _Evas_Smart_Class
 a smart object class More...

struct  _Evas_Engine_Info
 Generic engine information. More...

struct  _Evas_Event_Mouse_Down
 Mouse button press event. More...

struct  _Evas_Event_Mouse_Up
 Mouse butotn relase event. More...

struct  _Evas_Event_Mouse_In
 Mouse enter event. More...

struct  _Evas_Event_Mouse_Out
 Mouse leave event. More...

struct  _Evas_Event_Mouse_Move
 Mouse button down event. More...

struct  _Evas_Event_Mouse_Wheel
 Wheel event. More...

struct  _Evas_Event_Key_Down
 Key press event. More...

struct  _Evas_Event_Key_Up
 Key release event. More...


Defines

#define EVAS_LOAD_ERROR_NONE   0 /**< No error on load */
 No error on load.

#define EVAS_LOAD_ERROR_GENERIC   1 /**< A non-specific error occured */
 A non-specific error occured.

#define EVAS_LOAD_ERROR_DOES_NOT_EXIST   2 /**< File (or file path) does not exist */
 File (or file path) does not exist.

#define EVAS_LOAD_ERROR_PERMISSION_DENIED   3 /**< Permission deinied to an existing file (or path) */
 Permission deinied to an existing file (or path).

#define EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED   4 /**< Allocation of resources failure prevented load */
 Allocation of resources failure prevented load.

#define EVAS_LOAD_ERROR_CORRUPT_FILE   5 /**< File corrupt (but was detected as a known format) */
 File corrupt (but was detected as a known format).

#define EVAS_LOAD_ERROR_UNKNOWN_FORMAT   6 /**< File is not a known format */
 File is not a known format.

#define EVAS_ALLOC_ERROR_NONE   0 /**< No allocation error */
 No allocation error.

#define EVAS_ALLOC_ERROR_FATAL   1 /**< Allocation failed despite attempts to free up memory */
 Allocation failed despite attempts to free up memory.

#define EVAS_ALLOC_ERROR_RECOVERED   2 /**< Allocation succeeded, but extra memory had to be found by freeing up speculative resources */
 Allocation succeeded, but extra memory had to be found by freeing up speculative resources.

#define EVAS_PIXEL_FORMAT_NONE   0 /**< No pixel format */
 No pixel format.

#define EVAS_PIXEL_FORMAT_ARGB32   1 /**< ARGB 32bit pixel format with A in the high byte per 32bit pixel word */
 ARGB 32bit pixel format with A in the high byte per 32bit pixel word.

#define EVAS_PIXEL_FORMAT_YUV420P_601   2 /**< YUV 420 Planar format with CCIR 601 color encoding wuth contiguous planes in the order Y, U and V */
 YUV 420 Planar format with CCIR 601 color encoding wuth contiguous planes in the order Y, U and V.


Typedefs

typedef enum _Evas_Callback_Type Evas_Callback_Type
 The type of event to trigger the callback.

typedef _Evas_List Evas_List
 A generic linked list node handle.

typedef _Evas_Rectangle Evas_Rectangle
 A generic rectangle handle.

typedef _Evas_Smart_Class Evas_Smart_Class
 A smart object base class.

typedef _Evas_Hash Evas_Hash
 A Hash table handle.

typedef _Evas Evas
 An Evas canvas handle.

typedef _Evas_Object Evas_Object
 An Evas Object handle.

typedef void Evas_Performance
 An Evas Performance handle.

typedef _Evas_Modifier Evas_Modifier
 An Evas Modifier.

typedef _Evas_Lock Evas_Lock
 An Evas Lock.

typedef _Evas_Smart Evas_Smart
 An Evas Smart Object handle.

typedef unsigned long long Evas_Modifier_Mask
 An Evas modifier mask type.

typedef _Evas_Pixel_Import_Source Evas_Pixel_Import_Source
 A source description of pixels for importing pixels.

typedef _Evas_Engine_Info Evas_Engine_Info
 A generic Evas Engine information structure.

typedef _Evas_Event_Mouse_Down Evas_Event_Mouse_Down
 Event structure for EVAS_CALLBACK_MOUSE_DOWN event callbacks.

typedef _Evas_Event_Mouse_Up Evas_Event_Mouse_Up
 Event structure for EVAS_CALLBACK_MOUSE_UP event callbacks.

typedef _Evas_Event_Mouse_In Evas_Event_Mouse_In
 Event structure for EVAS_CALLBACK_MOUSE_IN event callbacks.

typedef _Evas_Event_Mouse_Out Evas_Event_Mouse_Out
 Event structure for EVAS_CALLBACK_MOUSE_OUT event callbacks.

typedef _Evas_Event_Mouse_Move Evas_Event_Mouse_Move
 Event structure for EVAS_CALLBACK_MOUSE_MOVE event callbacks.

typedef _Evas_Event_Mouse_Wheel Evas_Event_Mouse_Wheel
 Event structure for EVAS_CALLBACK_MOUSE_WHEEL event callbacks.

typedef _Evas_Event_Key_Down Evas_Event_Key_Down
 Event structure for EVAS_CALLBACK_KEY_DOWN event callbacks.

typedef _Evas_Event_Key_Up Evas_Event_Key_Up
 Event structure for EVAS_CALLBACK_KEY_UP event callbacks.


Enumerations

enum  _Evas_Callback_Type {
  EVAS_CALLBACK_MOUSE_IN,
  EVAS_CALLBACK_MOUSE_OUT,
  EVAS_CALLBACK_MOUSE_DOWN,
  EVAS_CALLBACK_MOUSE_UP,
  EVAS_CALLBACK_MOUSE_MOVE,
  EVAS_CALLBACK_MOUSE_WHEEL,
  EVAS_CALLBACK_FREE,
  EVAS_CALLBACK_KEY_DOWN,
  EVAS_CALLBACK_KEY_UP,
  EVAS_CALLBACK_FOCUS_IN,
  EVAS_CALLBACK_FOCUS_OUT,
  EVAS_CALLBACK_SHOW,
  EVAS_CALLBACK_HIDE,
  EVAS_CALLBACK_MOVE,
  EVAS_CALLBACK_RESIZE,
  EVAS_CALLBACK_RESTACK
}

Functions

Evas_Listevas_list_append (Evas_List *list, const void *data)
 Append a data pointer to a linked list.

Evas_Listevas_list_prepend (Evas_List *list, const void *data)
 Prepend a data pointer to a linked list.

Evas_Listevas_list_append_relative (Evas_List *list, const void *data, const void *relative)
 Append a data pointer to a linked list after the memeber specified.

Evas_Listevas_list_prepend_relative (Evas_List *list, const void *data, const void *relative)
 Prepend a data pointer to a linked list before the memeber specified.

Evas_Listevas_list_remove (Evas_List *list, const void *data)
 Remove a specified member from a list.

Evas_Listevas_list_remove_list (Evas_List *list, Evas_List *remove_list)
 Remove a specified member from a list.

void * evas_list_find (Evas_List *list, const void *data)
 Find a member of a list and return the member.

Evas_Listevas_list_find_list (Evas_List *list, const void *data)
 Find a member of a list and return the list node containing that member.

Evas_Listevas_list_free (Evas_List *list)
 Free an entire list and all the nodes, ignoring the data contained.

Evas_Listevas_list_last (Evas_List *list)
 Get the last list node in the list.

Evas_Listevas_list_next (Evas_List *list)
 Get the next list node after the specified list node.

Evas_Listevas_list_prev (Evas_List *list)
 Get the previous list node before the specified list node.

void * evas_list_data (Evas_List *list)
 Get the list node data member.

int evas_list_count (Evas_List *list)
 Get the count of the number of items in a list.

void * evas_list_nth (Evas_List *list, int n)
 Get the nth member's data pointer in a list.

Evas_Listevas_list_nth_list (Evas_List *list, int n)
 Get the nth member's list node in a list.

Evas_Listevas_list_reverse (Evas_List *list)
 Reverse all the elements in the list.

Evas_Listevas_list_sort (Evas_List *list, int size, int(*func)(void *, void *))
 Sort a list according to the ordering func will return.

int evas_list_alloc_error (void)
 Return the memory allocation failure flag after any operation needin allocation.

Evas_Hashevas_hash_add (Evas_Hash *hash, const char *key, const void *data)
 Add an entry to the hash table.

Evas_Hashevas_hash_del (Evas_Hash *hash, const char *key, const void *data)
 Remove an entry from the hash table.

void * evas_hash_find (Evas_Hash *hash, const char *key)
 Find a specified entry in a hash table.

int evas_hash_size (Evas_Hash *hash)
 Return the number of buckets in the hash table.

void evas_hash_free (Evas_Hash *hash)
 Free an entire hash table.

void evas_hash_foreach (Evas_Hash *hash, Evas_Bool(*func)(Evas_Hash *hash, const char *key, void *data, void *fdata), const void *fdata)
 Call a function on every member stored in the hash table.

int evas_hash_alloc_error (void)
 Return memory allocation failure flag after an function requiring allocation.

int evas_alloc_error (void)
 Return if any allocation errors have occured during the prior function.

Evasevas_new (void)
 Allocate and new Evas empty canvas.

void evas_free (Evas *e)
 Free an Evas.

int evas_render_method_lookup (const char *name)
 Look up a numeric ID from a string name of a rendering engine.

Evas_Listevas_render_method_list (void)
 List all the rendering engines compiled into the copy of the Evas library.

void evas_render_method_list_free (Evas_List *list)
 This function should be called to free a list of engine names.

void evas_output_method_set (Evas *e, int render_method)
 Set the output method (engine) for the Evas.

int evas_output_method_get (Evas *e)
 Get the output method (engine) for the Evas.

Evas_Engine_Infoevas_engine_info_get (Evas *e)
 Get the render engine info struct from the canvas.

void evas_engine_info_set (Evas *e, Evas_Engine_Info *info)
 Set up the Engine Info from the info structure.

void evas_output_size_set (Evas *e, int w, int h)
 Set the render engine's output size in output units.

void evas_output_size_get (Evas *e, int *w, int *h)
 Get the render engine's output size in output units.

void evas_output_viewport_set (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h)
 Set the render engine's output viewport in canvas units.

void evas_output_viewport_get (Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
 Get the render engine's output viewport co-ordinates in canvas units.

Evas_Coord evas_coord_screen_x_to_world (Evas *e, int x)
 Convert/scale an ouput screen co-ordinate into canvas co-ordinates.

Evas_Coord evas_coord_screen_y_to_world (Evas *e, int y)
 Convert/scale an ouput screen co-ordinate into canvas co-ordinates.

int evas_coord_world_x_to_screen (Evas *e, Evas_Coord x)
 Convert/scale a canvas co-ordinate into output screen co-ordinates.

int evas_coord_world_y_to_screen (Evas *e, Evas_Coord y)
 Convert/scale a canvas co-ordinate into output screen co-ordinates.

void evas_pointer_output_xy_get (Evas *e, int *x, int *y)
 This function returns the current known pointer co-ordinates.

void evas_pointer_canvas_xy_get (Evas *e, Evas_Coord *x, Evas_Coord *y)
 This function returns the current known pointer co-ordinates.

int evas_pointer_button_down_mask_get (Evas *e)
 Returns a bitmask with the mouse buttons currently pressed, set to 1.

Evas_Bool evas_pointer_inside_get (Evas *e)
 Returns whether the mouse pointer is logically inside the canvas.

void evas_damage_rectangle_add (Evas *e, int x, int y, int w, int h)
 To be documented.

void evas_obscured_rectangle_add (Evas *e, int x, int y, int w, int h)
 To be documented.

void evas_obscured_clear (Evas *e)
 To be documented.

Evas_Listevas_render_updates (Evas *e)
 To be documented.

void evas_render_updates_free (Evas_List *updates)
 To be documented.

void evas_render (Evas *e)
 To be documented.

Evas_Objectevas_object_rectangle_add (Evas *e)
 To be documented.

Evas_Objectevas_object_line_add (Evas *e)
 To be documented.

void evas_object_line_xy_set (Evas_Object *obj, Evas_Coord x1, Evas_Coord y1, Evas_Coord x2, Evas_Coord y2)
 To be documented.

void evas_object_line_xy_get (Evas_Object *obj, Evas_Coord *x1, Evas_Coord *y1, Evas_Coord *x2, Evas_Coord *y2)
 To be documented.

Evas_Objectevas_object_gradient_add (Evas *e)
 To be documented.

void evas_object_gradient_color_add (Evas_Object *obj, int r, int g, int b, int a, int distance)
 To be documented.

void evas_object_gradient_colors_clear (Evas_Object *obj)
 To be documented.

void evas_object_gradient_angle_set (Evas_Object *obj, Evas_Angle angle)
 To be documented.

Evas_Angle evas_object_gradient_angle_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_polygon_add (Evas *e)
 To be documented.

void evas_object_polygon_point_add (Evas_Object *obj, Evas_Coord x, Evas_Coord y)
 To be documented.

void evas_object_polygon_points_clear (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_image_add (Evas *e)
 To be documented.

void evas_object_image_file_set (Evas_Object *obj, const char *file, const char *key)
 To be documented.

void evas_object_image_file_get (Evas_Object *obj, char **file, char **key)
 To be documented.

void evas_object_image_border_set (Evas_Object *obj, int l, int r, int t, int b)
 To be documented.

void evas_object_image_border_get (Evas_Object *obj, int *l, int *r, int *t, int *b)
 To be documented.

void evas_object_image_fill_set (Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h)
 To be documented.

void evas_object_image_fill_get (Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
 To be documented.

void evas_object_image_size_set (Evas_Object *obj, int w, int h)
 To be documented.

void evas_object_image_size_get (Evas_Object *obj, int *w, int *h)
 To be documented.

int evas_object_image_load_error_get (Evas_Object *obj)
 To be documented.

void evas_object_image_data_set (Evas_Object *obj, void *data)
 To be documented.

void * evas_object_image_data_get (Evas_Object *obj, Evas_Bool for_writing)
 To be documented.

void evas_object_image_data_copy_set (Evas_Object *obj, void *data)
 To be documented.

void evas_object_image_data_update_add (Evas_Object *obj, int x, int y, int w, int h)
 To be documented.

void evas_object_image_alpha_set (Evas_Object *obj, Evas_Bool has_alpha)
 To be documented.

Evas_Bool evas_object_image_alpha_get (Evas_Object *obj)
 To be documented.

void evas_object_image_smooth_scale_set (Evas_Object *obj, Evas_Bool smooth_scale)
 To be documented.

Evas_Bool evas_object_image_smooth_scale_get (Evas_Object *obj)
 To be documented.

void evas_object_image_reload (Evas_Object *obj)
 To be documented.

Evas_Bool evas_object_image_pixels_import (Evas_Object *obj, Evas_Pixel_Import_Source *pixels)
 To be documented.

void evas_object_image_pixels_get_callback_set (Evas_Object *obj, void(*func)(void *data, Evas_Object *o), void *data)
 To be documented.

void evas_object_image_pixels_dirty_set (Evas_Object *obj, Evas_Bool dirty)
 To be documented.

Evas_Bool evas_object_image_pixels_dirty_get (Evas_Object *obj)
 To be documented.

void evas_image_cache_flush (Evas *e)
 To be documented.

void evas_image_cache_reload (Evas *e)
 To be documented.

void evas_image_cache_set (Evas *e, int size)
 To be documented.

int evas_image_cache_get (Evas *e)
 To be documented.

Evas_Objectevas_object_text_add (Evas *e)
 To be documented.

void evas_object_text_font_source_set (Evas_Object *obj, const char *font)
 To be documented.

const char * evas_object_text_font_source_get (Evas_Object *obj)
 To be documented.

void evas_object_text_font_set (Evas_Object *obj, const char *font, Evas_Font_Size size)
 To be documented.

void evas_object_text_font_get (Evas_Object *obj, char **font, Evas_Font_Size *size)
 To be documented.

void evas_object_text_text_set (Evas_Object *obj, const char *text)
 To be documented.

const char * evas_object_text_text_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_ascent_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_descent_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_max_ascent_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_max_descent_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_horiz_advance_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_vert_advance_get (Evas_Object *obj)
 To be documented.

Evas_Coord evas_object_text_inset_get (Evas_Object *obj)
 To be documented.

int evas_object_text_char_pos_get (Evas_Object *obj, int pos, Evas_Coord *cx, Evas_Coord *cy, Evas_Coord *cw, Evas_Coord *ch)
 To be documented.

int evas_object_text_char_coords_get (Evas_Object *obj, Evas_Coord x, Evas_Coord y, Evas_Coord *cx, Evas_Coord *cy, Evas_Coord *cw, Evas_Coord *ch)
 To be documented.

int evas_string_char_next_get (const char *str, int pos, int *decoded)
 To be documented.

int evas_string_char_prev_get (const char *str, int pos, int *decoded)
 To be documented.

void evas_font_path_clear (Evas *e)
 To be documented.

void evas_font_path_append (Evas *e, const char *path)
 To be documented.

void evas_font_path_prepend (Evas *e, const char *path)
 To be documented.

const Evas_Listevas_font_path_list (Evas *e)
 To be documented.

void evas_font_cache_flush (Evas *e)
 To be documented.

void evas_font_cache_set (Evas *e, int size)
 To be documented.

int evas_font_cache_get (Evas *e)
 To be documented.

void evas_object_del (Evas_Object *obj)
 To be documented.

const char * evas_object_type_get (Evas_Object *obj)
 To be documented.

void evas_object_layer_set (Evas_Object *obj, int l)
 To be documented.

int evas_object_layer_get (Evas_Object *obj)
 To be documented.

void evas_object_raise (Evas_Object *obj)
 To be documented.

void evas_object_lower (Evas_Object *obj)
 To be documented.

void evas_object_stack_above (Evas_Object *obj, Evas_Object *above)
 To be documented.

void evas_object_stack_below (Evas_Object *obj, Evas_Object *below)
 To be documented.

Evas_Objectevas_object_above_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_below_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_bottom_get (Evas *e)
 To be documented.

Evas_Objectevas_object_top_get (Evas *e)
 To be documented.

void evas_object_move (Evas_Object *obj, Evas_Coord x, Evas_Coord y)
 To be documented.

void evas_object_resize (Evas_Object *obj, Evas_Coord w, Evas_Coord h)
 To be documented.

void evas_object_geometry_get (Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h)
 To be documented.

void evas_object_show (Evas_Object *obj)
 To be documented.

void evas_object_hide (Evas_Object *obj)
 To be documented.

Evas_Bool evas_object_visible_get (Evas_Object *obj)
 To be documented.

void evas_object_color_set (Evas_Object *obj, int r, int g, int b, int a)
 To be documented.

void evas_object_color_get (Evas_Object *obj, int *r, int *g, int *b, int *a)
 To be documented.

void evas_object_clip_set (Evas_Object *obj, Evas_Object *clip)
 Clip one object to another.

Evas_Objectevas_object_clip_get (Evas_Object *obj)
 Get the object clipping this one (if any).

void evas_object_clip_unset (Evas_Object *obj)
 Disable clipping for an object.

const Evas_Listevas_object_clipees_get (Evas_Object *obj)
 Return a list of objects currently clipped by a specific object.

void evas_object_data_set (Evas_Object *obj, const char *key, const void *data)
 Set an attached data pointer to an object with a given string key.

void * evas_object_data_del (Evas_Object *obj, const char *key)
 Return an attached data pointer by its given string key.

void evas_object_name_set (Evas_Object *obj, const char *name)
 To be documented.

const char * evas_object_name_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_name_find (Evas *e, const char *name)
 To be documented.

Evasevas_object_evas_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_object_top_at_xy_get (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
 To be documented.

Evas_Objectevas_object_top_at_pointer_get (Evas *e)
 To be documented.

Evas_Objectevas_object_top_in_rectangle_get (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
 To be documented.

Evas_Listevas_objects_at_xy_get (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
 To be documented.

Evas_Listevas_objects_in_rectangle_get (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Evas_Bool include_pass_events_objects, Evas_Bool include_hidden_objects)
 To be documented.

void evas_smart_free (Evas_Smart *s)
 To be documented.

Evas_Smartevas_smart_class_new (Evas_Smart_Class *sc)
 To be documented.

Evas_Smart_Classevas_smart_class_get (Evas_Smart *s)
 To be documented.

void * evas_smart_data_get (Evas_Smart *s)
 To be documented.

Evas_Objectevas_object_smart_add (Evas *e, Evas_Smart *s)
 To be documented.

void evas_object_smart_member_add (Evas_Object *obj, Evas_Object *smart_obj)
 To be documented.

void evas_object_smart_member_del (Evas_Object *obj)
 To be documented.

Evas_Smartevas_object_smart_smart_get (Evas_Object *obj)
 To be documented.

void * evas_object_smart_data_get (Evas_Object *obj)
 To be documented.

void evas_object_smart_data_set (Evas_Object *obj, void *data)
 To be documented.

void evas_object_smart_callback_add (Evas_Object *obj, const char *event, void(*func)(void *data, Evas_Object *obj, void *event_info), const void *data)
 To be documented.

void * evas_object_smart_callback_del (Evas_Object *obj, const char *event, void(*func)(void *data, Evas_Object *obj, void *event_info))
 To be documented.

void evas_object_smart_callback_call (Evas_Object *obj, const char *event, void *event_info)
 To be documented.

void evas_event_freeze (Evas *e)
 Freeze alll event processing.

void evas_event_thaw (Evas *e)
 Thaw a canvas out after freezing.

int evas_event_freeze_get (Evas *e)
 Return the freeze count of a given canvas.

void evas_event_feed_mouse_down_data (Evas *e, int b, const void *data)
 To be documented.

void evas_event_feed_mouse_up_data (Evas *e, int b, const void *data)
 To be documented.

void evas_event_feed_mouse_move_data (Evas *e, int x, int y, const void *data)
 To be documented.

void evas_event_feed_mouse_in_data (Evas *e, const void *data)
 To be documented.

void evas_event_feed_mouse_out_data (Evas *e, const void *data)
 To be documented.

void evas_event_feed_mouse_wheel_data (Evas *e, int direction, int z, const void *data)
 To be documented.

void evas_event_feed_key_down_data (Evas *e, const char *keyname, const void *data)
 To be documented.

void evas_event_feed_key_up_data (Evas *e, const char *keyname, const void *data)
 To be documented.

void evas_event_feed_mouse_down (Evas *e, int b)
 To be documented.

void evas_event_feed_mouse_up (Evas *e, int b)
 To be documented.

void evas_event_feed_mouse_move (Evas *e, int x, int y)
 To be documented.

void evas_event_feed_mouse_in (Evas *e)
 To be documented.

void evas_event_feed_mouse_out (Evas *e)
 To be documented.

void evas_event_feed_mouse_wheel (Evas *e, int direction, int z)
 To be documented.

void evas_event_feed_key_down (Evas *e, const char *keyname)
 To be documented.

void evas_event_feed_key_up (Evas *e, const char *keyname)
 To be documented.

void evas_object_focus_set (Evas_Object *obj, Evas_Bool focus)
 To be documented.

Evas_Bool evas_object_focus_get (Evas_Object *obj)
 To be documented.

Evas_Objectevas_focus_get (Evas *e)
 To be documented.

Evas_Modifierevas_key_modifier_get (Evas *e)
 To be documented.

Evas_Lockevas_key_lock_get (Evas *e)
 To be documented.

Evas_Bool evas_key_modifier_is_set_get (Evas_Modifier *m, const char *keyname)
 To be documented.

Evas_Bool evas_key_lock_is_set_get (Evas_Lock *l, const char *keyname)
 To be documented.

void evas_key_modifier_add (Evas *e, const char *keyname)
 To be documented.

void evas_key_modifier_del (Evas *e, const char *keyname)
 To be documented.

void evas_key_lock_add (Evas *e, const char *keyname)
 To be documented.

void evas_key_lock_del (Evas *e, const char *keyname)
 To be documented.

void evas_key_modifier_on (Evas *e, const char *keyname)
 To be documented.

void evas_key_modifier_off (Evas *e, const char *keyname)
 To be documented.

void evas_key_lock_on (Evas *e, const char *keyname)
 To be documented.

void evas_key_lock_off (Evas *e, const char *keyname)
 To be documented.

Evas_Modifier_Mask evas_key_modifier_mask_get (Evas *e, const char *keyname)
 To be documented.

Evas_Bool evas_object_key_grab (Evas_Object *obj, const char *keyname, Evas_Modifier_Mask modifiers, Evas_Modifier_Mask not_modifiers, Evas_Bool exclusive)
 To be documented.

void evas_object_key_ungrab (Evas_Object *obj, const char *keyname, Evas_Modifier_Mask modifiers, Evas_Modifier_Mask not_modifiers)
 To be documented.

void evas_object_pass_events_set (Evas_Object *obj, Evas_Bool pass)
 To be documented.

Evas_Bool evas_object_pass_events_get (Evas_Object *obj)
 To be documented.

void evas_object_repeat_events_set (Evas_Object *obj, Evas_Bool repeat)
 To be documented.

Evas_Bool evas_object_repeat_events_get (Evas_Object *obj)
 To be documented.

void evas_object_event_callback_add (Evas_Object *obj, Evas_Callback_Type type, void(*func)(void *data, Evas *e, Evas_Object *obj, void *event_info), const void *data)
 Add a callback function to an object.

void * evas_object_event_callback_del (Evas_Object *obj, Evas_Callback_Type type, void(*func)(void *data, Evas *e, Evas_Object *obj, void *event_info))
 Delete a callback function from an object.

void evas_object_intercept_show_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj), const void *data)
 To be documented.

void * evas_object_intercept_show_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj))
 To be documented.

void evas_object_intercept_hide_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj), const void *data)
 To be documented.

void * evas_object_intercept_hide_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj))
 To be documented.

void evas_object_intercept_move_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Coord x, Evas_Coord y), const void *data)
 To be documented.

void * evas_object_intercept_move_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Coord x, Evas_Coord y))
 To be documented.

void evas_object_intercept_resize_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Coord w, Evas_Coord h), const void *data)
 To be documented.

void * evas_object_intercept_resize_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Coord w, Evas_Coord h))
 To be documented.

void evas_object_intercept_raise_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj), const void *data)
 To be documented.

void * evas_object_intercept_raise_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj))
 To be documented.

void evas_object_intercept_lower_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj), const void *data)
 To be documented.

void * evas_object_intercept_lower_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj))
 To be documented.

void evas_object_intercept_stack_above_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Object *above), const void *data)
 To be documented.

void * evas_object_intercept_stack_above_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Object *above))
 To be documented.

void evas_object_intercept_stack_below_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Object *below), const void *data)
 To be documented.

void * evas_object_intercept_stack_below_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, Evas_Object *below))
 To be documented.

void evas_object_intercept_layer_set_callback_add (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, int l), const void *data)
 To be documented.

void * evas_object_intercept_layer_set_callback_del (Evas_Object *obj, void(*func)(void *data, Evas_Object *obj, int l))
 To be documented.


Detailed Description

These routines are used for Evas library interaction.


Enumeration Type Documentation

enum _Evas_Callback_Type
 

Enumeration values:
EVAS_CALLBACK_MOUSE_IN  Mouse In Event.
EVAS_CALLBACK_MOUSE_OUT  Mouse Out Event.
EVAS_CALLBACK_MOUSE_DOWN  Mouse Button Down Event.
EVAS_CALLBACK_MOUSE_UP  Mouse Button Up Event.
EVAS_CALLBACK_MOUSE_MOVE  Mouse Move Event.
EVAS_CALLBACK_MOUSE_WHEEL  Mouse Wheel Event.
EVAS_CALLBACK_FREE  Object Being Freed.
EVAS_CALLBACK_KEY_DOWN  Key Press Event.
EVAS_CALLBACK_KEY_UP  Key Release Event.
EVAS_CALLBACK_FOCUS_IN  Focus In Event.
EVAS_CALLBACK_FOCUS_OUT  Focus Out Event.
EVAS_CALLBACK_SHOW  Show Event.
EVAS_CALLBACK_HIDE  Hide Event.
EVAS_CALLBACK_MOVE  Move Event.
EVAS_CALLBACK_RESIZE  Resize Event.
EVAS_CALLBACK_RESTACK  Restack Event.


Function Documentation

int evas_alloc_error void   ) 
 

Return if any allocation errors have occured during the prior function.

Returns:
The allocation error flag
This function will return if any memory allocation errors occured during, and what kind they were. The return value will be one of EVAS_ALLOC_ERROR_NONE, EVAS_ALLOC_ERROR_FATAL or EVAS_ALLOC_ERROR_RECOVERED with each meaning something different.

EVAS_ALLOC_ERROR_NONE means that no errors occured at all and the function worked as expected.

EVAS_ALLOC_ERROR_FATAL means the function was completely unable to perform its job and will have exited as cleanly as possible. The programmer should consider this as a sign of very low memory and should try and safely recover from the prior functions failure (or try free up memory elsewhere and try again after more memory is freed).

EVAS_ALLOC_ERROR_RECOVERED means that an allocation error occured, but was recovered from by evas finding memory of its own it has allocated and freeing what it sees as not really usefully allocated memory. What is freed may vary. Evas may reduce the resolution of images, free cached images or fonts, trhow out pre-rendered data, reduce the complexity of change lists etc. Evas and the program will function as per normal after this, but this is a sign of low memory, and it is suggested that the program try and identify memory it doesn't need, and free it.

Example:

extern Evas_Object *object; void callback (void *data, Evas *e, Evas_Object *obj, void *event_info); evas_object_event_callback_add(object, EVAS_CALLBACK_MOUSE_DOWN, callback, NULL); if (evas_alloc_error() == EVAS_ALLOC_ERROR_FATAL) { fprintf(stderr, "ERROR: Completely unable to attach callabck. Must\n"); fprintf(stderr, " destroy object now as it cannot be used.\n"); evas_object_del(object); object = NULL; fprintf(stderr, "WARNING: Memory is really low. Cleaning out RAM.\n"); my_memory_cleanup(); } if (evas_alloc_error() == EVAS_ALLOC_ERROR_RECOVERED) { fprintf(stderr, "WARNING: Memory is really low. Cleaning out RAM.\n"); my_memory_cleanup(); }

Evas_Coord evas_coord_screen_x_to_world Evas e,
int  x
 

Convert/scale an ouput screen co-ordinate into canvas co-ordinates.

Parameters:
e The pointer to the Evas Canvas
x The screen/output x co-ordinate
Returns:
The screen co-ordinate translated to canvas unit co-ordinates
This function takes in a horizontal co-ordinate as the x parameter and converts it into canvas units, accounting for output size, viewport size and location, returning it as the function return value. If e is invalid, the results are undefined.

Example:

extern Evas *evas; extern int screen_x; Evas_Coord canvas_x; canvas_x = evas_coord_screen_x_to_world(evas, screen_x);

Evas_Coord evas_coord_screen_y_to_world Evas e,
int  y
 

Convert/scale an ouput screen co-ordinate into canvas co-ordinates.

Parameters:
e The pointer to the Evas Canvas
y The screen/output y co-ordinate
Returns:
The screen co-ordinate translated to canvas unit co-ordinates
This function takes in a vertical co-ordinate as the y parameter and converts it into canvas units, accounting for output size, viewport size and location, returning it as the function return value. If e is invalid, the results are undefined.

Example:

extern Evas *evas; extern int screen_y; Evas_Coord canvas_y; canvas_y = evas_coord_screen_y_to_world(evas, screen_y);

int evas_coord_world_x_to_screen Evas e,
Evas_Coord  x
 

Convert/scale a canvas co-ordinate into output screen co-ordinates.

Parameters:
e The pointer to the Evas Canvas
x The canvas x co-ordinate
Returns:
The output/screen co-ordinate translated to output co-ordinates
This function takes in a horizontal co-ordinate as the x parameter and converts it into output units, accounting for output size, viewport size and location, returning it as the function return value. If e is invalid, the results are undefined.

Example:

extern Evas *evas; int screen_x; extern Evas_Coord canvas_x; screen_x = evas_coord_world_x_to_screen(evas, canvas_x);

int evas_coord_world_y_to_screen Evas e,
Evas_Coord  y
 

Convert/scale a canvas co-ordinate into output screen co-ordinates.

Parameters:
e The pointer to the Evas Canvas
y The canvas y co-ordinate
Returns:
The output/screen co-ordinate translated to output co-ordinates
This function takes in a vertical co-ordinate as the x parameter and converts it into output units, accounting for output size, viewport size and location, returning it as the function return value. If e is invalid, the results are undefined.

Example:

extern Evas *evas; int screen_y; extern Evas_Coord canvas_y; screen_y = evas_coord_world_y_to_screen(evas, canvas_y);

void evas_damage_rectangle_add Evas e,
int  x,
int  y,
int  w,
int  h
 

To be documented.

FIXME: To be fixed.

Evas_Engine_Info* evas_engine_info_get Evas e  ) 
 

Get the render engine info struct from the canvas.

Parameters:
e The pointer to the Evas Canvas
Returns:
A pointer to the Engine Info structure
Calling this function returns a pointer to a publicly modifiable structure that the rendering engine for the given canvas has set up. Calling this function before the rendering engine has been set will result in NULL being returned, as will calling this function on an invalid canvas. The caller does not need to free this structure and should only assume that the pointer is valid until evas_engine_info_set() is called or until evas_render() is called. After these calls the contents of this structure and the pointer to it are not guaranteed to be valid.

With some engines, calling this function and modifying structure parameters before calling evas_engine_info_set() is the method to modify engine parameters whilst the canvas is alive.

Example:

Evas *evas; Evas_Engine_Info_Software_X11 *einfo; extern Display *display; extern Window win; evas = evas_new(); evas_output_method_set(evas, evas_render_method_lookup("software_x11")); evas_output_size_set(evas, 640, 480); evas_output_viewport_set(evas, 0, 0, 640, 480); einfo = (Evas_Engine_Info_Software_X11 *)evas_engine_info_get(evas); einfo->info.display = display; einfo->info.visual = DefaultVisual(display, DefaultScreen(display)); einfo->info.colormap = DefaultColormap(display, DefaultScreen(display)); einfo->info.drawable = win; einfo->info.depth = DefaultDepth(display, DefaultScreen(display)); evas_engine_info_set(evas, (Evas_Engine_Info *)einfo);

void evas_engine_info_set Evas e,
Evas_Engine_Info info
 

Set up the Engine Info from the info structure.

Parameters:
e The pointer to the Evas Canvas
info The pointer to the Engine Info to use
This function takes any parameters set in the provided info structure and applies them to the rendering engine. You need to use the Engine Info structure pointer provided by evas_engine_info_get() and not anything else.

You need to set up the Engine Info at least once before doing any rendering or creating any objects on the Evas Canvas. Some engines support the changing of engine parameters during runtime and so the application should call evas_engine_info_get(), modify parameters that need to be modified, and then call this function to have those changes take effect.

Once evas_engine_info_set() is called the Engine Info structure pointer should be considered invalid and should not be used again. Use evas_engine_info_get() to fetch it again if needed.

Example:

Evas *evas; Evas_Engine_Info_Software_X11 *einfo; extern Display *display; extern Window win; evas = evas_new(); evas_output_method_set(evas, evas_render_method_lookup("software_x11")); evas_output_size_set(evas, 640, 480); evas_output_viewport_set(evas, 0, 0, 640, 480); einfo = (Evas_Engine_Info_Software_X11 *)evas_engine_info_get(evas); einfo->info.display = display; einfo->info.visual = DefaultVisual(display, DefaultScreen(display)); einfo->info.colormap = DefaultColormap(display, DefaultScreen(display)); einfo->info.drawable = win; einfo->info.depth = DefaultDepth(display, DefaultScreen(display)); evas_engine_info_set(evas, (Evas_Engine_Info *)einfo);

void evas_event_feed_key_down Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_key_down_data Evas e,
const char *  keyname,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_key_up Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_key_up_data Evas e,
const char *  keyname,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_down Evas e,
int  b
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_down_data Evas e,
int  b,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_in Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_in_data Evas e,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_move Evas e,
int  x,
int  y
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_move_data Evas e,
int  x,
int  y,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_out Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_out_data Evas e,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_up Evas e,
int  b
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_up_data Evas e,
int  b,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_wheel Evas e,
int  direction,
int  z
 

To be documented.

FIXME: To be fixed.

void evas_event_feed_mouse_wheel_data Evas e,
int  direction,
int  z,
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_event_freeze Evas e  ) 
 

Freeze alll event processing.

Parameters:
e The canvas to freeze event processing on
This function will indicate to evas that the canvas e is to have all event processing frozen until a matching evas_event_thaw() function is called on the same canvas. Every freeze call must be matched by a thaw call in order to completely thaw out a canvas.

Example:

extern Evas *evas; extern Evas_Object *object; evas_event_freeze(evas); evas_object_move(object, 50, 100); evas_object_resize(object, 200, 200); evas_event_thaw(evas);

int evas_event_freeze_get Evas e  ) 
 

Return the freeze count of a given canvas.

Parameters:
e The canvas to fetch the freeze count from
This returns the number of times the canvas has been told to freeze events. It is possible to call evas_event_freeze() multiple times, and these must be matched by evas_event_thaw() calls. This call allows the program to discover just how many times things have been frozen in case it may want to break out of a deep freeze state where the count is high.

Example:

extern Evas *evas; while (evas_event_freeze_get(evas) > 0) evas_event_thaw(evas);

void evas_event_thaw Evas e  ) 
 

Thaw a canvas out after freezing.

Parameters:
e The canvas to thaw out
This will thaw out a canvas after a matching evas_event_freeze() call. If this call completely thaws out a canvas, events will start being processed again after this call, but this call will not invole any "missed" events to be evaluated.

See evas_event_freeze() for an example.

Evas_Object* evas_focus_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_font_cache_flush Evas e  ) 
 

To be documented.

FIXME: To be fixed.

int evas_font_cache_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_font_cache_set Evas e,
int  size
 

To be documented.

FIXME: To be fixed.

void evas_font_path_append Evas e,
const char *  path
 

To be documented.

FIXME: To be fixed.

void evas_font_path_clear Evas e  ) 
 

To be documented.

FIXME: To be fixed.

const Evas_List* evas_font_path_list Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_font_path_prepend Evas e,
const char *  path
 

To be documented.

FIXME: To be fixed.

void evas_free Evas e  ) 
 

Free an Evas.

Parameters:
e The Pointer to the Evas to be freed
When called this function frees the Evas Canvas e and all Evas Objects created on this canvas. As the objects are freed any that have 'free' callbacks will have them called during the execution of this function. Example:
extern Evas *evas; evas_free(evas);

Evas_Hash* evas_hash_add Evas_Hash hash,
const char *  key,
const void *  data
 

Add an entry to the hash table.

Parameters:
hash The hash table handle to hold the entry
key The key string for the entry
data The pointer to the data to be stored
Returns:
The modified hash table handle
This function takes the data pointed to by data and inserts it into the hash table hash, under the string key key. It will return a modified hash table handle when done. An empty hash table starts as a NULL pointer.

It is expected that the key will be a unique string within the hash table otherwise it is not deterministic as to which inserted data pointer will be returned when evas_hash_find() is called, or which one wil be removed on evas_hash_del() being called. A key of NULL is allowed, but will mean unique lookups are impossible (unless the entry is the only one with a NULL key in the hash table). Key strings are casesensitive.

If a memory allocation failure occurs, the old hash table pointer will be returned, with the hash table contents unchanged, and the programmer should use evas_hash_alloc_error() to determine if an allocation error occured and recover from this situation.

Example:

Evas_Hash *hash = NULL; extern void *my_data; hash = evas_hash_add(hash, "My Data", my_data); if (evas_hash_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. Hash allocation failed.\n"); exit(-1); } if (evas_hash_find(hash, "My Data") == my_data) { printf("My Data inserted and successfully found.\n"); }

int evas_hash_alloc_error void   ) 
 

Return memory allocation failure flag after an function requiring allocation.

Returns:
The state of the allocation flag
This function returns the state of the memory allocation flag. This flag is set if memory allocations fail during evas_hash_add() calls. If they do, 1 will be returned, otherwise 0 will be returned. The flag will remain in its current state until the next call that requires allocation is called, and is then reset.

Example:

Evas_Hash *hash = NULL; extern void *my_data; hash = evas_hash_add(hash, "My Data", my_data); if (evas_hash_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. Hash allocation failed.\n"); exit(-1); } if (evas_hash_find(hash, "My Data") == my_data) { printf("My Data inserted and successfully found.\n"); }

Evas_Hash* evas_hash_del Evas_Hash hash,
const char *  key,
const void *  data
 

Remove an entry from the hash table.

Parameters:
hash The hash table handle to remove the entry from
key The key string for the entry
data The pointer to the data to be removed
Returns:
The modified hash table handle
This function removed an entry from the hash table pointed to by hash. The key is identified by its string key. If the key is NULL, then the data pointer data must be provided for a match to be possible so the entry can be removed. As long as the key is not NULL, the data pointer is not required and can be NULL. Remember than key strings are case sensitive.

This function returns the modified hash table after removal.

Example:

extern Evas_Hash *hash; extern void *data; printf("Insert some data...\n"); hash = evas_hash_add(hash, "My Data", my_data); printf("Removing by key...\n"); hash = evas_hash_del(hash, "My Data", NULL); printf("Insert some more data as a NULL key...\n"); hash = evas_hash_add(hash, NULL, my_data); printf("Removing by data as a NULL key...\n"); hash = evas_hash_del(hash, NULL, my_data);

void* evas_hash_find Evas_Hash hash,
const char *  key
 

Find a specified entry in a hash table.

Parameters:
hash The hash table handle to find the entry in
key The key string for the entry
Returns:
The data pointer for the stored entry, or NULL if not found.
This function finds an entry by its key, which is case sensitive. If the entry in the hash table hash is found, the data pointer that was stored under than entry is returned, otherwise NULL is returned.

Example:

extern Evas_Hash *hash; extern void *data; hash = evas_hash_add(hash, "My Data", my_data); if (evas_hash_find(hash, "My Data") == my_data) { printf("Found stored entry!\n"); }

void evas_hash_foreach Evas_Hash hash,
Evas_Bool(*  func)(Evas_Hash *hash, const char *key, void *data, void *fdata),
const void *  fdata
 

Call a function on every member stored in the hash table.

Parameters:
hash The hash table whose members will be walked
func The function to call on each parameter
fdata The data pointer to pass to the function being called
This function goes through every entry in the hash table hash and calls the function func on each member. The function should NOT modify the hash table contents if it reeturns 1. IF the hash table contents are modified by this function or the function wishes to stop processing it must return 0, otherwise return 1 to keep processing.

Example:

extern Evas_Hash *hash; Evas_Bool hash_fn(Evas_Hash *hash, const char *key, void *data, void *fdata) { printf("Func data: %s, Hash entry: %s / %p\n", fdata, key, data); return 1; } int main(int argc, char **argv) { char *hash_fn_data; hash_fn_data = strdup("Hello World"); evas_hash_foreach(hash, hash_fn, hash_fn_data); free(hash_fn_data); }

void evas_hash_free Evas_Hash hash  ) 
 

Free an entire hash table.

Parameters:
hash The hash table to be freed
This function frees up all the memory allocated to storing the specified hash tale pointed to by hash. Any entries in the table that the program has no more pointers for elsewhere may now be lost, so this should only be called if the program has lready freed any allocated data in the hash table or has the pointers for data in teh table stored elswehere as well.

Example:

extern Evas_Hash *hash; evas_hash_free(hash); hash = NULL;

int evas_hash_size Evas_Hash hash  ) 
 

Return the number of buckets in the hash table.

Parameters:
hash The hash table to return the bucket count of
Returns:
The number of buckets in the hash table
This function returns the number of buckes in he hash table hash.

Example:

extern Evas_Hash *hash; printf("Hash bucket count: %i\n", evas_hash_size(hash));

void evas_image_cache_flush Evas e  ) 
 

To be documented.

FIXME: To be fixed.

int evas_image_cache_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_image_cache_reload Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_image_cache_set Evas e,
int  size
 

To be documented.

FIXME: To be fixed.

void evas_key_lock_add Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_lock_del Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

Evas_Lock* evas_key_lock_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_key_lock_is_set_get Evas_Lock l,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_lock_off Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_lock_on Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_modifier_add Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_modifier_del Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

Evas_Modifier* evas_key_modifier_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_key_modifier_is_set_get Evas_Modifier m,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

Evas_Modifier_Mask evas_key_modifier_mask_get Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_modifier_off Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

void evas_key_modifier_on Evas e,
const char *  keyname
 

To be documented.

FIXME: To be fixed.

int evas_list_alloc_error void   ) 
 

Return the memory allocation failure flag after any operation needin allocation.

Returns:
The state of the allocation flag
This function returns the state of the memory allocation flag. This flag is set if memory allocations during evas_list_append(), evas_list_prepend(), evas_list_append_relative(), or evas_list_prepend_relative() fail. If they do fail, 1 will be returned, otherwise 0 will be returned. The flag will remain in its current state until the next call that requires allocation is called, and is then reset.

Example:

Evas_List *list = NULL; extern void *my_data; list = evas_list_append(list, my_data); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); }

Evas_List* evas_list_append Evas_List list,
const void *  data
 

Append a data pointer to a linked list.

Parameters:
list The list handle to append data too
data The data pointer to append to list list
Returns:
A new list handle to replace the old one
This function appends the data pointed to by data to the end of the linked list list, and returns a new list pointer to replace the old one. An empty list should start as a NULL pointer.

In the event of a memory allocation failure, the old list pointer will be returned and the application should use evas_list_alloc_error() to determine if the allocation failed and sensibly recover from this condition.

Example:

Evas_List *list = NULL; extern void *my_data; list = evas_list_append(list, my_data); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); }

Evas_List* evas_list_append_relative Evas_List list,
const void *  data,
const void *  relative
 

Append a data pointer to a linked list after the memeber specified.

Parameters:
list The list handle to append data too
data The data pointer to append to list list after relative
relative The data pointer after which to insert data
Returns:
A new list handle to replace the old one
This function appends the data pointed to by data after the position in of the list member whose data pointer is relative, in the list list, and returns a new list pointer to replace the old one. An empty list should start as a NULL pointer.

If no member in the list has a data pointer of relative, the item is appended to the very end of the list. If there are multiple members of the list with the data pointer relative, the data item is inserted after the first instance of the member relative in the list.

In the event of a memory allocation failure, the old list pointer will be returned and the application should use evas_list_alloc_error() to determine if the allocation failed and sensibly recover from this condition.

Example:

Evas_List *list = NULL; extern void *my_data; extern void *relative_member; list = evas_list_append(list, relative_member); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); } list = evas_list_append_relative(list, my_data, relative_member); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); }

int evas_list_count Evas_List list  ) 
 

Get the count of the number of items in a list.

Parameters:
list The list whose count to return
Returns:
The number of members in the list list
This function returns how many members in the specified list: list. If the list is empty (NULL), 0 is returned.

NB: This is an order-1 operation and takes the same tiem regardless of the length of the list.

Example:

extern Evas_List *list; printf("The list has %i members\n", evas_list_count(list));

void* evas_list_data Evas_List list  ) 
 

Get the list node data member.

Parameters:
list The list node to get the data member of
Returns:
The data member from the list node list
This function returns the data member of the specified list node list. It is equivalent to list->data.

Example:

extern Evas_List *list; Evas_List *l; printf("The list:\n"); for (l = list; l; l = evas_list_next(l)) { printf("%p\n", evas_list_data(l)); }

void* evas_list_find Evas_List list,
const void *  data
 

Find a member of a list and return the member.

Parameters:
list The list handle to search for data
data The data pointer to find in the list list
Returns:
The found member data pointer
A call to this function will search the list list from beginning to end for the first member whose data pointer is data. If it is found, data will be returned, otherwise NULL will be returned.

Example:

extern Evas_List *list; extern void *my_data; if (evas_list_find(list, my_data) == my_data) { printf("Found member %p\n", my_data); }

Evas_List* evas_list_find_list Evas_List list,
const void *  data
 

Find a member of a list and return the list node containing that member.

Parameters:
list The list handle to search for data
data The data pointer to find in the list list
Returns:
The found members list node
A call to this function will search the list list from beginning to end for the first member whose data pointer is data. If it is found, the list node containing the specified member will be returned, otherwise NULL will be returned.

Example:

extern Evas_List *list; extern void *my_data; Evas_List *found_node; found_node = evas_list_find_list(list, my_data); if (found_node) { printf("Found member %p\n", found_node->data); }

Evas_List* evas_list_free Evas_List list  ) 
 

Free an entire list and all the nodes, ignoring the data contained.

Parameters:
list The list to free
Returns:
A NULL pointer
This function will free all the list nodes in list specified by list.

Example:

extern Evas_List *list; list = evas_list_free(list);

Evas_List* evas_list_last Evas_List list  ) 
 

Get the last list node in the list.

Parameters:
list The list to get the last list node from
Returns:
The last list node in the list list
This function will return the last list node in the list (or NULL if the list is empty).

NB: This is a order-1 operation (it takes the same short time regardless of the length of the list).

Example:

extern Evas_List *list; Evas_List *last, *l; last = evas_list_last(list); printf("The list in reverse:\n"); for (l = last; l; l = l->prev) { printf("%p\n", l->data); }

Evas_List* evas_list_next Evas_List list  ) 
 

Get the next list node after the specified list node.

Parameters:
list The list node to get the next list node from
Returns:
The next list node, or NULL if no next list node exists
This function returns the next list node after the current one. It is equivalent to list->next.

Example:

extern Evas_List *list; Evas_List *l; printf("The list:\n"); for (l = list; l; l = evas_list_next(l)) { printf("%p\n", l->data); }

void* evas_list_nth Evas_List list,
int  n
 

Get the nth member's data pointer in a list.

Parameters:
list The list to get member number n from
n The number of the element (0 being the first)
Returns:
The data pointer stored in the specified element
This function returns the data pointer of element number n, in the list list. The first element in the array is element number 0. If the element number n does not exist, NULL will be returned.

Example:

extern Evas_List *list; extern int number; void *data; data = evas_list_nth(list, number); if (data) printf("Element number %i has data %p\n", number, data);

Evas_List* evas_list_nth_list Evas_List list,
int  n
 

Get the nth member's list node in a list.

Parameters:
list The list to get member number n from
n The number of the element (0 being the first)
Returns:
The list node stored in the numbered element
This function returns the list node of element number n, in the list list. The first element in the array is element number 0. If the element number n does not exist, NULL will be returned.

Example:

extern Evas_List *list; extern int number; Evas_List *nth_list; nth_list = evas_list_nth_list(list, number); if (nth_list) printf("Element number %i has data %p\n", number, nth_list->data);

Evas_List* evas_list_prepend Evas_List list,
const void *  data
 

Prepend a data pointer to a linked list.

Parameters:
list The list handle to prepend data too
data The data pointer to prepend to list list
Returns:
A new list handle to replace the old one
This function prepends the data pointed to by data to the start of the linked list list, and returns a new list pointer to replace the old one. An empty list should start as a NULL pointer.

In the event of a memory allocation failur, the old list pointer will be returned and the application should use evas_list_alloc_error() to determine if the allocation failed and sensibly recover from this condition.

Example:

Evas_List *list = NULL; extern void *my_data; list = evas_list_prepend(list, my_data); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); }

Evas_List* evas_list_prepend_relative Evas_List list,
const void *  data,
const void *  relative
 

Prepend a data pointer to a linked list before the memeber specified.

Parameters:
list The list handle to prepend data too
data The data pointer to prepend to list list before relative
relative The data pointer before which to insert data
Returns:
A new list handle to replace the old one
This function prepends the data pointed to by data before the position in of the list member whose data pointer is relative, in the list list, and returns a new list pointer to replace the old one. An empty list should start as a NULL pointer.

If no member in the list has a data pointer of relative, the item is prepended to the very start of the list. If there are multiple members of the list with the data pointer relative, the data item is inserted before the first instance of the member relative in the list.

In the event of a memory allocation failure, the old list pointer will be returned and the application should use evas_list_alloc_error() to determine if the allocation failed and sensibly recover from this condition.

Example:

Evas_List *list = NULL; extern void *my_data; extern void *relative_member; list = evas_list_append(list, relative_member); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); } list = evas_list_prepend_relative(list, my_data, relative_member); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List allocation failed.\n"); exit(-1); }

Evas_List* evas_list_prev Evas_List list  ) 
 

Get the previous list node before the specified list node.

Parameters:
list The list node to get the previous list node from
Returns:
The previous list node, or NULL if no previous list node exists
This function returns the previous list node before the current one. It is equivalent to list->prev.

Example:

extern Evas_List *list; Evas_List *last, *l; last = evas_list_last(list); printf("The list in reverse:\n"); for (l = last; l; l = evas_list_prev(l)) { printf("%p\n", l->data); }

Evas_List* evas_list_remove Evas_List list,
const void *  data
 

Remove a specified member from a list.

Parameters:
list The list handle to remove data from
data The memebr to find and remove
Returns:
A new list handle to replace the old one
Calling this function finds the first instance of the member whose data pointer is data in the list list and removed that member from the the list. An empty list should start as a NULL pointer.

If no member is found that matches, nothing is done.

Example:

extern Evas_List *list; extern void *my_data; list = evas_list_remove(list, my_data);

Evas_List* evas_list_remove_list Evas_List list,
Evas_List remove_list
 

Remove a specified member from a list.

Parameters:
list The list handle to remove remove_list from
remove_list The list node which is to be removed
Returns:
A new list handle to replace the old one
Calling this function takes the list note remove_list and removes it from the list list, freeing the list node structure remove_list.

Example:

extern Evas_List *list; Evas_List *l; extern void *my_data; for (l = list; l; l= l->next) { if (l->data == my_data) { list = evas_list_remove_list(list, l); break; } }

Evas_List* evas_list_reverse Evas_List list  ) 
 

Reverse all the elements in the list.

Parameters:
list The list to reverse
Returns:
The list after it has been reversed
This takes a list list, and reverses the order of all elements in the list, so the last member is now first, and so on.

Example:

extern Evas_List *list; list = evas_list_reverse(list);

Evas_List* evas_list_sort Evas_List list,
int  size,
int(*  func)(void *, void *)
 

Sort a list according to the ordering func will return.

Parameters:
list The list handle to sort
size The length of the list to sort
func A function pointer that can handle comparing the list data nodes
Returns:
A new sorted list
This function sorts your list. The data in your nodes can be arbitrary, you just have to be smart enough to know what kind of data is in your lists

In the event of a memory allocation failure, It might segv.

Example:

int sort_cb(void *d1, void *d2) { const char *txt = NULL; const char *txt2 = NULL; if(!d1) return(1); if(!d2) return(-1); return(strcmp((const char*)d1, (const char*)d2)); } extern Evas_List *list; list = evas_list_sort(list, evas_list_count(list), sort_cb); if (evas_list_alloc_error()) { fprintf(stderr, "ERROR: Memory is low. List Sorting failed.\n"); exit(-1); }

Evas* evas_new void   ) 
 

Allocate and new Evas empty canvas.

Returns:
A zeroed out Evas, or NULL on failure
This function creates a new Evas Canvas object that is completely uninitialised. You cannot sensibly use this until it has been initialised. You need to set up the rendering engine for the canvas before you can add any objects to the canvas or render it.

This function will always succeed and return a valid canvas pointer unless the memory allocation fails, in which case NULL will be returned.

Example:

Evas *evas; evas = evas_new();

Evas_Object* evas_object_above_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_below_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_bottom_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_clip_get Evas_Object obj  ) 
 

Get the object clipping this one (if any).

Parameters:
obj The object to get the clipper from
This function returns the the object clipping obj. If obj not being clipped, NULL is returned. The object obj must be a valid object.

See also evas_object_clip_set(), evas_object_clip_unset() and evas_object_clipees_get().

Example:

extern Evas_Object *obj; Evas_Object *clipper; clipper = evas_object_clip_get(obj); if (clipper) evas_object_show(clipper);

void evas_object_clip_set Evas_Object obj,
Evas_Object clip
 

Clip one object to another.

Parameters:
obj The object to be clipped
clip The object to clip obj by
This function will clip the object obj to the area occupied by the object clipper. This means the object obj will only be visible within the area occupied by the clipping object (clip). The color of the object being clipped will be multiplied by the color of the clipping object, so the resulting color for the clipped object is RESULT = (OBJ * CLIP) / (255 * 255) per color element (red, green, blue and alpha). Clipping is recursive, so clip objects may be clipped by other objects, and their color will in tern be multiplied. You may NOT set up circular clipping lists (i.e. object 1 clips object 2 which clips object 1). The behavior of Evas is undefined in this case. Objects which do not clip others are visible as normal, those that clip 1 or more objects become invisible themselves, only affecting what they clip. If an object ceases to have other objects being clipped by it, it will become visible again. The visibility of an object affects the objects that are clipped by it, so if the object clipping others is not shown, the objects clipped will not be shown either. If the object was being clipped by another object when this function is called, it is implicitly removed from the clipper it is being clipped to, and now is made to clip its new clipper.

At the moment the only objects that can validly be used to clip other objects are rectangle objects. All other object types are invalid and the result of using them is undefined.

The clip object clip must be a valid object, but may also be NULL in which case the effect of this function is the same as calling evas_object_clip_unset() on the obj object.

Example:

extern Evas *evas; extern Evas_Object *obj; Evas_Object *clipper; clipper = evas_object_rectangle_add(evas); evas_object_color_set(clipper, 255, 255, 255, 255); evas_object_move(clipper, 10, 10); evas_object_resize(clipper, 20, 50); evas_object_clip_set(obj, clipper); evas_object_show(clipper);

void evas_object_clip_unset Evas_Object obj  ) 
 

Disable clipping for an object.

Parameters:
obj The object to cease clipping on
This function disables clipping for the object obj, if it was already clipped. If it wasn't, this has no effect. The object obj must be a valid object.

See also evas_object_clip_set(), evas_object_clipees_get() and evas_object_clip_get().

Example:

extern Evas_Object *obj; Evas_Object *clipper; clipper = evas_object_clip_get(obj); if (clipper) { evas_object_clip_unset(obj); evas_object_hide(obj); }

const Evas_List* evas_object_clipees_get Evas_Object obj  ) 
 

Return a list of objects currently clipped by a specific object.

Parameters:
obj The object to get a list of clippees from
This returns the inernal list handle that contains all objects clipped by the object obj. If none are clipped, it returns NULL. This list is only valid until the clip list is changed and should be fetched again with another call to evas_object_clipees_get() if any objects being clipped by this object are unclipped, clipped by a new object, are deleted or the clipper is deleted. These operations will invalidate the list returned so it should not be used anymore after that point. Any use of the list after this may have undefined results, not limited just to strange behavior but possible segfaults and other strange memory errors. The object obj must be a valid object.

See also evas_object_clip_set(), evas_object_clip_unset() and evas_object_clip_get().

Example:

extern Evas_Object *obj; Evas_Object *clipper; clipper = evas_object_clip_get(obj); if (clipper) { Evas_List *clippees, *l; clippees = evas_object_clipees_get(clipper); printf("Clipper clips %i objects\n", evas_list_count(clippees)); for (l = clippees; l; l = l->next) { Evas_Object *obj_tmp; obj_tmp = l->data; evas_object_show(obj_tmp); } }

void evas_object_color_get Evas_Object obj,
int *  r,
int *  g,
int *  b,
int *  a
 

To be documented.

FIXME: To be fixed.

void evas_object_color_set Evas_Object obj,
int  r,
int  g,
int  b,
int  a
 

To be documented.

FIXME: To be fixed.

void* evas_object_data_del Evas_Object obj,
const char *  key
 

Return an attached data pointer by its given string key.

Parameters:
obj The object to which the data was attached
key The string key the data was stored under
Returns:
The data pointer stored, or NULL if none was stored
This function will return the data pointer attached to the object obj stored using the string key key. If the object is valid and data was stored under the given key, the pointer that was stored will be reuturned. If this is not the case, NULL will be returned, signifying an invalid object or non-existent key. It is possible a NULL pointer was stored given that key, but this situation is non-sensical and thus can be considered an error as well. NULL pointers are never stored as this is the return value if an error occurs.

Example:

int *my_data; extern Evas_Object *obj; my_data = evas_object_data_get(obj, "name_of_my_data"); if (my_data) printf("Data stored was %p\n", my_data); else printf("No data was stored on the object\n"); */ void * evas_object_data_get(Evas_Object *obj, const char *key) { Evas_List *l; MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); return NULL; MAGIC_CHECK_END(); if (!key) return NULL; for (l = obj->data.elements; l; l = l->next) { Evas_Data_Node *node; node = l->data; if (!strcmp(node->key, key)) { obj->data.elements = evas_list_remove(obj->data.elements, node); obj->data.elements = evas_list_prepend(obj->data.elements, node); return node->data; } } return NULL; }

void evas_object_data_set Evas_Object obj,
const char *  key,
const void *  data
 

Set an attached data pointer to an object with a given string key.

Parameters:
obj The object to attach the data pointer to
key The string key for the data to access it
data The ponter to the data to be attached
This attaches the pointer data to the object obj given the string key. This pointer will stay "hooked" to the object until a new pointer with the same string key is attached with evas_object_data_set() or it is deleted with evas_object_data_del(). On deletion of the object obj, the pointers will not be accessible from the object anymore.

You can find the pointer attached under a string key using evas_object_data_get(). It is the job of the calling application to free any data pointed to by data when it is no longer required.

If data is NULL, the old value stored at key will be removed but no new value will be stored. This is synonymous with calling evas_object_data_del() with obj and key.

Example:

int *my_data; extern Evas_Object *obj; my_data = malloc(500); evas_object_data_set(obj, "name_of_data", my_data); printf("The data that was attached was %p\n", evas_object_data_get(obj, "name_of_data"));

void evas_object_del Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas* evas_object_evas_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_event_callback_add Evas_Object obj,
Evas_Callback_Type  type,
void(*  func)(void *data, Evas *e, Evas_Object *obj, void *event_info),
const void *  data
 

Add a callback function to an object.

Parameters:
obj Object to attach a callback to
type The type of event that will trigger the callback
func The function to be called when the event is triggered
data The data pointer to be passed to func
This function adds a function callback to an object when the event of type type occurs on object obj. The function is func.

In the event of a memory allocation error during addition of the callback to the object, evas_alloc_error() should be used to determine the nature of the error, if any, and the program should sensibly try and recover.

The function will be passed the pointer data when it is called. A callback function must look like this:

void callback (void *data, Evas *e, Evas_Object *obj, void *event_info);

The first parameter data in this function will be the same value passed to evas_object_event_callback_add() as the data parameter. The second parameter is a convenience for the programmer to know what evas canvas the event occured on. The third parameter obj is the Object handle on which the event occured. The foruth parameter event_info is a pointer to a data structure that may or may not be passed to the callback, depending on the event type that triggered the callback.

The event type type to trigger the function may be one of EVAS_CALLBACK_MOUSE_IN, EVAS_CALLBACK_MOUSE_OUT, EVAS_CALLBACK_MOUSE_DOWN, EVAS_CALLBACK_MOUSE_UP, EVAS_CALLBACK_MOUSE_MOVE, EVAS_CALLBACK_MOUSE_WHEEL, EVAS_CALLBACK_FREE, EVAS_CALLBACK_KEY_DOWN, EVAS_CALLBACK_KEY_UP, EVAS_CALLBACK_FOCUS_IN, EVAS_CALLBACK_FOCUS_OUT, EVAS_CALLBACK_SHOW, EVAS_CALLBACK_HIDE, EVAS_CALLBACK_MOVE, EVAS_CALLBACK_RESIZE or EVAS_CALLBACK_RESTACK. This determines the kind of event that will trigger the callback to be called. The event_info pointer passed to the callback will be one of the following, depending on the event triggering it:

EVAS_CALLBACK_MOUSE_IN: event_info = pointer to Evas_Event_Mouse_In

This event is triggered when the mouse pointer enters the region of the object obj. This may occur by the mouse pointer being moved by evas_event_feed_mouse_move() or evas_event_feed_mouse_move_data() calls, or by the object being shown, raised, moved, resized, or other objects being moved out of the way, hidden, lowered or moved out of the way.

EVAS_CALLBACK_MOUSE_OUT: event_info = pointer to Evas_Event_Mouse_Out

This event is triggered exactly like EVAS_CALLBACK_MOUSE_IN is, but occurs when the mouse pointer exits an object. Note that no out events will be reported if the mouse pointer is implicitly grabbed to an object (the mouse buttons are down at all and any were pressed on that object). An out event will be reported as soon as the mouse is no longer grabbed (no mouse buttons are depressed). Out events will be reported once all buttons are released, if the mouse has left the object.

EVAS_CALLBACK_MOUSE_DOWN: event_info = pointer to Evas_Event_Mouse_Down

This event is triggered by a mouse button being depressed while over an object. This causes this object to passively grab the mouse until all mouse buttons have been released. That means if this mouse button is the first to be pressed, all future mouse events will be reported to only this object until no buttons are down. That includes mouse move events, in and out events, and further button presses. When all buttons are released, event propagation occurs as normal.

EVAS_CALLBACK_MOUSE_UP: event_info = pointer to Evas_Event_Mouse_Up

This event is triggered by a mouse button being released while over an object or when passively grabbed to an object. If this is the last mouse button to be raised on an object then the passive grab is released and event processing will continue as normal.

EVAS_CALLBACK_MOUSE_MOVE: event_info = pointer to Evas_Event_Mouse_Move

This event is triggered by the mouse pointer moving while over an object or passively grabbed to an object.

EVAS_CALLBACK_MOUSE_WHEEL: event_info = pointer to Evas_Event_Mouse_Wheel

This event is triggered by the mouse wheel being rolled while over an object or passively grabbed to an object.

EVAS_CALLBACK_FREE: event_info = NULL

This event is triggered just before Evas is about to free all memory used by an object and remove all references to it. This is useful for programs to use if they attached data to an object and want to free it when the object is deleted. The object is still valid when this callback is called, but after this callback returns, there is no guarantee on the object's validity.

EVAS_CALLBACK_KEY_DOWN: event_info = pointer to Evas_Event_Key_Down

This callback is called when a key is pressed and the focus is on the object, or a key has been grabbed to a particular object which wants to intercept the key press regardless of what object has the focus.

EVAS_CALLBACK_KEY_UP: event_info = pointer to Evas_Event_Key_Up

This callback is called when a key is released and the focus is on the object, or a key has been grabbed to a particular object which wants to intercept the key release regardless of what object has the focus.

EVAS_CALLBACK_FOCUS_IN: event_info = NULL

This event is called when an object gains the focus. When the callback is called the object has already gained the focus.

EVAS_CALLBACK_FOCUS_OUT: event_info = NULL

This event is triggered by an object losing the focus. When the callback is called the object has already lost the focus.

EVAS_CALLBACK_SHOW: event_info = NULL

This event is triggered by the object being shown by evas_object_show().

EVAS_CALLBACK_HIDE: event_info = NULL

This event is triggered by an object being hidden by evas_object_hide().

EVAS_CALLBACK_MOVE: event_info = NULL

This event is triggered by an object being moved. evas_object_move() can trigger this, as can any object-specific manipulations that would mean the object's origin could move.

EVAS_CALLBACK_RESIZE: event_info = NULL

This event is triggered by an object being resized. Resizes can be triggered by evas_object_resize() or by any object-specific calls that may cause the object to resize.

Example:

extern Evas_Object *object; extern void *my_data; void down_callback(void *data, Evas *e, Evas_Object *obj, void *event_info); void up_callback(void *data, Evas *e, Evas_Object *obj, void *event_info); evas_object_event_callback_add(object, EVAS_CALLBACK_MOUSE_UP, up_callback, my_data); if (evas_alloc_error() != EVAS_ALLOC_ERROR_NONE) { fprintf(stderr, "ERROR: Callback registering failed! Abort!\n"); exit(-1); } evas_object_event_callback_add(object, EVAS_CALLBACK_MOUSE_DOWN, down_callback, my_data); if (evas_alloc_error() != EVAS_ALLOC_ERROR_NONE) { fprintf(stderr, "ERROR: Callback registering failed! Abort!\n"); exit(-1); }

void* evas_object_event_callback_del Evas_Object obj,
Evas_Callback_Type  type,
void(*  func)(void *data, Evas *e, Evas_Object *obj, void *event_info)
 

Delete a callback function from an object.

Parameters:
obj Object to remove a callback from
type The type of event that was triggering the callback
func The function that was to be called when the event was triggered
Returns:
The data pointer that was to be passed to the callback
This function removes the most recently added callback from the object obj which was triggered by the event type type and was calling the function func when triggered. If the removal is successful it will also return the data pointer that was passed to evas_object_event_callback_add() when the callback was added to the object. If not successful NULL will be returned.

Example:

extern Evas_Object *object; void *my_data; void up_callback(void *data, Evas *e, Evas_Object *obj, void *event_info); my_data = evas_object_event_callback_del(object, EVAS_CALLBACK_MOUSE_UP, up_callback);

Evas_Bool evas_object_focus_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_focus_set Evas_Object obj,
Evas_Bool  focus
 

To be documented.

FIXME: To be fixed.

void evas_object_geometry_get Evas_Object obj,
Evas_Coord *  x,
Evas_Coord *  y,
Evas_Coord *  w,
Evas_Coord *  h
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_gradient_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Angle evas_object_gradient_angle_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_gradient_angle_set Evas_Object obj,
Evas_Angle  angle
 

To be documented.

FIXME: To be fixed.

void evas_object_gradient_color_add Evas_Object obj,
int  r,
int  g,
int  b,
int  a,
int  distance
 

To be documented.

FIXME: To be fixed.

void evas_object_gradient_colors_clear Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_hide Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_image_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_image_alpha_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_image_alpha_set Evas_Object obj,
Evas_Bool  has_alpha
 

To be documented.

FIXME: To be fixed.

void evas_object_image_border_get Evas_Object obj,
int *  l,
int *  r,
int *  t,
int *  b
 

To be documented.

FIXME: To be fixed.

void evas_object_image_border_set Evas_Object obj,
int  l,
int  r,
int  t,
int  b
 

To be documented.

FIXME: To be fixed.

void evas_object_image_data_copy_set Evas_Object obj,
void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_image_data_get Evas_Object obj,
Evas_Bool  for_writing
 

To be documented.

FIXME: To be fixed.

void evas_object_image_data_set Evas_Object obj,
void *  data
 

To be documented.

FIXME: To be fixed.

void evas_object_image_data_update_add Evas_Object obj,
int  x,
int  y,
int  w,
int  h
 

To be documented.

FIXME: To be fixed.

void evas_object_image_file_get Evas_Object obj,
char **  file,
char **  key
 

To be documented.

FIXME: To be fixed.

void evas_object_image_file_set Evas_Object obj,
const char *  file,
const char *  key
 

To be documented.

FIXME: To be fixed.

void evas_object_image_fill_get Evas_Object obj,
Evas_Coord *  x,
Evas_Coord *  y,
Evas_Coord *  w,
Evas_Coord *  h
 

To be documented.

FIXME: To be fixed.

void evas_object_image_fill_set Evas_Object obj,
Evas_Coord  x,
Evas_Coord  y,
Evas_Coord  w,
Evas_Coord  h
 

To be documented.

FIXME: To be fixed.

int evas_object_image_load_error_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_image_pixels_dirty_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_image_pixels_dirty_set Evas_Object obj,
Evas_Bool  dirty
 

To be documented.

FIXME: To be fixed.

void evas_object_image_pixels_get_callback_set Evas_Object obj,
void(*  func)(void *data, Evas_Object *o),
void *  data
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_image_pixels_import Evas_Object obj,
Evas_Pixel_Import_Source pixels
 

To be documented.

FIXME: To be fixed.

void evas_object_image_reload Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_image_size_get Evas_Object obj,
int *  w,
int *  h
 

To be documented.

FIXME: To be fixed.

void evas_object_image_size_set Evas_Object obj,
int  w,
int  h
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_image_smooth_scale_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_image_smooth_scale_set Evas_Object obj,
Evas_Bool  smooth_scale
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_hide_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_hide_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_layer_set_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, int l),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_layer_set_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, int l)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_lower_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_lower_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_move_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Coord x, Evas_Coord y),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_move_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Coord x, Evas_Coord y)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_raise_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_raise_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_resize_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Coord w, Evas_Coord h),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_resize_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Coord w, Evas_Coord h)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_show_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_show_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_stack_above_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Object *above),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_stack_above_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Object *above)
 

To be documented.

FIXME: To be fixed.

void evas_object_intercept_stack_below_callback_add Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Object *below),
const void *  data
 

To be documented.

FIXME: To be fixed.

void* evas_object_intercept_stack_below_callback_del Evas_Object obj,
void(*  func)(void *data, Evas_Object *obj, Evas_Object *below)
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_key_grab Evas_Object obj,
const char *  keyname,
Evas_Modifier_Mask  modifiers,
Evas_Modifier_Mask  not_modifiers,
Evas_Bool  exclusive
 

To be documented.

FIXME: To be fixed.

void evas_object_key_ungrab Evas_Object obj,
const char *  keyname,
Evas_Modifier_Mask  modifiers,
Evas_Modifier_Mask  not_modifiers
 

To be documented.

FIXME: To be fixed.

int evas_object_layer_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_layer_set Evas_Object obj,
int  l
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_line_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_line_xy_get Evas_Object obj,
Evas_Coord *  x1,
Evas_Coord *  y1,
Evas_Coord *  x2,
Evas_Coord *  y2
 

To be documented.

FIXME: To be fixed.

void evas_object_line_xy_set Evas_Object obj,
Evas_Coord  x1,
Evas_Coord  y1,
Evas_Coord  x2,
Evas_Coord  y2
 

To be documented.

FIXME: To be fixed.

void evas_object_lower Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_move Evas_Object obj,
Evas_Coord  x,
Evas_Coord  y
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_name_find Evas e,
const char *  name
 

To be documented.

FIXME: To be fixed.

const char* evas_object_name_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_name_set Evas_Object obj,
const char *  name
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_pass_events_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_pass_events_set Evas_Object obj,
Evas_Bool  pass
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_polygon_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_polygon_point_add Evas_Object obj,
Evas_Coord  x,
Evas_Coord  y
 

To be documented.

FIXME: To be fixed.

void evas_object_polygon_points_clear Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_raise Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_rectangle_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_repeat_events_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_repeat_events_set Evas_Object obj,
Evas_Bool  repeat
 

To be documented.

FIXME: To be fixed.

void evas_object_resize Evas_Object obj,
Evas_Coord  w,
Evas_Coord  h
 

To be documented.

FIXME: To be fixed.

void evas_object_show Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_smart_add Evas e,
Evas_Smart s
 

To be documented.

FIXME: To be fixed.

void evas_object_smart_callback_add Evas_Object obj,
const char *  event,
void(*  func)(void *data, Evas_Object *obj, void *event_info),
const void *  data
 

To be documented.

FIXME: To be fixed.

void evas_object_smart_callback_call Evas_Object obj,
const char *  event,
void *  event_info
 

To be documented.

FIXME: To be fixed.

void* evas_object_smart_callback_del Evas_Object obj,
const char *  event,
void(*  func)(void *data, Evas_Object *obj, void *event_info)
 

To be documented.

FIXME: To be fixed.

void* evas_object_smart_data_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_smart_data_set Evas_Object obj,
void *  data
 

To be documented.

FIXME: To be fixed.

void evas_object_smart_member_add Evas_Object obj,
Evas_Object smart_obj
 

To be documented.

FIXME: To be fixed.

void evas_object_smart_member_del Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Smart* evas_object_smart_smart_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_stack_above Evas_Object obj,
Evas_Object above
 

To be documented.

FIXME: To be fixed.

void evas_object_stack_below Evas_Object obj,
Evas_Object below
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_text_add Evas e  ) 
 

To be documented.

FIXME: To be fixed.

evas_font_load.c

Evas_Coord evas_object_text_ascent_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

int evas_object_text_char_coords_get Evas_Object obj,
Evas_Coord  x,
Evas_Coord  y,
Evas_Coord *  cx,
Evas_Coord *  cy,
Evas_Coord *  cw,
Evas_Coord *  ch
 

To be documented.

FIXME: To be fixed.

int evas_object_text_char_pos_get Evas_Object obj,
int  pos,
Evas_Coord *  cx,
Evas_Coord *  cy,
Evas_Coord *  cw,
Evas_Coord *  ch
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_descent_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_text_font_get Evas_Object obj,
char **  font,
Evas_Font_Size *  size
 

To be documented.

FIXME: To be fixed.

void evas_object_text_font_set Evas_Object obj,
const char *  font,
Evas_Font_Size  size
 

To be documented.

FIXME: To be fixed.

const char* evas_object_text_font_source_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_text_font_source_set Evas_Object obj,
const char *  font_source
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_horiz_advance_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_inset_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_max_ascent_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_max_descent_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

const char* evas_object_text_text_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

void evas_object_text_text_set Evas_Object obj,
const char *  text
 

To be documented.

FIXME: To be fixed.

Evas_Coord evas_object_text_vert_advance_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_top_at_pointer_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_top_at_xy_get Evas e,
Evas_Coord  x,
Evas_Coord  y,
Evas_Bool  include_pass_events_objects,
Evas_Bool  include_hidden_objects
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_top_get Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Object* evas_object_top_in_rectangle_get Evas e,
Evas_Coord  x,
Evas_Coord  y,
Evas_Coord  w,
Evas_Coord  h,
Evas_Bool  include_pass_events_objects,
Evas_Bool  include_hidden_objects
 

To be documented.

FIXME: To be fixed.

const char* evas_object_type_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Bool evas_object_visible_get Evas_Object obj  ) 
 

To be documented.

FIXME: To be fixed.

Evas_List* evas_objects_at_xy_get Evas e,
Evas_Coord  x,
Evas_Coord  y,
Evas_Bool  include_pass_events_objects,
Evas_Bool  include_hidden_objects
 

To be documented.

FIXME: To be fixed.

Evas_List* evas_objects_in_rectangle_get Evas e,
Evas_Coord  x,
Evas_Coord  y,
Evas_Coord  w,
Evas_Coord  h,
Evas_Bool  include_pass_events_objects,
Evas_Bool  include_hidden_objects
 

To be documented.

FIXME: To be fixed.

void evas_obscured_clear Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_obscured_rectangle_add Evas e,
int  x,
int  y,
int  w,
int  h
 

To be documented.

FIXME: To be fixed.

int evas_output_method_get Evas e  ) 
 

Get the output method (engine) for the Evas.

Parameters:
e The pointer to the Evas Canvas
Returns:
A numeric engine value
This function returns the rendering engine currently used by the given Evas Canvas. On success the numeric value of the rendering engine used by the Canvas is returned. On failure 0 is returned.

Example:

extern Evas *evas; int engine_id; engine_id = evas_output_method_get(evas);

void evas_output_method_set Evas e,
int  render_method
 

Set the output method (engine) for the Evas.

Parameters:
e The pointer to the Evas Canvas have its engine set
render_method The numeric engine value to use.
This call sets up which engine an Evas Canvas is to use. This can only be done once and following calls of this function will do nothing. The render_method numeric value can be obtained using the evas_render_method_lookup() call.

Example:

int engine_id; Evas *evas; evas = evas_new(); engine_id = evas_render_method_lookup("software_x11"); evas_output_method_set(evas, engine_id);

void evas_output_size_get Evas e,
int *  w,
int *  h
 

Get the render engine's output size in output units.

Parameters:
e The pointer to the Evas Canvas
w The pointer to a width variable to be filled in
h The pointer to a height variable to be filled in
Calling this function writes the current canvas output size values into the variables pointed to by w and h. On success the variables have the output size values written to them in output units. If either w or h is NULL, it will not be written to. If e is invalid, the results are undefined.

Example:

extern Evas *evas; int width, height; evas_output_size_get(evas, &width, &height);

void evas_output_size_set Evas e,
int  w,
int  h
 

Set the render engine's output size in output units.

Parameters:
e The pointer to the Evas Canvas
w The width in output units
h The height in output units
This function sets the output display size for the Evas Canvas indicated (for most engines these values are in pixels). The Canvas will render to a rectangle of this size on the output target once this call is called. This is independent of the viewport (view into the canvas world) and will simply stretch the viewport to fill the rectangle indicated by this call.

Example:

extern Evas *evas; evas_output_size_set(evas, 640, 480);

void evas_output_viewport_get Evas e,
Evas_Coord *  x,
Evas_Coord *  y,
Evas_Coord *  w,
Evas_Coord *  h
 

Get the render engine's output viewport co-ordinates in canvas units.

Parameters:
e The pointer to the Evas Canvas
x The pointer to a x variable to be filled in
y The pointer to a y variable to be filled in
w The pointer to a width variable to be filled in
h The pointer to a height variable to be filled in
Calling this function writes the current canvas output viewport size and location values into the variables pointed to by x, y, w and h. On success the variables have the output location and size values written to them in canvas units. Any of x, y, w or h that are NULL will not be written to. If e is invalid, the results are undefined.

Example:

extern Evas *evas; Evas_Coord x, y, width, height; evas_output_viewport_get(evas, &x, &y, &w, &h);

void evas_output_viewport_set Evas e,
Evas_Coord  x,
Evas_Coord  y,
Evas_Coord  w,
Evas_Coord  h
 

Set the render engine's output viewport in canvas units.

Parameters:
e The pointer to the Evas Canvas
x The top-left corner x value of the viewport
y The top-left corner y value of the viewport
w The width of the viewport
h The height of the viewport
This function sets the viewport (in canvas co-ordinate space) that will be visible in the canvas ouput. The width and height of the viewport must both be strictly greater than 0. The rectangle described by the co-ordinates is the rectangular region of the canvas co-ordinate space that is visibly mapped and stretched to fill the output target of the canvas when rendering is performed.

Co-ordinates do not have to map 1-to-1, but it is generally advised for ease of use that canvas co-ordinates match output target units (e.g. pixels).

Example:

extern Evas *evas; evas_output_viewport_set(evas, 0, 0, 640, 480);

int evas_pointer_button_down_mask_get Evas e  ) 
 

Returns a bitmask with the mouse buttons currently pressed, set to 1.

Parameters:
e The pointer to the Evas Canvas
Returns:
A bitmask of the currently depressed buttons on the cavas
Calling this function will return a 32-bit integer with the appropriate bits set to 1 that correspond to a mouse button being depressed. This limits Evas to a mouse devices with a maximum of 32 buttons, but that is generally in excess of any host system's pointing device abilities.

A canvas by default begins with no mouse buttons being pressed and only calls to evas_event_feed_mouse_down(), evas_event_feed_mouse_down_data(), evas_event_feed_mouse_up() and evas_event_feed_mouse_up_data() will alter that.

The least significant bit corresponds to the first mouse button (button 1) and the most significant bit corresponds to the last mouse button (button 32).

If e is not a valid canvas, the return value is undefined.

Example:

extern Evas *evas; int button_mask, i; button_mask = evas_pointer_button_down_mask_get(evas); printf("Buttons currently pressed:\n"); for (i = 0; i < 32; i++) { if ((button_mask & (1 << i)) != 0) printf("Button %i\n", i + 1); }

void evas_pointer_canvas_xy_get Evas e,
Evas_Coord *  x,
Evas_Coord *  y
 

This function returns the current known pointer co-ordinates.

Parameters:
e The pointer to the Evas Canvas
x The pointer to a Evas_Coord to be filled in
y The pointer to a Evas_Coord to be filled in
This function returns the current known canvas unit co-ordinates of the mouse pointer and sets the contents of the Evas_Coords pointed to by x and y to contain these co-ordinates. If e is not a valid canvas the results of this function are undefined.

Example:

extern Evas *evas; Evas_Coord mouse_x, mouse_y; evas_pointer_output_xy_get(evas, &mouse_x, &mouse_y); printf("Mouse is at canvas position %f, %f\n", mouse_x, mouse_y);

Evas_Bool evas_pointer_inside_get Evas e  ) 
 

Returns whether the mouse pointer is logically inside the canvas.

Parameters:
e The pointer to the Evas Canvas
Returns:
An integer that is 1 if the mouse is inside the canvas, 0 otherwise
When this function is called it will return a value of either 0 or 1, depending on if evas_event_feed_mouse_in(), evas_event_feed_mouse_in_data(), or evas_event_feed_mouse_out(), evas_event_feed_mouse_out_data() have been called to feed in a mouse enter event into the canvas.

A return value of 1 indicates the mouse is logically inside the canvas, and 0 implies it is logically outside the canvas.

A canvas begins with the mouse being assumed outside (0).

If e is not a valid canvas, the return value is undefined.

Example:

extern Evas *evas; if (evas_pointer_inside_get(evas)) printf("Mouse is in!\n"); else printf("Mouse is out!\n");

void evas_pointer_output_xy_get Evas e,
int *  x,
int *  y
 

This function returns the current known pointer co-ordinates.

Parameters:
e The pointer to the Evas Canvas
x The pointer to an integer to be filled in
y The pointer to an integer to be filled in
This function returns the current known screen/output co-ordinates of the mouse pointer and sets the contents of the integers pointed to by x and y to contain these co-ordinates. If e is not a valid canvas the results of this function are undefined.

Example:

extern Evas *evas; int mouse_x, mouse_y; evas_pointer_output_xy_get(evas, &mouse_x, &mouse_y); printf("Mouse is at screen position %i, %i\n", mouse_x, mouse_y);

void evas_render Evas e  ) 
 

To be documented.

FIXME: To be fixed.

Evas_List* evas_render_method_list void   ) 
 

List all the rendering engines compiled into the copy of the Evas library.

Returns:
A linked list whose data members are C strings of engine names
Calling this will return a handle (pointer) to an Evas linked list. Each node in the linked list will have the data pointer be a (char *) pointer to the string name of the rendering engine available. The strings should never be modified, neither should the list be modified. This list should be cleaned up as soon as the program no longer needs it using evas_render_method_list_free(). If no engines are available from Evas, NULL will be returned.

Example:

Evas_List *engine_list, *l; engine_list = evas_render_method_list(); if (!engine_list) { fprintf(stderr, "ERROR: Evas supports no engines! Exit.\n"); exit(-1); } printf("Availible Evas Engines:\n"); for (l = engine_list; l; l = l->next) { char *engine_name; engine_name = l->data; printf("%s\n", engine_name); } evas_render_method_list_free(engine_list);

void evas_render_method_list_free Evas_List list  ) 
 

This function should be called to free a list of engine names.

Parameters:
list The Evas_List base pointer for the engine list to be freed
When this function is called it will free the engine list passed in as list. The list should only be a list of engines generated by calling evas_render_method_list(). If list is NULL, nothing will happen.

Example:

Evas_List *engine_list, *l; engine_list = evas_render_method_list(); if (!engine_list) { fprintf(stderr, "ERROR: Evas supports no engines! Exit.\n"); exit(-1); } printf("Availible Evas Engines:\n"); for (l = engine_list; l; l = l->next) { char *engine_name; engine_name = l->data; printf("%s\n", engine_name); } evas_render_method_list_free(engine_list);

int evas_render_method_lookup const char *  name  ) 
 

Look up a numeric ID from a string name of a rendering engine.

Parameters:
name The string name of an engine
Returns:
A numeric (opaque) ID for the rendering engine
This function looks up a numeric return value for the named engine in the string name. This is a normal C string, NUL byte terminated. The name is case sensitive. If the rendering engine is available, a numeric ID for that engine is returned that is not 0. If the engine is not available, 0 is returned, indicating an invalid engine.

The programmer should NEVER rely on the numeric ID of an engine unless it is returned by this function. Programs should NOT be written accessing render method ID's directly, without first obtaining it from this function.

Example:

int engine_id; Evas *evas; evas = evas_new(); if (!evas) { fprintf(stderr, "ERROR: Canvas creation failed. Fatal error.\n"); exit(-1); } engine_id = evas_render_method_lookup("software_x11"); if (!engine_id) { fprintf(stderr, "ERROR: Requested rendering engine is absent.\n"); exit(-1); } evas_output_method_set(evas, engine_id);

Evas_List* evas_render_updates Evas e  ) 
 

To be documented.

FIXME: To be fixed.

void evas_render_updates_free Evas_List updates  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Smart_Class* evas_smart_class_get Evas_Smart s  ) 
 

To be documented.

FIXME: To be fixed.

Evas_Smart* evas_smart_class_new Evas_Smart_Class sc  ) 
 

To be documented.

FIXME: To be fixed.

void* evas_smart_data_get Evas_Smart s  ) 
 

To be documented.

FIXME: To be fixed.

void evas_smart_free Evas_Smart s  ) 
 

To be documented.

FIXME: To be fixed.

int evas_string_char_next_get const char *  str,
int  pos,
int *  decoded
 

To be documented.

FIXME: To be fixed.

int evas_string_char_prev_get const char *  str,
int  pos,
int *  decoded
 

To be documented.

FIXME: To be fixed.