Modules | Typedefs | Functions
Canvas Functions

Low level Evas canvas functions. More...

Modules

 Render Engine Functions
 Functions that are used to set the render engine for a given function, and then get that engine working.
 
 Coordinate Mapping Functions
 Functions that are used to map coordinates from the canvas to the screen or the screen to the canvas.
 
 Output and Viewport Resizing Functions
 Functions that set and retrieve the output and viewport size of an evas.
 
 Canvas Events
 Functions relating to canvas events, which are mainly reports on its internal states changing (an object got focused, the rendering is updated, etc).
 
 Image Functions
 Functions that deals with images at canvas level.
 
 Font Functions
 Functions that deals with fonts.
 
 Key Input Functions
 Functions which feed key events to the canvas.
 
 Touch Point List Functions
 Functions to get information of touched points in the Evas.
 
 Rendering GL on Evas
 Functions that are used to do OpenGL rendering on Evas.
 

Typedefs

typedef Eo Evas
 An opaque handle to an Evas canvas. More...
 
typedef struct _Evas_Public_Data Evas_Public_Data
 Public data for an Evas.
 

Functions

void evas_render_updates_free (Eina_List *updates)
 Free the rectangles returned by evas_render_updates(). More...
 
Evasevas_new (void)
 Creates a new empty evas. More...
 
void evas_free (Evas *e)
 Frees the given evas and any objects created on it. More...
 

Detailed Description

Low level Evas canvas functions.

Sub groups will present more high level ones, though.

Most of these functions deal with low level Evas actions, like:

Most users will be using Evas by means of the Ecore_Evas wrapper, which deals with all the above mentioned issues automatically for them. Thus, you'll be looking at this section only if you're building low level stuff.

The groups within present you functions that deal with the canvas directly, too, and not yet with its objects. They are the functions you need to use at a minimum to get a working canvas.

Some of the functions in this group are exemplified here.

Typedef Documentation

An opaque handle to an Evas canvas.

See also
evas_new()
evas_free()

Function Documentation

void evas_render_updates_free ( Eina_List updates)

Free the rectangles returned by evas_render_updates().

Parameters
updatesThe list of updated rectangles of the canvas.

This function removes the region from the render updates list. It makes the region doesn't be render updated anymore.

See also
evas_render_updates() for an example

References EINA_LIST_FREE, and eina_rectangle_free().

Evas* evas_new ( void  )

Creates a new empty evas.

Note that before you can use the evas, you will to at a minimum:

  • Set its render method with evas_output_method_set .
  • Set its viewport size with evas_output_viewport_set .
  • Set its size of the canvas with evas_output_size_set .
  • Ensure that the render engine is given the correct settings with evas_engine_info_set .

This function should only fail if the memory allocation fails

Note
this function is very low level. Instead of using it directly, consider using the high level functions in Ecore_Evas wrapper/helper set of functions such as ecore_evas_new(). See Ecore.
Attention
it is recommended that one calls evas_init() before creating new canvas.
Returns
A new uninitialised Evas canvas on success. Otherwise, NULL.

Referenced by ecore_evas_buffer_allocfunc_new(), ecore_evas_ews_new(), and ecore_evas_object_image_new().

void evas_free ( Evas e)

Frees the given evas and any objects created on it.

Any objects with 'free' callbacks will have those callbacks called in this function.

Parameters
eThe given evas.