Evas_Pointer_Group (3) - Linux Manuals

Evas_Pointer_Group: Functions that deal with the status of the pointer.

NAME

Evas Pointer Functions - Functions that deal with the status of the pointer.

Functions


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

Detailed Description

Functions that deal with the status of the pointer.

Function Documentation

EAPI int evas_pointer_button_down_mask_get (const Evas * e)

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

Parameters:

e The pointer to the Evas Canvas

Returns:

A bitmask of the currently depressed buttons on the cavas

Calling this function will return a 32-bit integer with the appropriate bits set to 1 that correspond to a mouse button being depressed. This limits Evas to a mouse devices with a maximum of 32 buttons, but that is generally in excess of any host system's pointing device abilities.

A canvas by default begins with no mouse buttons being pressed and only calls to evas_event_feed_mouse_down(), evas_event_feed_mouse_down_data(), evas_event_feed_mouse_up() and evas_event_feed_mouse_up_data() will alter that.

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.

Example:

 extern Evas *evas;
 int button_mask, i;

 button_mask = evas_pointer_button_down_mask_get(evas);
 printf('Buttons currently pressed:);
 for (i = 0; i < 32; i++)
   {
     if ((button_mask & (1 << i)) != 0) printf('Button %i, i + 1);
   }


 

EAPI void evas_pointer_canvas_xy_get (const Evas * e, Evas_Coord * x, Evas_Coord * y)

This function returns the current known pointer co-ordinates.

Parameters:

e The pointer to the Evas Canvas
x The pointer to a Evas_Coord to be filled in
y The pointer to a Evas_Coord to be filled in

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.

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, mouse_x, mouse_y);


 

EAPI Evas_Bool evas_pointer_inside_get (const Evas * e)

Returns whether the mouse pointer is logically inside the canvas.

Parameters:

e The pointer to the Evas Canvas

Returns:

An integer that is 1 if the mouse is inside the canvas, 0 otherwise

When this function is called it will return a value of either 0 or 1, depending on if evas_event_feed_mouse_in(), evas_event_feed_mouse_in_data(), or evas_event_feed_mouse_out(), evas_event_feed_mouse_out_data() have been called to feed in a mouse enter event into the canvas.

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.

Example:

 extern Evas *evas;

 if (evas_pointer_inside_get(evas)) printf('Mouse is in!);
 else printf('Mouse is out!);


 

EAPI void evas_pointer_output_xy_get (const Evas * e, int * x, int * y)

This function returns the current known pointer co-ordinates.

Parameters:

e The pointer to the Evas Canvas
x The pointer to an integer to be filled in
y The pointer to an integer to be filled in

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

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, mouse_x, mouse_y);


 

Author

Generated automatically by Doxygen for Evas from the source code.