Modules | Typedefs | Enumerations
Evas

Drawing canvas. More...

Modules

 Top Level Functions
 Functions that affect Evas as a whole.
 
 Canvas Functions
 Low level Evas canvas functions.
 
 Generic Object Functions
 Functions that manipulate generic Evas objects.
 
 Specific Object Functions
 Functions that work on specific objects.
 
 Smart Functions
 Functions that deal with Evas_Smart structs, creating definition (classes) of objects that will have customized behavior for methods like evas_object_move(), evas_object_resize(), evas_object_clip_set() and others.
 
 Smart Object Functions
 Functions dealing with Evas smart objects (instances).
 
 Shared Image Cache Server
 Evas has an (optional) module which provides client-server infrastructure to share bitmaps across multiple processes, saving data and processing power.
 
 General Utilities
 Some functions that are handy but are not specific of canvas or objects.
 
 Evas 3D Extensions
 Evas extension to support 3D rendering.
 
 Evas_Object_Vg
 Evas_Object_Vg is the scene graph for managing vector graphics objects.
 

Typedefs

typedef unsigned long long Evas_Modifier_Mask
 An Evas modifier mask type.
 
typedef int Evas_Coord
 A type for coordinates.
 
typedef struct _Evas_Map Evas_Map
 An opaque handle to map points. More...
 
typedef struct _Evas_Modifier Evas_Modifier
 An opaque type containing information on which modifier keys are registered in an Evas canvas.
 
typedef struct _Evas_Lock Evas_Lock
 An opaque type containing information on which lock keys are registered in an Evas canvas.
 
typedef struct _Evas_Engine_Info Evas_Engine_Info
 A generic Evas Engine information structure.
 
typedef struct _Evas_Axis Evas_Axis
 Details for a single device axis state. More...
 
typedef double Evas_Real
 A type for floating value.
 

Enumerations

enum  Evas_Aspect_Control {
  EVAS_ASPECT_CONTROL_NONE = 0,
  EVAS_ASPECT_CONTROL_NEITHER = 1,
  EVAS_ASPECT_CONTROL_HORIZONTAL = 2,
  EVAS_ASPECT_CONTROL_VERTICAL = 3,
  EVAS_ASPECT_CONTROL_BOTH = 4
}
 Aspect types/policies for scaling size hints, used for evas_object_size_hint_aspect_set() More...
 
enum  Evas_Render_Op {
  EVAS_RENDER_BLEND = 0,
  EVAS_RENDER_BLEND_REL = 1,
  EVAS_RENDER_COPY = 2,
  EVAS_RENDER_COPY_REL = 3,
  EVAS_RENDER_ADD = 4,
  EVAS_RENDER_ADD_REL = 5,
  EVAS_RENDER_SUB = 6,
  EVAS_RENDER_SUB_REL = 7,
  EVAS_RENDER_TINT = 8,
  EVAS_RENDER_TINT_REL = 9,
  EVAS_RENDER_MASK = 10,
  EVAS_RENDER_MUL = 11
}
 How the object should be rendered to output. More...
 
enum  Evas_Object_Pointer_Mode {
  EVAS_OBJECT_POINTER_MODE_AUTOGRAB = 0,
  EVAS_OBJECT_POINTER_MODE_NOGRAB,
  EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN
}
 How the mouse pointer should be handled by Evas. More...
 
enum  Evas_Text_Style_Type {
  EVAS_TEXT_STYLE_PLAIN = 0,
  EVAS_TEXT_STYLE_SHADOW,
  EVAS_TEXT_STYLE_OUTLINE,
  EVAS_TEXT_STYLE_SOFT_OUTLINE,
  EVAS_TEXT_STYLE_GLOW,
  EVAS_TEXT_STYLE_OUTLINE_SHADOW,
  EVAS_TEXT_STYLE_FAR_SHADOW,
  EVAS_TEXT_STYLE_OUTLINE_SOFT_SHADOW,
  EVAS_TEXT_STYLE_SOFT_SHADOW,
  EVAS_TEXT_STYLE_FAR_SOFT_SHADOW,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM_RIGHT = 0,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM = 16,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM_LEFT = 32,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_LEFT = 48,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP_LEFT = 64,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP = 80,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP_RIGHT = 96,
  EVAS_TEXT_STYLE_SHADOW_DIRECTION_RIGHT = 112
}
 Types of styles to be applied on text objects. More...
 
enum  Evas_Button_Flags {
  EVAS_BUTTON_NONE = 0,
  EVAS_BUTTON_DOUBLE_CLICK = 1,
  EVAS_BUTTON_TRIPLE_CLICK = 2
}
 Flags for Mouse Button events. More...
 
enum  Evas_Event_Flags {
  EVAS_EVENT_FLAG_NONE = 0,
  EVAS_EVENT_FLAG_ON_HOLD = 1,
  EVAS_EVENT_FLAG_ON_SCROLL = 2
}
 Flags for Events. More...
 
enum  Evas_Touch_Point_State {
  EVAS_TOUCH_POINT_DOWN = 0,
  EVAS_TOUCH_POINT_UP,
  EVAS_TOUCH_POINT_MOVE,
  EVAS_TOUCH_POINT_STILL,
  EVAS_TOUCH_POINT_CANCEL
}
 State of Evas_Coord_Touch_Point. More...
 
enum  Evas_Callback_Type {
  EVAS_CALLBACK_MOUSE_IN = 0,
  EVAS_CALLBACK_MOUSE_OUT,
  EVAS_CALLBACK_MOUSE_DOWN,
  EVAS_CALLBACK_MOUSE_UP,
  EVAS_CALLBACK_MOUSE_MOVE,
  EVAS_CALLBACK_MOUSE_WHEEL,
  EVAS_CALLBACK_MULTI_DOWN,
  EVAS_CALLBACK_MULTI_UP,
  EVAS_CALLBACK_MULTI_MOVE,
  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,
  EVAS_CALLBACK_DEL,
  EVAS_CALLBACK_HOLD,
  EVAS_CALLBACK_CHANGED_SIZE_HINTS,
  EVAS_CALLBACK_IMAGE_PRELOADED,
  EVAS_CALLBACK_CANVAS_FOCUS_IN,
  EVAS_CALLBACK_CANVAS_FOCUS_OUT,
  EVAS_CALLBACK_RENDER_FLUSH_PRE,
  EVAS_CALLBACK_RENDER_FLUSH_POST,
  EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN,
  EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_OUT,
  EVAS_CALLBACK_IMAGE_UNLOADED,
  EVAS_CALLBACK_RENDER_PRE,
  EVAS_CALLBACK_RENDER_POST,
  EVAS_CALLBACK_IMAGE_RESIZE,
  EVAS_CALLBACK_DEVICE_CHANGED,
  EVAS_CALLBACK_AXIS_UPDATE,
  EVAS_CALLBACK_CANVAS_VIEWPORT_RESIZE,
  EVAS_CALLBACK_LAST
}
 Identifier of callbacks to be set for Evas canvases or Evas objects. More...
 

Detailed Description

Drawing canvas.

Typedef Documentation

typedef struct _Evas_Map Evas_Map

An opaque handle to map points.

See evas_map_new, evas_map_free, evas_map_dup.

typedef struct _Evas_Axis Evas_Axis

Details for a single device axis state.

Since
1.13

Enumeration Type Documentation

Aspect types/policies for scaling size hints, used for evas_object_size_hint_aspect_set()

Enumerator
EVAS_ASPECT_CONTROL_NEITHER 

Preference on scaling unset.

EVAS_ASPECT_CONTROL_HORIZONTAL 

Same effect as unset preference on scaling.

EVAS_ASPECT_CONTROL_VERTICAL 

Use all horizontal container space to place an object, using the given aspect.

EVAS_ASPECT_CONTROL_BOTH 

Use all vertical container space to place an object, using the given aspect.

How the object should be rendered to output.

Enumerator
EVAS_RENDER_BLEND_REL 

Default render operation: d = d*(1-sa) + s.

The object will be merged onto the bottom objects using simple alpha compositing (a over b).

EVAS_RENDER_COPY 

DEPRECATED.

d = d*(1 - sa) + s*da

EVAS_RENDER_COPY_REL 

Copy mode, d = s.

The object's pixels will replace everything that was below, effectively hiding them.

EVAS_RENDER_ADD 

DEPRECATED.

d = s*da

EVAS_RENDER_ADD_REL 

DEPRECATED.

d = d + s

EVAS_RENDER_SUB 

DEPRECATED.

d = d + s*da

EVAS_RENDER_SUB_REL 

DEPRECATED.

d = d - s

EVAS_RENDER_TINT 

DEPRECATED.

d = d - s*da

EVAS_RENDER_TINT_REL 

DEPRECATED.

d = d*s + d*(1 - sa) + s*(1 - da)

EVAS_RENDER_MASK 

DEPRECATED.

d = d*(1 - sa + s)

EVAS_RENDER_MUL 

DEPRECATED.

d = d*sa. For masking support, please use Evas.Object.clip_set or EDC "clip_to" instead.

How the mouse pointer should be handled by Evas.

In the mode #EVAS_OBJECT_POINTER_MODE_AUTOGRAB, when a mouse button is pressed down over an object and held, with the mouse pointer being moved outside of it, the pointer still behaves as being bound to that object, albeit out of its drawing region. When the button is released, the event will be fed to the object, that may check if the final position is over it or not and do something about it.

In the mode EVAS_OBJECT_POINTER_MODE_NOGRAB, the pointer will always be bound to the object right below it.

Enumerator
EVAS_OBJECT_POINTER_MODE_NOGRAB 

default, X11-like

EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN 

pointer always bound to the object right below it

useful on object with "repeat events" enabled, where mouse/touch up and down events WONT be repeated to objects and these objects wont be auto-grabbed.

Since
1.2

Types of styles to be applied on text objects.

The EVAS_TEXT_STYLE_SHADOW_DIRECTION_* ones are to be ORed together with others imposing shadow, to change shadow's direction

Enumerator
EVAS_TEXT_STYLE_SHADOW 

plain, standard text

EVAS_TEXT_STYLE_OUTLINE 

text with shadow underneath

EVAS_TEXT_STYLE_SOFT_OUTLINE 

text with an outline

EVAS_TEXT_STYLE_GLOW 

text with a soft outline

EVAS_TEXT_STYLE_OUTLINE_SHADOW 

text with a glow effect

EVAS_TEXT_STYLE_FAR_SHADOW 

text with both outline and shadow effects

EVAS_TEXT_STYLE_OUTLINE_SOFT_SHADOW 

text with (far) shadow underneath

EVAS_TEXT_STYLE_SOFT_SHADOW 

text with outline and soft shadow effects combined

EVAS_TEXT_STYLE_FAR_SOFT_SHADOW 

text with (soft) shadow underneath

EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM_RIGHT 

text with (far soft) shadow underneath

EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM 

shadow growing to bottom right

EVAS_TEXT_STYLE_SHADOW_DIRECTION_BOTTOM_LEFT 

shadow growing to the bottom

EVAS_TEXT_STYLE_SHADOW_DIRECTION_LEFT 

shadow growing to bottom left

EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP_LEFT 

shadow growing to the left

EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP 

shadow growing to top left

EVAS_TEXT_STYLE_SHADOW_DIRECTION_TOP_RIGHT 

shadow growing to the top

EVAS_TEXT_STYLE_SHADOW_DIRECTION_RIGHT 

shadow growing to top right

Flags for Mouse Button events.

Enumerator
EVAS_BUTTON_DOUBLE_CLICK 

No extra mouse button data.

EVAS_BUTTON_TRIPLE_CLICK 

This mouse button press was the 2nd press of a double click.

Flags for Events.

Enumerator
EVAS_EVENT_FLAG_ON_HOLD 

No fancy flags set.

EVAS_EVENT_FLAG_ON_SCROLL 

This event is being delivered but should be put "on hold" until the on hold flag is unset.

The event should be used for informational purposes and maybe some indications visually, but not actually perform anything

State of Evas_Coord_Touch_Point.

Enumerator
EVAS_TOUCH_POINT_UP 

Touch point is pressed down.

EVAS_TOUCH_POINT_MOVE 

Touch point is released.

EVAS_TOUCH_POINT_STILL 

Touch point is moved.

EVAS_TOUCH_POINT_CANCEL 

Touch point is not moved after pressed.

Touch point is cancelled

Identifier of callbacks to be set for Evas canvases or Evas objects.

Enumerator
EVAS_CALLBACK_MOUSE_OUT 

Mouse In Event.

EVAS_CALLBACK_MOUSE_DOWN 

Mouse Out Event.

EVAS_CALLBACK_MOUSE_UP 

Mouse Button Down Event.

EVAS_CALLBACK_MOUSE_MOVE 

Mouse Button Up Event.

EVAS_CALLBACK_MOUSE_WHEEL 

Mouse Move Event.

EVAS_CALLBACK_MULTI_DOWN 

Mouse Wheel Event.

EVAS_CALLBACK_MULTI_UP 

Multi-touch Down Event.

EVAS_CALLBACK_MULTI_MOVE 

Multi-touch Up Event.

EVAS_CALLBACK_FREE 

Multi-touch Move Event.

EVAS_CALLBACK_KEY_DOWN 

Object Being Freed (Called after Del)

EVAS_CALLBACK_KEY_UP 

Key Press Event.

EVAS_CALLBACK_FOCUS_IN 

Key Release Event.

EVAS_CALLBACK_FOCUS_OUT 

Focus In Event.

EVAS_CALLBACK_SHOW 

Focus Out Event.

EVAS_CALLBACK_HIDE 

Show Event.

EVAS_CALLBACK_MOVE 

Hide Event.

EVAS_CALLBACK_RESIZE 

Move Event.

EVAS_CALLBACK_RESTACK 

Resize Event.

EVAS_CALLBACK_DEL 

Restack Event.

EVAS_CALLBACK_HOLD 

Object Being Deleted (called before Free)

EVAS_CALLBACK_CHANGED_SIZE_HINTS 

Events go on/off hold.

EVAS_CALLBACK_IMAGE_PRELOADED 

Size hints changed event.

EVAS_CALLBACK_CANVAS_FOCUS_IN 

Image has been preloaded.

EVAS_CALLBACK_CANVAS_FOCUS_OUT 

Canvas got focus as a whole.

EVAS_CALLBACK_RENDER_FLUSH_PRE 

Canvas lost focus as a whole.

EVAS_CALLBACK_RENDER_FLUSH_POST 

Called after render update regions have been calculated, but only if update regions exist.

EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN 

Called after render update regions have been sent to the display server, but only if update regions existed for the most recent frame.

EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_OUT 

Canvas object got focus.

EVAS_CALLBACK_IMAGE_UNLOADED 

Canvas object lost focus.

EVAS_CALLBACK_RENDER_PRE 

Image data has been unloaded (by some mechanism in Evas that throw out original image data)

EVAS_CALLBACK_RENDER_POST 

Called just before rendering starts on the canvas target.

Since
1.2
EVAS_CALLBACK_IMAGE_RESIZE 

Called just after rendering stops on the canvas target.

Since
1.2
EVAS_CALLBACK_DEVICE_CHANGED 

Image size is changed.

Since
1.8
EVAS_CALLBACK_AXIS_UPDATE 

Devices added, removed or changed on canvas.

Since
1.8
EVAS_CALLBACK_CANVAS_VIEWPORT_RESIZE 

Input device changed value on some axis.

Since
1.13
EVAS_CALLBACK_LAST 

Canvas viewport resized.

Since
1.15 kept as last element/sentinel – not really an event