Public Member Functions | Static Public Member Functions
evas::canvas Struct Reference

Class canvas. More...

Public Member Functions

 canvas (Eo *eo)
 Eo Constructor. More...
 
 canvas (std::nullptr_t)
 nullptr_t Constructor. More...
 
 canvas (canvas const &other)
 Copy Constructor.
 
::efl::eina::range_list< ::evas::objecttree_objects_at_xy_get (::evas::object stop_, int x_, int y_) const
 Retrieve a list of Evas objects lying over a given position in a canvas. More...
 
void event_feed_mouse_wheel (int direction_, int z_, unsigned int timestamp_, const void *data_) const
 Mouse wheel event feed. More...
 
void key_lock_on (::efl::eina::string_view keyname_) const
 Enables or turns on programmatically the lock key with name keyname. More...
 
void event_feed_key_down (::efl::eina::string_view keyname_,::efl::eina::string_view key_,::efl::eina::string_view string_,::efl::eina::string_view compose_, unsigned int timestamp_, const void *data_) const
 Key down event feed. More...
 
Evas_Modifier_Mask key_modifier_mask_get (::efl::eina::string_view keyname_) const
 Creates a bit mask from the keyname modifier key. More...
 
void key_modifier_add (::efl::eina::string_view keyname_) const
 Adds the keyname key to the current list of modifier keys. More...
 
void key_modifier_off (::efl::eina::string_view keyname_) const
 Disables or turns off programmatically the modifier key with name keyname. More...
 
void event_feed_hold (int hold_, unsigned int timestamp_, const void *data_) const
 Hold event feed. More...
 
void event_feed_mouse_move (int x_, int y_, unsigned int timestamp_, const void *data_) const
 Mouse move event feed. More...
 
void event_feed_key_up (::efl::eina::string_view keyname_,::efl::eina::string_view key_,::efl::eina::string_view string_,::efl::eina::string_view compose_, unsigned int timestamp_, const void *data_) const
 Key up event feed. More...
 
void event_feed_mouse_out (unsigned int timestamp_, const void *data_) const
 Mouse out event feed. More...
 
void event_input_multi_move (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
::efl::eina::range_list< ::evas::objectobjects_at_xy_get (Evas_Coord x_, Evas_Coord y_, bool include_pass_events_objects_, bool include_hidden_objects_) const
 Retrieve a list of Evas objects lying over a given position in a canvas. More...
 
void event_input_multi_up (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
void event_feed_multi_down (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
bool render_async () const
 Render the given Evas canvas asynchronously. More...
 
bool render2 () const
 Render the given Evas canvas using the new rendering infra. More...
 
::efl::eina::list< Eina_Rectangle * > render2_updates () const
 Render the given Evas canvas using the new rendering infra. More...
 
void focus_out () const
 Inform to the evas that it lost the focus.
 
void event_input_mouse_move (int x_, int y_, unsigned int timestamp_, const void *data_) const
 Mouse move event feed from input. More...
 
void norender () const
 Update the canvas internal objects but not triggering immediate renderization. More...
 
unsigned int touch_point_list_count () const
 Get the number of touched point in the evas. More...
 
void event_input_multi_down (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
void nochange_pop () const
 Pop the nochange flag down 1. More...
 
void key_lock_off (::efl::eina::string_view keyname_) const
 Disables or turns off programmatically the lock key with name keyname. More...
 
void nochange_push () const
 Push the nochange flag up 1. More...
 
void font_cache_flush () const
 Force the given evas and associated engine to flush its font cache.
 
bool font_hinting_can_hint (Evas_Font_Hinting_Flags hinting_) const
 Checks if the font hinting is supported by the given evas. More...
 
::evas::object object_top_at_xy_get (Evas_Coord x_, Evas_Coord y_, bool include_pass_events_objects_, bool include_hidden_objects_) const
 Retrieve the Evas object stacked at the top of a given position in a canvas. More...
 
void key_modifier_on (::efl::eina::string_view keyname_) const
 Enables or turns on programmatically the modifier key with name keyname. More...
 
void event_feed_mouse_up (int b_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 Mouse up event feed. More...
 
void event_feed_mouse_down (int b_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 Mouse down event feed. More...
 
void event_refeed_event (void *event_copy_, Evas_Callback_Type event_type_) const
 Re feed event. More...
 
::efl::eina::range_list< ::efl::eina::string_viewfont_available_list () const
 List of available font descriptions known or found by this evas. More...
 
::efl::eina::range_list< ::evas::objectobjects_in_rectangle_get (Evas_Coord x_, Evas_Coord y_, Evas_Coord w_, Evas_Coord h_, bool include_pass_events_objects_, bool include_hidden_objects_) const
 
::evas::object object_name_find (::efl::eina::string_view name_) const
 Retrieves the object on the given evas with the given name. More...
 
void font_path_append (::efl::eina::string_view path_) const
 Appends a font path to the list of font paths used by the given evas. More...
 
int touch_point_list_nth_id_get (unsigned int n_) const
 This function returns the id of nth touch point. More...
 
void font_path_clear () const
 Removes all font paths loaded into memory for the given evas.
 
void smart_objects_calculate () const
 Call user-provided calculate() smart functions and unset the flag signalling that the object needs to get recalculated to all smart objects in the canvas. More...
 
void touch_point_list_nth_xy_get (unsigned int n_, Evas_Coord *x_, Evas_Coord *y_) const
 This function returns the nth touch point's co-ordinates. More...
 
void key_lock_del (::efl::eina::string_view keyname_) const
 Removes the keyname key from the current list of lock keys on canvas e. More...
 
void damage_rectangle_add (int x_, int y_, int w_, int h_) const
 Add a damage rectangle. More...
 
void sync () const
 No description supplied by the EAPI.
 
::efl::eina::crange_list< ::efl::eina::string_viewfont_path_list () const
 Retrieves the list of font paths used by the given evas. More...
 
void image_cache_reload () const
 Reload the image cache. More...
 
int coord_world_x_to_screen (Evas_Coord x_) const
 Convert/scale a canvas co-ordinate into output screen co-ordinates. More...
 
void event_feed_multi_move (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
::efl::eina::list< Eina_Rectangle * > render_updates () const
 Force immediate renderization of the given Evas canvas. More...
 
void image_cache_flush () const
 Flush the image cache of the canvas. More...
 
Evas_Coord coord_screen_y_to_world (int y_) const
 Convert/scale an output screen co-ordinate into canvas co-ordinates. More...
 
void key_modifier_del (::efl::eina::string_view keyname_) const
 Removes the keyname key from the current list of modifier keys on canvas e. More...
 
Evas_Touch_Point_State touch_point_list_nth_state_get (unsigned int n_) const
 This function returns the state of nth touch point. More...
 
void focus_in () const
 Inform to the evas that it got the focus.
 
void obscured_rectangle_add (int x_, int y_, int w_, int h_) const
 Add an "obscured region" to an Evas canvas. More...
 
void render_dump () const
 Make the canvas discard as much data as possible used by the engine at runtime. More...
 
void event_feed_mouse_in (unsigned int timestamp_, const void *data_) const
 Mouse in event feed. More...
 
::evas::object object_top_in_rectangle_get (Evas_Coord x_, Evas_Coord y_, Evas_Coord w_, Evas_Coord h_, bool include_pass_events_objects_, bool include_hidden_objects_) const
 Retrieve the Evas object stacked at the top of a given rectangular region in a canvas. More...
 
void render () const
 Force renderization of the given canvas.
 
void event_feed_multi_up (int d_, int x_, int y_, double rad_, double radx_, double rady_, double pres_, double ang_, double fx_, double fy_, Evas_Button_Flags flags_, unsigned int timestamp_, const void *data_) const
 No description supplied by the EAPI. More...
 
void font_path_prepend (::efl::eina::string_view path_) const
 Prepends a font path to the list of font paths used by the given evas. More...
 
void obscured_clear () const
 Remove all "obscured regions" from an Evas canvas. More...
 
void event_feed_mouse_cancel (unsigned int timestamp_, const void *data_) const
 Mouse cancel event feed. More...
 
Evas_Coord coord_screen_x_to_world (int x_) const
 Convert/scale an output screen co-ordinate into canvas co-ordinates. More...
 
void key_lock_add (::efl::eina::string_view keyname_) const
 Adds the keyname key to the current list of lock keys. More...
 
void render_idle_flush () const
 Make the canvas discard internally cached data used for rendering. More...
 
int coord_world_y_to_screen (Evas_Coord y_) const
 Convert/scale a canvas co-ordinate into output screen co-ordinates. More...
 
void event_feed_key_down_with_keycode (::efl::eina::string_view keyname_,::efl::eina::string_view key_,::efl::eina::string_view string_,::efl::eina::string_view compose_, unsigned int timestamp_, const void *data_, unsigned int keycode_) const
 Key down event feed with keycode. More...
 
void event_feed_key_up_with_keycode (::efl::eina::string_view keyname_,::efl::eina::string_view key_,::efl::eina::string_view string_,::efl::eina::string_view compose_, unsigned int timestamp_, const void *data_, unsigned int keycode_) const
 Key up event feed with keycode. More...
 
void event_feed_axis_update (unsigned int timestamp_, int device_, int toolid_, int naxes_, const Evas_Axis *axis_, const void *data_) const
 Input device axis update event feed. More...
 
void output_framespace_get (Evas_Coord *x_, Evas_Coord *y_, Evas_Coord *w_, Evas_Coord *h_) const
 Get the render engine's output framespace co-ordinates in canvas units. More...
 
void output_framespace_set (Evas_Coord x_, Evas_Coord y_, Evas_Coord w_, Evas_Coord h_) const
 Sets the output framespace size of the render engine of the given evas. More...
 
void output_viewport_get (Evas_Coord *x_, Evas_Coord *y_, Evas_Coord *w_, Evas_Coord *h_) const
 Get the render engine's output viewport co-ordinates in canvas units. More...
 
void output_viewport_set (Evas_Coord x_, Evas_Coord y_, Evas_Coord w_, Evas_Coord h_) const
 Sets the output viewport of the given evas in evas units. More...
 
int image_cache_get () const
 Get the image cache. More...
 
void image_cache_set (int size_) const
 Set the image cache. More...
 
Evas_Event_Flags event_default_flags_get () const
 Get the default set of flags an event begins with. More...
 
void event_default_flags_set (Evas_Event_Flags flags_) const
 Set the default set of flags an event begins with. More...
 
int output_method_get () const
 Retrieves the number of the output engine used for the given evas. More...
 
void output_method_set (int render_method_) const
 Sets the output engine for the given evas. More...
 
int font_cache_get () const
 Changes the size of font cache of the given evas. More...
 
void font_cache_set (int size_) const
 Changes the size of font cache of the given evas.
 
void output_size_get (int *w_, int *h_) const
 Retrieve the output size of the render engine of the given evas. More...
 
void output_size_set (int w_, int h_) const
 Sets the output size of the render engine of the given evas. More...
 
void * data_attach_get () const
 Returns the pointer attached by evas_data_attach_set() More...
 
void data_attach_set (void *data_) const
 Attaches a specific pointer to the evas for fetching later.
 
Evas_Font_Hinting_Flags font_hinting_get () const
 Retrieves the font hinting used by the given evas. More...
 
void font_hinting_set (Evas_Font_Hinting_Flags hinting_) const
 Changes the font hinting for the given evas. More...
 
Evas_Engine_Infoengine_info_get () const
 Retrieves the current render engine info struct from the given evas. More...
 
bool engine_info_set (Evas_Engine_Info *info_) const
 Applies the engine settings for the given evas from the given Evas_Engine_Info structure. More...
 
::evas::object focus_get () const
 Retrieve the object that currently has focus. More...
 
::evas::object object_top_get () const
 Get the highest (stacked) Evas object on the canvas e. More...
 
const Evas_Lockkey_lock_get () const
 Returns a handle to the list of lock keys registered in the canvas e. More...
 
void pointer_canvas_xy_get (Evas_Coord *x_, Evas_Coord *y_) const
 This function returns the current known pointer co-ordinates. More...
 
int event_down_count_get () const
 Get the number of mouse or multi presses currently active. More...
 
int smart_objects_calculate_count_get () const
 This gets the internal counter that counts the number of smart calculations. More...
 
bool focus_state_get () const
 Get the focus state known by the given evas. More...
 
bool changed_get () const
 Get the changed marker for the canvas. More...
 
void pointer_output_xy_get (int *x_, int *y_) const
 This function returns the current known pointer co-ordinates. More...
 
bool pointer_inside_get () const
 Returns whether the mouse pointer is logically inside the canvas. More...
 
bool image_max_size_get (int *maxw_, int *maxh_) const
 Get the maximum image size evas can possibly handle. More...
 
::evas::object object_bottom_get () const
 Get the lowest (stacked) Evas object on the canvas e. More...
 
const Evas_Modifierkey_modifier_get () const
 Returns a handle to the list of modifier keys registered in the canvas e. More...
 
int pointer_button_down_mask_get () const
 Returns a bitmask with the mouse buttons currently pressed, set to 1. More...
 
template<typename F >
::efl::eo::signal_connection callback_callback_add_add (F &&callback_,::efl::eo::callback_priority priority_=::efl::eo::callback_priorities::default_)
 
template<typename T >
void callback_callback_add_call (T *info)
 
template<typename F >
::efl::eo::signal_connection callback_callback_del_add (F &&callback_,::efl::eo::callback_priority priority_=::efl::eo::callback_priorities::default_)
 
template<typename T >
void callback_callback_del_call (T *info)
 
template<typename F >
::efl::eo::signal_connection callback_del_add (F &&callback_,::efl::eo::callback_priority priority_=::efl::eo::callback_priorities::default_)
 
template<typename T >
void callback_del_call (T *info)
 
 canvas (::efl::eo::parent_type _p)
 Constructs a new evas::canvas object. More...
 
- Public Member Functions inherited from efl::eo::concrete
 concrete (Eo *eo)
 Class constructor. More...
 
 concrete ()
 Default constructor. More...
 
 ~concrete ()
 Class destructor.
 
 concrete (concrete const &other)
 
 concrete (concrete &&other)
 
concreteoperator= (concrete const &other)
 Assignment operator.
 
concreteoperator= (concrete &&other)
 
Eo_eo_ptr () const
 Return a pointer to the EO Object stored in this instance. More...
 
Eo_release ()
 Releases the reference from this concrete object and return the pointer to the EO Object stored in this instance. More...
 
void _reset (Eo *_ptr=nullptr)
 Reset the current pointer to reference a new Eo object.
 
int ref_get () const
 Get the reference count of this object. More...
 
void parent_set (concrete parent)
 Set the parent of this object. More...
 
eina::optional< concreteparent_get ()
 Get the parent of this object. More...
 
Eo_Dbg_Info dbg_info_get ()
 Get debug information of this object. More...
 
 operator bool () const
 

Static Public Member Functions

static Eo_Class const * _eo_class ()
 

Additional Inherited Members

- Protected Attributes inherited from efl::eo::concrete
Eo_eo_raw
 The opaque EO Object.
 

Detailed Description

Class canvas.

Constructor & Destructor Documentation

evas::canvas::canvas ( ::efl::eo::parent_type  _p)
inlineexplicit

Constructs a new evas::canvas object.

Constructs a new evas::canvas object. If you want this object to be a child of another Eo object, use an efl::eo::parent expression, like the example.

Example:

evas::canvas my_canvas(efl::eo::parent = parent_object);
See also
canvas(Eo* eo)
evas::canvas::canvas ( Eo eo)
inlineexplicit

Eo Constructor.

Constructs the object from an Eo* pointer stealing its ownership.

Parameters
eoThe Eo object pointer.
evas::canvas::canvas ( std::nullptr_t  )
inlineexplicit

nullptr_t Constructor.

Constructs an empty (null) object.

Member Function Documentation

::efl::eina::range_list< ::evas::object > evas::canvas::tree_objects_at_xy_get ( ::evas::object  stop_,
int  x_,
int  y_ 
) const

Retrieve a list of Evas objects lying over a given position in a canvas.

This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. It will enter the smart objects. It will not append to the list pass events as hidden objects. Call eina_list_free on the returned list after usage.

Parameters
stopAn Evas Object where to stop searching.
xThe horizontal coordinate of the position.
yThe vertical coordinate of the position.
void evas::canvas::event_feed_mouse_wheel ( int  direction_,
int  z_,
unsigned int  timestamp_,
const void *  data_ 
) const

Mouse wheel event feed.

This function will set some evas properties that is necessary when the mouse wheel is scrolled up or down. It prepares information to be treated by the callback function.

Parameters
directionThe wheel mouse direction.
zHow much mouse wheel was scrolled up or down.
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::key_lock_on ( ::efl::eina::string_view  keyname_) const

Enables or turns on programmatically the lock key with name keyname.

The effect will be as if the key was put on its active state after this call.

See also
evas_key_lock_get
evas_key_lock_add
evas_key_lock_del
evas_key_lock_off
Parameters
keynameThe name of the lock to enable.
void evas::canvas::event_feed_key_down ( ::efl::eina::string_view  keyname_,
::efl::eina::string_view  key_,
::efl::eina::string_view  string_,
::efl::eina::string_view  compose_,
unsigned int  timestamp_,
const void *  data_ 
) const

Key down event feed.

This function will set some evas properties that is necessary when a key is pressed. It prepares information to be treated by the callback function.

Parameters
keynameName of the key
keyThe key pressed.
stringA String
composeThe compose string
timestampTimestamp of the mouse up event
dataData for canvas.
Evas_Modifier_Mask evas::canvas::key_modifier_mask_get ( ::efl::eina::string_view  keyname_) const

Creates a bit mask from the keyname modifier key.

Values returned from different calls to it may be ORed together, naturally.

Returns
the bit mask or 0 if the keyname key wasn't registered as a modifier for canvas e.

This function is meant to be using in conjunction with evas_object_key_grab()/evas_object_key_ungrab(). Go check their documentation for more information.

See also
evas_key_modifier_add
evas_key_modifier_get
evas_key_modifier_on
evas_key_modifier_off
evas_key_modifier_is_set
evas_object_key_grab
evas_object_key_ungrab
Parameters
keynameThe name of the modifier key to create the mask for.
void evas::canvas::key_modifier_add ( ::efl::eina::string_view  keyname_) const

Adds the keyname key to the current list of modifier keys.

Modifiers are keys like shift, alt and ctrl, i.e., keys which are meant to be pressed together with others, altering the behavior of the secondly pressed keys somehow. Evas is so that these keys can be user defined.

This call allows custom modifiers to be added to the Evas system at run time. It is then possible to set and unset modifier keys programmatically for other parts of the program to check and act on. Programmers using Evas would check for modifier keys on key event callbacks using evas_key_modifier_is_set().

See also
evas_key_modifier_del
evas_key_modifier_get
evas_key_modifier_on
evas_key_modifier_off
evas_key_modifier_is_set
Note
If the programmer instantiates the canvas by means of the ecore_evas_new() family of helper functions, Ecore will take care of registering on it all standard modifiers: "Shift", "Control", "Alt", "Meta", "Hyper", "Super".
Parameters
keynameThe name of the modifier key to add to the list of Evas modifiers.
void evas::canvas::key_modifier_off ( ::efl::eina::string_view  keyname_) const

Disables or turns off programmatically the modifier key with name keyname.

See also
evas_key_modifier_add
evas_key_modifier_get
evas_key_modifier_on
evas_key_modifier_is_set
Parameters
keynameThe name of the modifier to disable.
void evas::canvas::event_feed_hold ( int  hold_,
unsigned int  timestamp_,
const void *  data_ 
) const

Hold event feed.

This function makes the object to stop sending events.

Parameters
holdThe hold.
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::event_feed_mouse_move ( int  x_,
int  y_,
unsigned int  timestamp_,
const void *  data_ 
) const

Mouse move event feed.

This function will set some evas properties that is necessary when the mouse is moved from its last position. It prepares information to be treated by the callback function.

Parameters
xThe horizontal position of the mouse pointer.
yThe vertical position of the mouse pointer.
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::event_feed_key_up ( ::efl::eina::string_view  keyname_,
::efl::eina::string_view  key_,
::efl::eina::string_view  string_,
::efl::eina::string_view  compose_,
unsigned int  timestamp_,
const void *  data_ 
) const

Key up event feed.

This function will set some evas properties that is necessary when a key is released. It prepares information to be treated by the callback function.

Parameters
keynameName of the key
keyThe key released.
stringstring
composecompose
timestampTimestamp of the mouse up event
dataData for canvas.
void evas::canvas::event_feed_mouse_out ( unsigned int  timestamp_,
const void *  data_ 
) const

Mouse out event feed.

This function will set some evas properties that is necessary when the mouse out event happens. It prepares information to be treated by the callback function.

Parameters
timestampTimestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::event_input_multi_move ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
timestamp
data
::efl::eina::range_list< ::evas::object > evas::canvas::objects_at_xy_get ( Evas_Coord  x_,
Evas_Coord  y_,
bool  include_pass_events_objects_,
bool  include_hidden_objects_ 
) const

Retrieve a list of Evas objects lying over a given position in a canvas.

Returns
The list of Evas objects that are over the given position in e

This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can remove from query objects which are hidden and/or which are set to pass events.

Warning
This function will skip objects parented by smart objects, acting only on the ones at the "top level", with regard to object parenting.
Parameters
xThe horizontal coordinate of the position
yThe vertical coordinate of the position
include_pass_events_objectsBoolean flag to include or not objects which pass events in this calculation
include_hidden_objectsBoolean flag to include or not hidden objects in this calculation
void evas::canvas::event_input_multi_up ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
flags
timestamp
data
void evas::canvas::event_feed_multi_down ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
flags
timestamp
data
void evas::canvas::event_input_mouse_move ( int  x_,
int  y_,
unsigned int  timestamp_,
const void *  data_ 
) const

Mouse move event feed from input.

Similar to the evas_event_feed_mouse_move(), this function will inform Evas about mouse move events which were received by the input system, relative to the 0,0 of the window, not to the canvas 0,0. It will take care of doing any special transformation like adding the framespace offset to the mouse event.

Since
1.8
See also
evas_event_feed_mouse_move
Parameters
xThe horizontal position of the mouse pointer relative to the 0,0 of the window/surface.
yThe vertical position of the mouse pointer relative to the 0,0 of the window/surface.
timestampThe timestamp of the mouse move event.
dataThe data for canvas.
unsigned int evas::canvas::touch_point_list_count ( ) const

Get the number of touched point in the evas.

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()
void evas::canvas::event_input_multi_down ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
flags
timestamp
data
void evas::canvas::key_lock_off ( ::efl::eina::string_view  keyname_) const

Disables or turns off programmatically the lock key with name keyname.

The effect will be as if the key was put on its inactive state after this call.

See also
evas_key_lock_get
evas_key_lock_add
evas_key_lock_del
evas_key_lock_on
Parameters
keynameThe name of the lock to disable.
::evas::object evas::canvas::object_top_at_xy_get ( Evas_Coord  x_,
Evas_Coord  y_,
bool  include_pass_events_objects_,
bool  include_hidden_objects_ 
) const

Retrieve the Evas object stacked at the top of a given position in a canvas.

Returns
The Evas object that is over all other objects at the given position.

This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can remove from the query objects which are hidden and/or which are set to pass events.

Warning
This function will skip objects parented by smart objects, acting only on the ones at the "top level", with regard to object parenting.
Parameters
xThe horizontal coordinate of the position
yThe vertical coordinate of the position
include_pass_events_objectsBoolean flag to include or not objects which pass events in this calculation
include_hidden_objectsBoolean flag to include or not hidden objects in this calculation
void evas::canvas::key_modifier_on ( ::efl::eina::string_view  keyname_) const

Enables or turns on programmatically the modifier key with name keyname.

The effect will be as if the key was pressed for the whole time between this call and a matching evas_key_modifier_off().

See also
evas_key_modifier_add
evas_key_modifier_get
evas_key_modifier_off
evas_key_modifier_is_set
Parameters
keynameThe name of the modifier to enable.
void evas::canvas::event_feed_mouse_up ( int  b_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

Mouse up event feed.

This function will set some evas properties that is necessary when the mouse button is released. It prepares information to be treated by the callback function.

Parameters
bThe button number.
flagsevas button flags.
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::event_feed_mouse_down ( int  b_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

Mouse down event feed.

This function will set some evas properties that is necessary when the mouse button is pressed. It prepares information to be treated by the callback function.

Parameters
bThe button number.
flagsThe evas button flags.
timestampThe timestamp of the mouse down event.
dataThe data for canvas.
void evas::canvas::event_refeed_event ( void *  event_copy_,
Evas_Callback_Type  event_type_ 
) const

Re feed event.

This function re-feeds the event pointed by event_copy

This function call evas_event_feed_* functions, so it can cause havoc if not used wisely. Please use it responsibly.

Parameters
event_copythe event to refeed
event_typeEvent type
::efl::eina::range_list< ::evas::object > evas::canvas::objects_in_rectangle_get ( Evas_Coord  x_,
Evas_Coord  y_,
Evas_Coord  w_,
Evas_Coord  h_,
bool  include_pass_events_objects_,
bool  include_hidden_objects_ 
) const
Parameters
x
y
w
h
include_pass_events_objects
include_hidden_objects
int evas::canvas::touch_point_list_nth_id_get ( unsigned int  n_) const

This function returns the id of nth touch point.

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()
Parameters
nThe number of the touched point (0 being the first).
void evas::canvas::touch_point_list_nth_xy_get ( unsigned int  n_,
Evas_Coord x_,
Evas_Coord y_ 
) const

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

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

Example:

extern Evas *evas;
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()
Parameters
nThe number of the touched point (0 being the first).
[out]xThe pointer to a Evas_Coord to be filled in.
[out]yThe pointer to a Evas_Coord to be filled in.
void evas::canvas::key_lock_del ( ::efl::eina::string_view  keyname_) const

Removes the keyname key from the current list of lock keys on canvas e.

See also
evas_key_lock_get
evas_key_lock_add
evas_key_lock_on
evas_key_lock_off
Parameters
keynameThe name of the key to remove from the locks list.
void evas::canvas::image_cache_reload ( ) const

Reload the image cache.

This function reloads the image cache of canvas.

void evas::canvas::event_feed_multi_move ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
timestamp
data
void evas::canvas::image_cache_flush ( ) const

Flush the image cache of the canvas.

This function flushes image cache of canvas.

void evas::canvas::key_modifier_del ( ::efl::eina::string_view  keyname_) const

Removes the keyname key from the current list of modifier keys on canvas e.

See also
evas_key_modifier_add
evas_key_modifier_get
evas_key_modifier_on
evas_key_modifier_off
evas_key_modifier_is_set
Parameters
keynameThe name of the key to remove from the modifiers list.
Evas_Touch_Point_State evas::canvas::touch_point_list_nth_state_get ( unsigned int  n_) const

This function returns the state of nth touch point.

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;
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()
Parameters
nThe number of the touched point (0 being the first).
void evas::canvas::event_feed_mouse_in ( unsigned int  timestamp_,
const void *  data_ 
) const

Mouse in event feed.

This function will set some evas properties that is necessary when the mouse in event happens. It prepares information to be treated by the callback function.

Parameters
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
::evas::object evas::canvas::object_top_in_rectangle_get ( Evas_Coord  x_,
Evas_Coord  y_,
Evas_Coord  w_,
Evas_Coord  h_,
bool  include_pass_events_objects_,
bool  include_hidden_objects_ 
) const

Retrieve the Evas object stacked at the top of a given rectangular region in a canvas.

Returns
The Evas object that is over all other objects at the given rectangular region.

This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region inside e. The user can remove from the query objects which are hidden and/or which are set to pass events.

Warning
This function will skip objects parented by smart objects, acting only on the ones at the "top level", with regard to object parenting.
Parameters
xThe top left corner's horizontal coordinate for the rectangular region
yThe top left corner's vertical coordinate for the rectangular region
wThe width of the rectangular region
hThe height of the rectangular region
include_pass_events_objectsBoolean flag to include or not objects which pass events in this calculation
include_hidden_objectsBoolean flag to include or not hidden objects in this calculation
void evas::canvas::event_feed_multi_up ( int  d_,
int  x_,
int  y_,
double  rad_,
double  radx_,
double  rady_,
double  pres_,
double  ang_,
double  fx_,
double  fy_,
Evas_Button_Flags  flags_,
unsigned int  timestamp_,
const void *  data_ 
) const

No description supplied by the EAPI.

Parameters
d
x
y
rad
radx
rady
pres
ang
fx
fy
flags
timestamp
data
void evas::canvas::event_feed_mouse_cancel ( unsigned int  timestamp_,
const void *  data_ 
) const

Mouse cancel event feed.

This function will call evas_event_feed_mouse_up() when a mouse cancel event happens.

Parameters
timestampThe timestamp of the mouse up event.
dataThe data for canvas.
void evas::canvas::key_lock_add ( ::efl::eina::string_view  keyname_) const

Adds the keyname key to the current list of lock keys.

Locks are keys like caps lock, num lock or scroll lock, i.e., keys which are meant to be pressed once – toggling a binary state which is bound to it – and thus altering the behavior of all subsequently pressed keys somehow, depending on its state. Evas is so that these keys can be defined by the user.

This allows custom locks to be added to the evas system at run time. It is then possible to set and unset lock keys programmatically for other parts of the program to check and act on. Programmers using Evas would check for lock keys on key event callbacks using evas_key_lock_is_set().

See also
evas_key_lock_get
evas_key_lock_del
evas_key_lock_on
evas_key_lock_off
evas_key_lock_is_set
Note
If the programmer instantiates the canvas by means of the ecore_evas_new() family of helper functions, Ecore will take care of registering on it all standard lock keys: "Caps_Lock", "Num_Lock", "Scroll_Lock".
Parameters
keynameThe name of the key to add to the locks list.
void evas::canvas::event_feed_key_down_with_keycode ( ::efl::eina::string_view  keyname_,
::efl::eina::string_view  key_,
::efl::eina::string_view  string_,
::efl::eina::string_view  compose_,
unsigned int  timestamp_,
const void *  data_,
unsigned int  keycode_ 
) const

Key down event feed with keycode.

This function will set some evas properties that is necessary when a key is pressed. It prepares information to be treated by the callback function.

Since
1.10
Parameters
keynameName of the key
keyThe key pressed.
stringA String
composeThe compose string
timestampTimestamp of the mouse up event
dataData for canvas.
keycodeKey scan code numeric value for canvas.
void evas::canvas::event_feed_key_up_with_keycode ( ::efl::eina::string_view  keyname_,
::efl::eina::string_view  key_,
::efl::eina::string_view  string_,
::efl::eina::string_view  compose_,
unsigned int  timestamp_,
const void *  data_,
unsigned int  keycode_ 
) const

Key up event feed with keycode.

This function will set some evas properties that is necessary when a key is released. It prepares information to be treated by the callback function.

Since
1.10
Parameters
keynameName of the key
keyThe key released.
stringstring
composecompose
timestampTimestamp of the mouse up event
dataData for canvas.
keycodeKey scan code numeric value for canvas.
void evas::canvas::event_feed_axis_update ( unsigned int  timestamp_,
int  device_,
int  toolid_,
int  naxes_,
const Evas_Axis axis_,
const void *  data_ 
) const

Input device axis update event feed.

This function will set some evas properties that is necessary when an e.g. stylus axis is updated. It prepares information to be treated by the callback function.

Since
1.13
Parameters
timestampTimestamp of the axis event
deviceSystem-provided device identifier
toolidType of tool currently being used
naxesNumber of elements in the axis array
axisArray containing the current value of all updated axes
dataData for canvas.
void evas::canvas::output_viewport_get ( Evas_Coord x_,
Evas_Coord y_,
Evas_Coord w_,
Evas_Coord h_ 
) const

Get the render engine's output viewport co-ordinates in canvas units.

Calling this function writes the current canvas output viewport size and location values into the variables pointed to by x, y, w and h. On success the variables have the output location and size values written to them in canvas units. Any of x, y, w or h that are NULL will not be written to. If e is invalid, the results are undefined.

Example:

extern Evas *evas;
Evas_Coord x, y, width, height;
evas_output_viewport_get(evas, &x, &y, &w, &h);
int evas::canvas::image_cache_get ( ) const

Get the image cache.

This function returns the image cache size of canvas in bytes.

void evas::canvas::image_cache_set ( int  size_) const

Set the image cache.

This function sets the image cache of canvas in bytes.

Evas_Event_Flags evas::canvas::event_default_flags_get ( ) const

Get the default set of flags an event begins with.

Returns
The default event flags for that canvas

This gets the default event flags events are produced with when fed in.

See also
evas_event_default_flags_set()
Since
1.2
void evas::canvas::event_default_flags_set ( Evas_Event_Flags  flags_) const

Set the default set of flags an event begins with.

Events in evas can have an event_flags member. This starts out with and initial value (no flags). This lets you set the default flags that an event begins with to be flags

Since
1.2
::evas::object evas::canvas::object_top_get ( ) const

Get the highest (stacked) Evas object on the canvas e.

Returns
a pointer to the highest object on it, if any, or NULL, otherwise

This function will take all populated layers in the canvas into account, getting the highest object for the highest layer, naturally.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_below_get()
evas_object_above_get()
Warning
This function will skip objects parented by smart objects, acting only on the ones at the "top level", with regard to object parenting.
const Evas_Lock* evas::canvas::key_lock_get ( ) const

Returns a handle to the list of lock keys registered in the canvas e.

This is required to check for which locks are set at a given time with the evas_key_lock_is_set() function.

See also
evas_key_lock_add
evas_key_lock_del
evas_key_lock_on
evas_key_lock_off
evas_key_lock_is_set
Returns
An .Evas_Lock handle to query Evas' keys subsystem with evas_key_lock_is_set(), or NULL on error.
void evas::canvas::pointer_canvas_xy_get ( Evas_Coord x_,
Evas_Coord y_ 
) const

This function returns 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.

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 %d, %d\n", mouse_x, mouse_y);
int evas::canvas::event_down_count_get ( ) const

Get the number of mouse or multi presses currently active.

e The given canvas pointer.

Returns
The number of presses (0 if none active).
Since
1.2
void evas::canvas::pointer_output_xy_get ( int *  x_,
int *  y_ 
) const

This function returns the current known pointer co-ordinates.

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\n", mouse_x, mouse_y);
bool evas::canvas::pointer_inside_get ( ) const

Returns whether the mouse pointer is logically inside the 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!\n");
else printf("Mouse is out!\n");
bool evas::canvas::image_max_size_get ( int *  maxw_,
int *  maxh_ 
) const

Get the maximum image size evas can possibly handle.

This function returns the larges image or surface size that evas can handle in pixels, and if there is one, returns EINA_TRUE. It returns EINA_FALSE if no extra constraint on maximum image size exists. You still should check the return values of maxw and maxh as there may still be a limit, just a much higher one.

Since
1.1
::evas::object evas::canvas::object_bottom_get ( ) const

Get the lowest (stacked) Evas object on the canvas e.

Returns
a pointer to the lowest object on it, if any, or NULL, otherwise

This function will take all populated layers in the canvas into account, getting the lowest object for the lowest layer, naturally.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_below_get()
evas_object_above_get()
Warning
This function will skip objects parented by smart objects, acting only on the ones at the "top level", with regard to object parenting.
const Evas_Modifier* evas::canvas::key_modifier_get ( ) const

Returns a handle to the list of modifier keys registered in the canvas e.

This is required to check for which modifiers are set at a given time with the evas_key_modifier_is_set() function.

See also
evas_key_modifier_add
evas_key_modifier_del
evas_key_modifier_on
evas_key_modifier_off
evas_key_modifier_is_set
Returns
An .Evas_Modifier handle to query Evas' keys subsystem with evas_key_modifier_is_set(), or NULL on error.
int evas::canvas::pointer_button_down_mask_get ( ) const

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

Returns
A bitmask of the currently depressed buttons on the canvas

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:\n");
for (i = 0; i < 32; i++)
{
if ((button_mask & (1 << i)) != 0) printf("Button %i\n", i + 1);
}