Touch Point List Functions

Functions to get information of touched points in the Evas. More...

Functions

unsigned int evas_touch_point_list_count (Evas *e)
 Get the number of touched point in the evas.
void evas_touch_point_list_nth_xy_get (Evas *e, unsigned int n, Evas_Coord *x, Evas_Coord *y)
 This function returns the nth touch point's co-ordinates.
int evas_touch_point_list_nth_id_get (Evas *e, unsigned int n)
 This function returns the id of nth touch point.
Evas_Touch_Point_State evas_touch_point_list_nth_state_get (Evas *e, unsigned int n)
 This function returns the state of nth touch point.

Detailed Description

Functions to get information of touched points in the Evas.

Evas maintains list of touched points on the canvas. Each point has its co-ordinates, id and state. You can get the number of touched points and information of each point using evas_touch_point_list functions.


Function Documentation

unsigned int evas_touch_point_list_count ( Evas e)

Get the number of touched point in the evas.

Parameters:
eThe pointer to the Evas canvas.
Returns:
The number of touched point on the evas.

New touched point is added to the list whenever touching the evas and point is removed whenever removing touched point from the evas.

Example:

 extern Evas *evas;
 int count;

 count = evas_touch_point_list_count(evas);
 printf("The count of touch points: %i\n", count);
See also:
evas_touch_point_list_nth_xy_get()
evas_touch_point_list_nth_id_get()
evas_touch_point_list_nth_state_get()
int evas_touch_point_list_nth_id_get ( Evas e,
unsigned int  n 
)

This function returns the id of nth touch point.

Parameters:
eThe pointer to the Evas canvas.
nThe number of the touched point (0 being the first).
Returns:
id of nth touch point, if the call succeeded, -1 otherwise.

The point which comes from Mouse Event has id 0 and The point which comes from Multi Event has id that is same as Multi Event's device id.

Example:

 extern Evas *evas;
 int id;

 if (evas_touch_point_list_count(evas))
   {
      id = evas_touch_point_nth_id_get(evas, 0);
      printf("The first touch point's id: %i\n", id);
   }
See also:
evas_touch_point_list_count()
evas_touch_point_list_nth_xy_get()
evas_touch_point_list_nth_state_get()

This function returns the state of nth touch point.

Parameters:
eThe pointer to the Evas canvas.
nThe number of the touched point (0 being the first).
Returns:
state of nth touch point, if the call succeeded, EVAS_TOUCH_POINT_CANCEL otherwise.

The point's state is EVAS_TOUCH_POINT_DOWN when pressed, EVAS_TOUCH_POINT_STILL when the point is not moved after pressed, EVAS_TOUCH_POINT_MOVE when moved at least once after pressed and EVAS_TOUCH_POINT_UP when released.

Example:

 extern Evas *evas;
 Evas_Touch_Point_State state;

 if (evas_touch_point_list_count(evas))
   {
      state = evas_touch_point_nth_state_get(evas, 0);
      printf("The first touch point's state: %i\n", state);
   }
See also:
evas_touch_point_list_count()
evas_touch_point_list_nth_xy_get()
evas_touch_point_list_nth_id_get()

References EVAS_TOUCH_POINT_CANCEL.

void evas_touch_point_list_nth_xy_get ( Evas e,
unsigned int  n,
Evas_Coord *  x,
Evas_Coord *  y 
)

This function returns the nth touch point's co-ordinates.

Parameters:
eThe pointer to the Evas canvas.
nThe number of the touched point (0 being the first).
xThe pointer to a Evas_Coord to be filled in.
yThe pointer to a Evas_Coord to be filled in.

Touch point's co-ordinates is updated whenever moving that point on the canvas.

Example:

 extern Evas *evas;
 Evas_Coord x, y;

 if (evas_touch_point_list_count(evas))
   {
      evas_touch_point_nth_xy_get(evas, 0, &x, &y);
      printf("The first touch point's co-ordinate: (%i, %i)\n", x, y);
   }
See also:
evas_touch_point_list_count()
evas_touch_point_list_nth_id_get()
evas_touch_point_list_nth_state_get()