Tizen Native API  4.0

Drawing canvas.

Typedefs

typedef unsigned long long Evas_Modifier_Mask
typedef int Evas_Coord
typedef struct _Evas_Map Evas_Map
 An opaque handle to map points.
typedef struct _Evas_Modifier Evas_Modifier
typedef struct _Evas_Lock Evas_Lock
typedef struct _Evas_Engine_Info Evas_Engine_Info
typedef struct _Evas_Axis Evas_Axis
typedef double Evas_Real
typedef struct _Evas_Version Evas_Version

Typedef Documentation

typedef struct _Evas_Axis Evas_Axis

Details for a single device axis state

Since (EFL) :
1.13
typedef int Evas_Coord

A type for coordinates

A generic Evas Engine information structure

typedef struct _Evas_Lock Evas_Lock

An opaque type containing information on which lock keys are registered in an Evas canvas

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_Modifier Evas_Modifier

An opaque type containing information on which modifier keys are registered in an Evas canvas

typedef unsigned long long Evas_Modifier_Mask

An Evas modifier mask type

typedef double Evas_Real

A type for floating value

This is the Evas version information structure that can be used at runtime to detect which version of evas is being used and adapt appropriately as follows for example:

 #if defined(EVAS_VERSION_MAJOR) && (EVAS_VERSION_MAJOR >= 1) && defined(EVAS_VERSION_MINOR) && (EVAS_VERSION_MINOR > 0)
 printf("Evas version: %i.%i.%i\n",
        evas_version->major,
        evas_version->minor,
        evas_version->micro);
 if (evas_version->revision > 0)
   {
     printf("  Built from Git revision # %i\n", evas_version->revision);
   }
 #endif

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

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

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 just before rendering is updated on the canvas target

EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN 

Called just after rendering is updated on the canvas target

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 (EFL) :
1.2
EVAS_CALLBACK_IMAGE_RESIZE 

Called just after rendering stops on the canvas target

Since (EFL) :
1.2
EVAS_CALLBACK_DEVICE_CHANGED 

Image size is changed

Since (EFL) :
1.8
EVAS_CALLBACK_AXIS_UPDATE 

Devices added, removed or changed on canvas

Since (EFL) :
1.8
EVAS_CALLBACK_CANVAS_VIEWPORT_RESIZE 

Input device changed value on some axis

Since (EFL) :
1.13
EVAS_CALLBACK_LAST 

Canvas viewport resized

Since (EFL) :
1.15 kept as last element/sentinel -- not really an event

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. In case that user need any processing for canceling a touch event, user can use this EVAS_EVENT_FLAG_ON_HOLD flag

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 (EFL) :
1.2

How the object should be rendered to output.

Enumerator:
EVAS_RENDER_BLEND_REL 

default op: d = d*(1-sa) + s

EVAS_RENDER_COPY 

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

EVAS_RENDER_COPY_REL 

d = s

EVAS_RENDER_ADD 

d = s*da

EVAS_RENDER_ADD_REL 

d = d + s

EVAS_RENDER_SUB 

d = d + s*da

EVAS_RENDER_SUB_REL 

d = d - s

EVAS_RENDER_TINT 

d = d - s*da

EVAS_RENDER_TINT_REL 

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

EVAS_RENDER_MASK 

d = d*(1 - sa + s)

EVAS_RENDER_MUL 

d = d*sa

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

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