Evas_Pointer_Group

Langue: en

Autres versions - même langue

Version: 374631 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Pointer (Mouse) Functions -

Functions that deal with the status of the pointer (mouse cursor).

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 Eina_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 (mouse cursor).

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 Eina_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.