Tizen Native API
Pointer (Mouse) Functions

This group provides functions that deal with the status of the pointer (mouse cursor).

Functions

void evas_pointer_output_xy_get (const Evas *e, int *x, int *y)
 Gets the current known pointer co-ordinates.
void evas_pointer_canvas_xy_get (const Evas *e, Evas_Coord *x, Evas_Coord *y)
 Gets the current known pointer co-ordinates.
int evas_pointer_button_down_mask_get (const Evas *e)
 Gets a bitmask with the mouse buttons currently pressed, set to 1.
Eina_Bool evas_pointer_inside_get (const Evas *e)
 Checks whether the mouse pointer is logically inside the canvas.

Function Documentation

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

Since :
2.3.1
Remarks:
This function returns a 32-bit integer with the appropriate bits set to 1 that correspond to a mouse button being depressed. This limits Evas to mouse devices with a maximum of 32 buttons, but that is generally in excess of any host system's pointing device abilities.
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.
The following is an 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);
   }
Parameters:
[in]eThe pointer to the Evas canvas
Returns:
A bitmask of the currently depressed buttons on the canvas
void evas_pointer_canvas_xy_get ( const Evas e,
Evas_Coord x,
Evas_Coord y 
)

Gets the current known pointer co-ordinates.

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.

Since :
2.3.1
Remarks:
The following is an 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);
Parameters:
[in]eThe pointer to the Evas Canvas
[out]xThe pointer to a Evas_Coord to be filled in
[out]yThe pointer to a Evas_Coord to be filled in

Checks whether the mouse pointer is logically inside the canvas.

Since :
2.3.1
Remarks:
When this function is called it returns a value of either 0 or 1.
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.
The following is an example:
 extern Evas *evas;

 if (evas_pointer_inside_get(evas)) printf("Mouse is in!\n");
 else printf("Mouse is out!\n");
Parameters:
[in]eThe pointer to the Evas Canvas
Returns:
EINA_TRUE if the mouse is inside the canvas, otherwise EINA_FALSE
void evas_pointer_output_xy_get ( const Evas e,
int *  x,
int *  y 
)

Gets the current known pointer co-ordinates.

This function returns the current known screen or 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.

Since :
2.3.1
Remarks:
The following is an 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);
Parameters:
[in]eThe pointer to the Evas Canvas
[out]xThe pointer to an integer to be filled in
[out]yThe pointer to an integer to be filled in