- Main Page
- Related Pages
- Modules
- Data Structures
- Files
- Examples

Modules | Macros | Typedefs | Enumerations | Functions
Ecore_Evas wrapper/helper set of functions
Ecore

Ecore evas is a set of functions that makes it easy to tie together ecore's main loop and input handling to evas. More...

## Modules
| Ecore_Evas Single Process Windowing System.
| These are global scope functions to manage the EWS to be used by ecore_evas_ews_new().
| External plug/socket infrastructure to remote canvases
| These functions allow 1 process to create a "socket" was pluged into which another process can create a "plug" remotely to plug into.

## Macros
#define | HAVE_ECORE_EVAS_X 1
#define | HAVE_ECORE_EVAS_FB 1
#define | HAVE_ECORE_EVAS_X11_GL 1
#define | HAVE_ECORE_EVAS_WIN32 1
#define | HAVE_ECORE_EVAS_COCOA 1
#define | HAVE_ECORE_EVAS_SDL 1
#define | HAVE_ECORE_EVAS_EWS 1
#define | HAVE_ECORE_EVAS_PSL1GHT 1
#define | HAVE_ECORE_EVAS_WAYLAND_SHM 1
#define | HAVE_ECORE_EVAS_WAYLAND_EGL 1
#define | HAVE_ECORE_EVAS_DRM 1
#define | ECORE_EVAS_GL_X11_OPT_NONE 0
#define | ECORE_EVAS_GL_X11_OPT_INDIRECT 1
#define | ECORE_EVAS_GL_X11_OPT_VSYNC 2
#define | ECORE_EVAS_GL_X11_OPT_SWAP_MODE 3
#define | ECORE_EVAS_GL_X11_OPT_LAST 4
#define | ECORE_EVAS_GL_X11_SWAP_MODE_AUTO 0
#define | ECORE_EVAS_GL_X11_SWAP_MODE_FULL 1
#define | ECORE_EVAS_GL_X11_SWAP_MODE_COPY 2
#define | ECORE_EVAS_GL_X11_SWAP_MODE_DOUBLE 3
#define | ECORE_EVAS_GL_X11_SWAP_MODE_TRIPLE 4

## Typedefs
typedef enum _Ecore_Evas_Engine_Type | Ecore_Evas_Engine_Type
typedef enum _Ecore_Evas_Avoid_Damage_Type | Ecore_Evas_Avoid_Damage_Type
typedef enum _Ecore_Evas_Object_Associate_Flags | Ecore_Evas_Object_Associate_Flags

## Enumerations
enum | _Ecore_Evas_Engine_Type { ECORE_EVAS_ENGINE_SOFTWARE_BUFFER, ECORE_EVAS_ENGINE_SOFTWARE_XLIB, ECORE_EVAS_ENGINE_XRENDER_X11, ECORE_EVAS_ENGINE_OPENGL_X11, ECORE_EVAS_ENGINE_SOFTWARE_XCB, ECORE_EVAS_ENGINE_XRENDER_XCB, ECORE_EVAS_ENGINE_SOFTWARE_GDI, ECORE_EVAS_ENGINE_SOFTWARE_DDRAW, ECORE_EVAS_ENGINE_DIRECT3D, ECORE_EVAS_ENGINE_OPENGL_GLEW, ECORE_EVAS_ENGINE_OPENGL_COCOA, ECORE_EVAS_ENGINE_SOFTWARE_SDL, ECORE_EVAS_ENGINE_DIRECTFB, ECORE_EVAS_ENGINE_SOFTWARE_FB, ECORE_EVAS_ENGINE_SOFTWARE_8_X11, ECORE_EVAS_ENGINE_SOFTWARE_16_X11, ECORE_EVAS_ENGINE_SOFTWARE_16_DDRAW, ECORE_EVAS_ENGINE_SOFTWARE_16_WINCE, ECORE_EVAS_ENGINE_OPENGL_SDL, ECORE_EVAS_ENGINE_EWS, ECORE_EVAS_ENGINE_PSL1GHT, ECORE_EVAS_ENGINE_WAYLAND_SHM, ECORE_EVAS_ENGINE_WAYLAND_EGL, ECORE_EVAS_ENGINE_DRM }
enum | _Ecore_Evas_Avoid_Damage_Type { ECORE_EVAS_AVOID_DAMAGE_NONE = 0, ECORE_EVAS_AVOID_DAMAGE_EXPOSE = 1, ECORE_EVAS_AVOID_DAMAGE_BUILT_IN = 2 }
enum | _Ecore_Evas_Object_Associate_Flags { ECORE_EVAS_OBJECT_ASSOCIATE_BASE = 0, ECORE_EVAS_OBJECT_ASSOCIATE_STACK = 1 << 0, ECORE_EVAS_OBJECT_ASSOCIATE_LAYER = 1 << 1, ECORE_EVAS_OBJECT_ASSOCIATE_DEL = 1 << 2 }

## Functions
EAPI int | ecore_evas_engine_type_supported_get (Ecore_Evas_Engine_Type engine)
| Query if a particular rendering engine target has support. More...
EAPI int | ecore_evas_init (void)
| Init the Ecore_Evas system. More...
EAPI int | ecore_evas_shutdown (void)
| Shut down the Ecore_Evas system. More...
EAPI void | ecore_evas_app_comp_sync_set (Eina_Bool do_sync)
EAPI Eina_Bool | ecore_evas_app_comp_sync_get (void)
EAPI Eina_List * | ecore_evas_engines_get (void)
| Returns a list of supported engines names. More...
EAPI void | ecore_evas_engines_free (Eina_List *engines)
| Free list returned by ecore_evas_engines_get() More...
EAPI Ecore_Evas * | ecore_evas_new (const char *engine_name, int x, int y, int w, int h, const char *extra_options)
| Creates a new Ecore_Evas based on engine name and common parameters. More...
EAPI void | ecore_evas_alpha_set (Ecore_Evas *ee, Eina_Bool alpha)
| Set whether an Ecore_Evas has an alpha channel or not. More...
EAPI Eina_Bool | ecore_evas_alpha_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas has an alpha channel. More...
EAPI void | ecore_evas_transparent_set (Ecore_Evas *ee, Eina_Bool transparent)
| Set whether an Ecore_Evas has an transparent window or not. More...
EAPI Eina_Bool | ecore_evas_transparent_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas is transparent. More...
EAPI void | ecore_evas_geometry_get (const Ecore_Evas *ee, int *x, int *y, int *w, int *h)
| Get the geometry of an Ecore_Evas. More...
EAPI void | ecore_evas_request_geometry_get (const Ecore_Evas *ee, int *x, int *y, int *w, int *h)
| Get the geometry which an Ecore_Evas was latest recently requested. More...
EAPI void | ecore_evas_focus_set (Ecore_Evas *ee, Eina_Bool on)
| Set the focus of an Ecore_Evas' window. More...
EAPI Eina_Bool | ecore_evas_focus_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is focused or not. More...
EAPI void | ecore_evas_iconified_set (Ecore_Evas *ee, Eina_Bool on)
| Iconify or uniconify an Ecore_Evas' window. More...
EAPI Eina_Bool | ecore_evas_iconified_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is iconified or not. More...
EAPI void | ecore_evas_borderless_set (Ecore_Evas *ee, Eina_Bool on)
| Set whether an Ecore_Evas' window is borderless or not. More...
EAPI Eina_Bool | ecore_evas_borderless_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is borderless or not. More...
EAPI void | ecore_evas_fullscreen_set (Ecore_Evas *ee, Eina_Bool on)
| Set whether or not an Ecore_Evas' window is fullscreen. More...
EAPI Eina_Bool | ecore_evas_fullscreen_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is fullscreen or not. More...
EAPI void | ecore_evas_window_group_set (Ecore_Evas *ee, const Ecore_Evas *ee_group)
| Set another window that this window is a group member of. More...
EAPI const Ecore_Evas * | ecore_evas_window_group_get (const Ecore_Evas *ee)
| Get the canvas group set. More...
EAPI void | ecore_evas_aspect_set (Ecore_Evas *ee, double aspect)
| Set the aspect ratio of a canvas window. More...
EAPI double | ecore_evas_aspect_get (const Ecore_Evas *ee)
| Get the aspect ratio of a canvas window. More...
EAPI void | ecore_evas_urgent_set (Ecore_Evas *ee, Eina_Bool urgent)
| Set The urgent hint flag. More...
EAPI Eina_Bool | ecore_evas_urgent_get (const Ecore_Evas *ee)
| Get the urgent state on the cavas window. More...
EAPI void | ecore_evas_modal_set (Ecore_Evas *ee, Eina_Bool modal)
| Set the modal state flag on the canvas window. More...
EAPI Eina_Bool | ecore_evas_modal_get (const Ecore_Evas *ee)
| Get The modal flag. More...
EAPI void | ecore_evas_demand_attention_set (Ecore_Evas *ee, Eina_Bool demand)
| Set the "i demand attention" flag on a canvas window. More...
EAPI Eina_Bool | ecore_evas_demand_attention_get (const Ecore_Evas *ee)
| Get the "i demand attention" flag. More...
EAPI void | ecore_evas_focus_skip_set (Ecore_Evas *ee, Eina_Bool skip)
| Set the "focus skip" flag. More...
EAPI Eina_Bool | ecore_evas_focus_skip_get (const Ecore_Evas *ee)
| Get the "focus skip" flag. More...
EAPI void | ecore_evas_ignore_events_set (Ecore_Evas *ee, Eina_Bool ignore)
| Set if this evas should ignore all events. More...
EAPI Eina_Bool | ecore_evas_ignore_events_get (const Ecore_Evas *ee)
| Returns the ignore state of an Ecore_Evas' window. More...
EAPI int | ecore_evas_visibility_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is visible or not. More...
EAPI void | ecore_evas_layer_set (Ecore_Evas *ee, int layer)
| Set the layer of an Ecore_Evas' window. More...
EAPI int | ecore_evas_layer_get (const Ecore_Evas *ee)
| Get the layer of an Ecore_Evas' window. More...
EAPI void | ecore_evas_maximized_set (Ecore_Evas *ee, Eina_Bool on)
| Maximize (or unmaximize) an Ecore_Evas' window. More...
EAPI Eina_Bool | ecore_evas_maximized_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is maximized or not. More...
EAPI Eina_Bool | ecore_evas_window_profile_supported_get (const Ecore_Evas *ee)
| Query if the underlying windowing system supports the window profile. More...
EAPI void | ecore_evas_window_profile_set (Ecore_Evas *ee, const char *profile)
| Set the window profile. More...
EAPI const char * | ecore_evas_window_profile_get (const Ecore_Evas *ee)
| Get the window profile. More...
EAPI void | ecore_evas_window_available_profiles_set (Ecore_Evas *ee, const char **profiles, const unsigned int count)
| Set the array of available window profiles. More...
EAPI Eina_Bool | ecore_evas_window_available_profiles_get (Ecore_Evas *ee, char ***profiles, unsigned int *count)
| Get the array of available window profiles. More...
EAPI Eina_Bool | ecore_evas_wm_rotation_supported_get (const Ecore_Evas *ee)
| Query if the underlying windowing system supports the window manager rotation. More...
EAPI void | ecore_evas_wm_rotation_preferred_rotation_set (Ecore_Evas *ee, int rotation)
| Set the preferred rotation hint. More...
EAPI int | ecore_evas_wm_rotation_preferred_rotation_get (const Ecore_Evas *ee)
| Get the preferred rotation hint. More...
EAPI void | ecore_evas_wm_rotation_available_rotations_set (Ecore_Evas *ee, const int *rotations, unsigned int count)
| Set the array of available window rotations. More...
EAPI Eina_Bool | ecore_evas_wm_rotation_available_rotations_get (const Ecore_Evas *ee, int **rotations, unsigned int *count)
| Get the array of available window rotations. More...
EAPI void | ecore_evas_wm_rotation_manual_rotation_done_set (Ecore_Evas *ee, Eina_Bool set)
| Set manual rotation done mode of Ecore_Evas's window. More...
EAPI Eina_Bool | ecore_evas_wm_rotation_manual_rotation_done_get (const Ecore_Evas *ee)
| Get manual rotation done mode of Ecore_Evas's window. More...
EAPI void | ecore_evas_wm_rotation_manual_rotation_done (Ecore_Evas *ee)
| Set rotation finish manually. More...
EAPI void | ecore_evas_msg_parent_send (Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
| Send message to parent ecore. More...
EAPI void | ecore_evas_msg_send (Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size)
| Send message to child ecore. More...
EAPI void | ecore_evas_callback_msg_parent_handle_set (Ecore_Evas *ee, void(*func_parent_handle)(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size))
| Set a callback for parent Ecore_Evas message. More...
EAPI void | ecore_evas_callback_msg_handle_set (Ecore_Evas *ee, void(*func_handle)(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size))
| Set a callback for child Ecore_Evas message. More...
EAPI void | ecore_evas_move (Ecore_Evas *ee, int x, int y)
| Move an Ecore_Evas. More...
EAPI void | ecore_evas_resize (Ecore_Evas *ee, int w, int h)
| Resize an Ecore_Evas. More...
EAPI void | ecore_evas_move_resize (Ecore_Evas *ee, int x, int y, int w, int h)
| Move and resize an Ecore_Evas. More...
EAPI void | ecore_evas_rotation_set (Ecore_Evas *ee, int rot)
| Set the rotation of an Ecore_Evas' window. More...
EAPI void | ecore_evas_rotation_with_resize_set (Ecore_Evas *ee, int rot)
| Set the rotation of an Ecore_Evas' window. More...
EAPI int | ecore_evas_rotation_get (const Ecore_Evas *ee)
| Get the rotation of an Ecore_Evas' window. More...
EAPI void | ecore_evas_raise (Ecore_Evas *ee)
| Raise an Ecore_Evas' window. More...
EAPI void | ecore_evas_lower (Ecore_Evas *ee)
| Lower an Ecore_Evas' window. More...
EAPI void | ecore_evas_title_set (Ecore_Evas *ee, const char *t)
| Set the title of an Ecore_Evas' window. More...
EAPI const char * | ecore_evas_title_get (const Ecore_Evas *ee)
| Get the title of an Ecore_Evas' window. More...
EAPI void | ecore_evas_name_class_set (Ecore_Evas *ee, const char *n, const char *c)
| Set the name and class of an Ecore_Evas' window. More...
EAPI void | ecore_evas_name_class_get (const Ecore_Evas *ee, const char **n, const char **c)
| Get the name and class of an Ecore_Evas' window. More...
EAPI Ecore_Window | ecore_evas_window_get (const Ecore_Evas *ee)
| Returns a pointer to the underlying window. More...
EAPI Ecore_Evas * | ecore_evas_software_x11_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h)
| Create Ecore_Evas using software x11. More...
EAPI Ecore_X_Window | ecore_evas_software_x11_window_get (const Ecore_Evas *ee)
| Get the window from Ecore_Evas using software x11. More...
EAPI void | ecore_evas_software_x11_direct_resize_set (Ecore_Evas *ee, Eina_Bool on)
| Set the direct_resize of Ecore_Evas using software x11. More...
EAPI Eina_Bool | ecore_evas_software_x11_direct_resize_get (const Ecore_Evas *ee)
| Gets if the Ecore_Evas is being directly resized using software x11. More...
EAPI void | ecore_evas_software_x11_extra_event_window_add (Ecore_Evas *ee, Ecore_X_Window win)
| Add extra window on Ecore_Evas using software x11. More...
EAPI Ecore_Evas * | ecore_evas_software_x11_pixmap_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h)
| Create a new Ecore_Evas which does not contain an XWindow. More...
EAPI Ecore_X_Pixmap | ecore_evas_software_x11_pixmap_get (const Ecore_Evas *ee)
| Returns the underlying Ecore_X_Pixmap used in the Ecore_Evas. More...
EAPI Ecore_Evas * | ecore_evas_gl_x11_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h)
| Create Ecore_Evas using opengl x11. More...
EAPI Ecore_Evas * | ecore_evas_gl_x11_options_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h, const int *opt)
EAPI Ecore_X_Window | ecore_evas_gl_x11_window_get (const Ecore_Evas *ee)
| Get the window from Ecore_Evas using opengl x11. More...
EAPI void | ecore_evas_gl_x11_direct_resize_set (Ecore_Evas *ee, Eina_Bool on)
| Set direct_resize for Ecore_Evas using opengl x11. More...
EAPI Eina_Bool | ecore_evas_gl_x11_direct_resize_get (const Ecore_Evas *ee)
| Gets if the Ecore_Evas is being directly resized using opengl x11. More...
EAPI void | ecore_evas_gl_x11_extra_event_window_add (Ecore_Evas *ee, Ecore_X_Window win)
| Add extra window on Ecore_Evas using opengl x11. More...
EAPI void | ecore_evas_gl_x11_pre_post_swap_callback_set (const Ecore_Evas *ee, void *data, void(*pre_cb)(void *data, Evas *e), void(*post_cb)(void *data, Evas *e))
| Set the functions to be used before and after the swap callback. More...
EAPI Ecore_Evas * | ecore_evas_gl_x11_pixmap_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h)
| Create a new Ecore_Evas which does not contain an XWindow. More...
EAPI Ecore_X_Pixmap | ecore_evas_gl_x11_pixmap_get (const Ecore_Evas *ee)
| Returns the underlying Ecore_X_Pixmap used in the Ecore_Evas. More...
EAPI Ecore_Evas * | ecore_evas_xrender_x11_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h) EINA_DEPRECATED
EAPI Ecore_X_Window | ecore_evas_xrender_x11_window_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_xrender_x11_direct_resize_set (Ecore_Evas *ee, Eina_Bool on) EINA_DEPRECATED
EAPI Eina_Bool | ecore_evas_xrender_x11_direct_resize_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_xrender_x11_extra_event_window_add (Ecore_Evas *ee, Ecore_X_Window win) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_x11_8_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h) EINA_DEPRECATED
EAPI Ecore_X_Window | ecore_evas_software_x11_8_window_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI Ecore_X_Window | ecore_evas_software_x11_8_subwindow_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_software_x11_8_direct_resize_set (Ecore_Evas *ee, Eina_Bool on) EINA_DEPRECATED
EAPI Eina_Bool | ecore_evas_software_x11_8_direct_resize_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_software_x11_8_extra_event_window_add (Ecore_Evas *ee, Ecore_X_Window win) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_x11_16_new (const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h) EINA_DEPRECATED
EAPI Ecore_X_Window | ecore_evas_software_x11_16_window_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_software_x11_16_direct_resize_set (Ecore_Evas *ee, Eina_Bool on) EINA_DEPRECATED
EAPI Eina_Bool | ecore_evas_software_x11_16_direct_resize_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI void | ecore_evas_software_x11_16_extra_event_window_add (Ecore_Evas *ee, Ecore_X_Window win) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_fb_new (const char *disp_name, int rotation, int w, int h)
| Create Ecore_Evas using fb backend. More...
EAPI Ecore_Evas * | ecore_evas_directfb_new (const char *disp_name, int windowed, int x, int y, int w, int h) EINA_DEPRECATED
EAPI Ecore_DirectFB_Window * | ecore_evas_directfb_window_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_wayland_shm_new (const char *disp_name, unsigned int parent, int x, int y, int w, int h, Eina_Bool frame)
EAPI Ecore_Evas * | ecore_evas_wayland_egl_new (const char *disp_name, unsigned int parent, int x, int y, int w, int h, Eina_Bool frame)
EAPI void | ecore_evas_wayland_resize (Ecore_Evas *ee, int location)
EAPI void | ecore_evas_wayland_move (Ecore_Evas *ee, int x, int y)
EAPI void | ecore_evas_wayland_pointer_set (Ecore_Evas *ee, int hot_x, int hot_y)
EAPI void | ecore_evas_wayland_type_set (Ecore_Evas *ee, int type)
EAPI Ecore_Wl_Window * | ecore_evas_wayland_window_get (const Ecore_Evas *ee)
EAPI Ecore_Evas * | ecore_evas_drm_new (const char *device, unsigned int parent, int x, int y, int w, int h)
EAPI Ecore_Evas * | ecore_evas_buffer_new (int w, int h)
| Create a new `Ecore_Evas` canvas bound to the Evas buffer engine. More...
EAPI Ecore_Evas * | ecore_evas_buffer_allocfunc_new (int w, int h, void *(*alloc_func)(void *data, int size), void(*free_func)(void *data, void *pix), const void *data)
| Create a new `Ecore_Evas` canvas bound to the Evas buffer engine, giving custom allocation and freeing functions for the canvas memory region. More...
EAPI const void * | ecore_evas_buffer_pixels_get (Ecore_Evas *ee)
| Grab a pointer to the actual pixels array of a given `Ecore_Evas` buffer canvas/window. More...
EAPI Ecore_Evas * | ecore_evas_ews_new (int x, int y, int w, int h)
| Create a new `Ecore_Evas` canvas bound to the Evas ews (Ecore + Evas Single Process Windowing System) engine. More...
EAPI Evas_Object * | ecore_evas_ews_backing_store_get (const Ecore_Evas *ee)
| Returns the backing store image object that represents the given window in EWS. More...
EAPI void | ecore_evas_ews_delete_request (Ecore_Evas *ee)
| Calls the window to be deleted (freed), but can let user decide to forbid it by using ecore_evas_callback_delete_request_set() More...
EAPI Evas_Object * | ecore_evas_object_image_new (Ecore_Evas *ee_target)
| Create an Evas image object with image data bound to an own, internal `Ecore_Evas` canvas wrapper More...
EAPI Ecore_Evas * | ecore_evas_object_ecore_evas_get (Evas_Object *obj)
| Retrieve the internal `Ecore_Evas` handle of an image object created via ecore_evas_object_image_new() More...
EAPI Evas * | ecore_evas_object_evas_get (Evas_Object *obj)
| Retrieve the canvas bound to the internal `Ecore_Evas` handle of an image object created via ecore_evas_object_image_new() More...
EAPI Ecore_Evas * | ecore_evas_software_gdi_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
EAPI Ecore_Evas * | ecore_evas_software_ddraw_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
EAPI Ecore_Evas * | ecore_evas_software_16_ddraw_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
EAPI Ecore_Evas * | ecore_evas_direct3d_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
EAPI Ecore_Evas * | ecore_evas_gl_glew_new (Ecore_Win32_Window *parent, int x, int y, int width, int height)
EAPI Ecore_Win32_Window * | ecore_evas_win32_window_get (const Ecore_Evas *ee)
EAPI Ecore_Evas * | ecore_evas_sdl_new (const char *name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha)
EAPI Ecore_Evas * | ecore_evas_sdl16_new (const char *name, int w, int h, int fullscreen, int hwsurface, int noframe, int alpha)
EAPI Ecore_Evas * | ecore_evas_gl_sdl_new (const char *name, int w, int h, int fullscreen, int noframe)
EAPI Ecore_Evas * | ecore_evas_software_wince_new (Ecore_WinCE_Window *parent, int x, int y, int width, int height) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_wince_fb_new (Ecore_WinCE_Window *parent, int x, int y, int width, int height) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_wince_gapi_new (Ecore_WinCE_Window *parent, int x, int y, int width, int height) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_wince_ddraw_new (Ecore_WinCE_Window *parent, int x, int y, int width, int height) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_software_wince_gdi_new (Ecore_WinCE_Window *parent, int x, int y, int width, int height) EINA_DEPRECATED
EAPI Ecore_WinCE_Window * | ecore_evas_software_wince_window_get (const Ecore_Evas *ee) EINA_DEPRECATED
EAPI Ecore_Evas * | ecore_evas_cocoa_new (Ecore_Cocoa_Window *parent, int x, int y, int w, int h)
EAPI Ecore_Evas * | ecore_evas_psl1ght_new (const char *name, int w, int h)
EAPI const char * | ecore_evas_engine_name_get (const Ecore_Evas *ee)
| Get the engine name used by this Ecore_Evas(window). More...
EAPI Ecore_Evas * | ecore_evas_ecore_evas_get (const Evas *e)
| Return the Ecore_Evas for this Evas. More...
EAPI void | ecore_evas_free (Ecore_Evas *ee)
| Free an Ecore_Evas. More...
EAPI void * | ecore_evas_data_get (const Ecore_Evas *ee, const char *key)
| Retrieve user data associated with an Ecore_Evas. More...
EAPI void | ecore_evas_data_set (Ecore_Evas *ee, const char *key, const void *data)
| Store user data in an Ecore_Evas structure. More...
EAPI void | ecore_evas_callback_resize_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas resize events. More...
EAPI void | ecore_evas_callback_move_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas move events. More...
EAPI void | ecore_evas_callback_show_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas show events. More...
EAPI void | ecore_evas_callback_hide_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas hide events. More...
EAPI void | ecore_evas_callback_delete_request_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas delete request events. More...
EAPI void | ecore_evas_callback_destroy_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas destroy events. More...
EAPI void | ecore_evas_callback_focus_in_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas focus in events. More...
EAPI void | ecore_evas_callback_focus_out_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas focus out events. More...
EAPI void | ecore_evas_callback_sticky_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas sticky events. More...
EAPI void | ecore_evas_callback_unsticky_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas un-sticky events. More...
EAPI void | ecore_evas_callback_mouse_in_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas mouse in events. More...
EAPI void | ecore_evas_callback_mouse_out_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas mouse out events. More...
EAPI void | ecore_evas_callback_pre_render_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas pre render events. More...
EAPI void | ecore_evas_callback_post_render_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas mouse post render events. More...
EAPI void | ecore_evas_callback_pre_free_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas pre-free event. More...
EAPI void | ecore_evas_callback_state_change_set (Ecore_Evas *ee, Ecore_Evas_Event_Cb func)
| Set a callback for Ecore_Evas state changes. More...
EAPI Evas * | ecore_evas_get (const Ecore_Evas *ee)
| Get an Ecore_Evas's Evas. More...
EAPI void | ecore_evas_managed_move (Ecore_Evas *ee, int x, int y)
| Provide Managed move co-ordinates for an Ecore_Evas. More...
EAPI void | ecore_evas_shaped_set (Ecore_Evas *ee, Eina_Bool shaped)
| Set whether an Ecore_Evas is shaped or not. More...
EAPI Eina_Bool | ecore_evas_shaped_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas is shaped or not. More...
EAPI void | ecore_evas_show (Ecore_Evas *ee)
| Show an Ecore_Evas' window. More...
EAPI void | ecore_evas_hide (Ecore_Evas *ee)
| Hide an Ecore_Evas' window. More...
EAPI void | ecore_evas_activate (Ecore_Evas *ee)
| Activate (set focus to, via the window manager) an Ecore_Evas' window. More...
EAPI void | ecore_evas_size_min_set (Ecore_Evas *ee, int w, int h)
| Set the minimum size of a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_min_get (const Ecore_Evas *ee, int *w, int *h)
| Get the minimum size set for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_max_set (Ecore_Evas *ee, int w, int h)
| Set the maximum size of a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_max_get (const Ecore_Evas *ee, int *w, int *h)
| Get the maximum size set for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_base_set (Ecore_Evas *ee, int w, int h)
| Set the base size for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_base_get (const Ecore_Evas *ee, int *w, int *h)
| Get the base size set for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_step_set (Ecore_Evas *ee, int w, int h)
| Set the "size step" for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_size_step_get (const Ecore_Evas *ee, int *w, int *h)
| Get the "size step" set for a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_cursor_set (Ecore_Evas *ee, const char *file, int layer, int hot_x, int hot_y)
| Set the cursor of an Ecore_Evas. More...
EAPI void | ecore_evas_cursor_get (const Ecore_Evas *ee, Evas_Object **obj, int *layer, int *hot_x, int *hot_y)
| Get information about an Ecore_Evas' cursor. More...
EAPI void | ecore_evas_object_cursor_set (Ecore_Evas *ee, Evas_Object *obj, int layer, int hot_x, int hot_y)
| Set the cursor of an Ecore_Evas. More...
EAPI void | ecore_evas_override_set (Ecore_Evas *ee, Eina_Bool on)
| Tell the WM whether or not to ignore an Ecore_Evas' window. More...
EAPI Eina_Bool | ecore_evas_override_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window is overridden or not. More...
EAPI void | ecore_evas_avoid_damage_set (Ecore_Evas *ee, Ecore_Evas_Avoid_Damage_Type on)
| Set whether or not an Ecore_Evas' window should avoid damage. More...
EAPI Ecore_Evas_Avoid_Damage_Type | ecore_evas_avoid_damage_get (const Ecore_Evas *ee)
| Query whether an Ecore_Evas' window avoids damage or not. More...
EAPI void | ecore_evas_withdrawn_set (Ecore_Evas *ee, Eina_Bool withdrawn)
| Set the withdrawn state of an Ecore_Evas' window. More...
EAPI Eina_Bool | ecore_evas_withdrawn_get (const Ecore_Evas *ee)
| Returns the withdrawn state of an Ecore_Evas' window. More...
EAPI void | ecore_evas_sticky_set (Ecore_Evas *ee, Eina_Bool sticky)
| Set the sticky state of an Ecore_Evas window. More...
EAPI Eina_Bool | ecore_evas_sticky_get (const Ecore_Evas *ee)
| Returns the sticky state of an Ecore_Evas' window. More...
EAPI void | ecore_evas_manual_render_set (Ecore_Evas *ee, Eina_Bool manual_render)
| Enable/disable manual render. More...
EAPI Eina_Bool | ecore_evas_manual_render_get (const Ecore_Evas *ee)
| Get enable/disable status of manual render. More...
EAPI void | ecore_evas_input_event_register (Ecore_Evas *ee)
| Registers an `Ecore_Evas` to receive events through ecore_input_evas. More...
EAPI void | ecore_evas_input_event_unregister (Ecore_Evas *ee)
| Unregisters an `Ecore_Evas` receiving events through ecore_input_evas. More...
EAPI void | ecore_evas_manual_render (Ecore_Evas *ee)
| Force immediate rendering on a given `Ecore_Evas` window. More...
EAPI void | ecore_evas_comp_sync_set (Ecore_Evas *ee, Eina_Bool do_sync)
EAPI Eina_Bool | ecore_evas_comp_sync_get (const Ecore_Evas *ee)
EAPI void | ecore_evas_screen_geometry_get (const Ecore_Evas *ee, int *x, int *y, int *w, int *h)
| Get geometry of screen associated with this Ecore_Evas. More...
EAPI void | ecore_evas_screen_dpi_get (const Ecore_Evas *ee, int *xdpi, int *ydpi)
| Get the dpi of the screen the Ecore_Evas is primarily on. More...
EAPI void | ecore_evas_draw_frame_set (Ecore_Evas *ee, Eina_Bool draw_frame)
EAPI Eina_Bool | ecore_evas_draw_frame_get (const Ecore_Evas *ee)
EAPI Eina_Bool | ecore_evas_object_associate (Ecore_Evas *ee, Evas_Object *obj, Ecore_Evas_Object_Associate_Flags flags)
| Associate the given object to this ecore evas. More...
EAPI Eina_Bool | ecore_evas_object_dissociate (Ecore_Evas *ee, Evas_Object *obj)
| Cancel the association set with ecore_evas_object_associate(). More...
EAPI Evas_Object * | ecore_evas_object_associate_get (const Ecore_Evas *ee)
| Get the object associated with `ee`. More...
EAPI unsigned char | ecore_getopt_callback_ecore_evas_list_engines (const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage)
| Helper ecore_getopt callback to list available Ecore_Evas engines. More...
EAPI Eina_List * | ecore_evas_ecore_evas_list_get (void)
| Get a list of all the ecore_evases. More...
EAPI Eina_List * | ecore_evas_sub_ecore_evas_list_get (const Ecore_Evas *ee)
| Get a list of all the sub ecore_evases. More...
EAPI void | ecore_evas_x11_leader_set (Ecore_Evas *ee, Ecore_X_Window win)
EAPI Ecore_X_Window | ecore_evas_x11_leader_get (Ecore_Evas *ee)
EAPI void | ecore_evas_x11_leader_default_set (Ecore_Evas *ee)
EAPI void | ecore_evas_x11_shape_input_rectangle_set (Ecore_Evas *ee, int x, int y, int w, int h)
EAPI void | ecore_evas_x11_shape_input_rectangle_add (Ecore_Evas *ee, int x, int y, int w, int h)
EAPI void | ecore_evas_x11_shape_input_rectangle_subtract (Ecore_Evas *ee, int x, int y, int w, int h)
EAPI void | ecore_evas_x11_shape_input_empty (Ecore_Evas *ee)
EAPI void | ecore_evas_x11_shape_input_reset (Ecore_Evas *ee)
EAPI void | ecore_evas_x11_shape_input_apply (Ecore_Evas *ee)

## Detailed Description

Ecore evas is a set of functions that makes it easy to tie together ecore's main loop and input handling to evas.

As such it's a natural base for EFL applications. While this combination makes it easy to create the basic aspects all applications need, for normal applications(ones with buttons, checkboxes and layouts) one should consider using Elementary.

Ecore evas is extremely well suited for applications that are not based on widgets. It has a main loop that delivers events, does basic window handling and leaves all of the drawing up to the user. This works very well if used in conjunction with Edje or if doing custom drawing as, for example, is done in games.

This is a list of examples of these functions:

- Ecore Evas basics example
- Ecore Evas Object example
- Ecore Evas Callbacks
- Ecore_Evas window size hints
- Ecore_Evas buffer example
- Ecore_Evas (image) buffer example

## Function Documentation

EAPI int ecore_evas_engine_type_supported_get | ( | Ecore_Evas_Engine_Type | engine | ) |

Query if a particular rendering engine target has support.

Parameters

  engine | The engine to check support for

Returns
  1 if the particular engine is supported, 0 if it is not

Query if engine

Parameters

  engine | is supported by ecore_evas. 1 is returned if it is, and 0 is returned if it is not supported.

References EINA_FALSE, and EINA_TRUE.

EAPI int ecore_evas_init | ( | void |  | ) |

Init the Ecore_Evas system.

Returns
  How many times the lib has been initialized, 0 indicates failure.

Set up the Evas wrapper system. Init Evas and Ecore libraries.

See Also
  ecore_evas_shutdown()

References ECORE_FD_READ, ecore_fork_reset_callback_add(), ecore_idle_enterer_add(), ecore_init(), ecore_main_fd_handler_add(), ecore_shutdown(), EINA_FALSE, eina_log_domain_register(), EINA_LOG_ERR, eina_log_timing(), EINA_TRUE, evas_async_events_fd_get(), evas_init(), and evas_shutdown().

EAPI int ecore_evas_shutdown | ( | void |  | ) |

Shut down the Ecore_Evas system.

Returns
  0 if ecore evas is fully shut down, or > 0 if it still being used.

This closes the Evas wrapper system down. Shut down Evas and Ecore libraries.

See Also
  ecore_evas_init()

References ecore_animator_del(), ecore_fork_reset_callback_del(), ecore_idle_enterer_del(), ecore_main_fd_handler_del(), ecore_shutdown(), eina_log_domain_unregister(), eina_log_timing(), and evas_shutdown().

EAPI Eina_List* ecore_evas_engines_get | ( | void |  | ) |

Returns a list of supported engines names.

Returns
  Newly allocated list with engines names. Engines names strings are internal and should be considered constants, do not free or modify them, to free the list use ecore_evas_engines_free().

References eina_list_clone().

Referenced by ecore_getopt_callback_ecore_evas_list_engines().

EAPI void ecore_evas_engines_free | ( | Eina_List * | engines | ) |

Free list returned by ecore_evas_engines_get()

Parameters

  engines | list with engines names

References eina_list_free().

Referenced by ecore_getopt_callback_ecore_evas_list_engines().

EAPI Ecore_Evas* ecore_evas_new | ( | const char * | engine_name,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h,
|  | const char * | extra_options
| ) |  |

Creates a new Ecore_Evas based on engine name and common parameters.

Parameters

  engine_name | engine name as returned by ecore_evas_engines_get() or `NULL` to use environment variable ECORE_EVAS_ENGINE, that can be undefined and in this case this call will try to find the first working engine.
  x | horizontal position of window (not supported in all engines)
  y | vertical position of window (not supported in all engines)
  w | width of window
  h | height of window
  extra_options | string with extra parameter, dependent on engines or @ NULL. String is usually in the form: 'key1=value1;key2=value2'. Pay attention that when getting that from shell commands, most consider ';' as the command terminator, so you need to escape it or use quotes.

Returns
  Ecore_Evas instance or `NULL` if creation failed.

EAPI void ecore_evas_alpha_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | alpha
| ) |  |

Set whether an Ecore_Evas has an alpha channel or not.

Parameters

  ee | The Ecore_Evas to shape
  alpha | `EINA_TRUE` to enable the alpha channel, `EINA_FALSE` to disable it

This function allows you to make an Ecore_Evas translucent using an alpha channel. See ecore_evas_shaped_set() for details. The difference between a shaped window and a window with an alpha channel is that an alpha channel supports multiple levels of transparency, as opposed to the 1 bit transparency of a shaped window (a pixel is either opaque, or it's transparent).

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_alpha_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas has an alpha channel.

Parameters

  ee | The Ecore_Evas to query.

Returns
  `EINA_TRUE` if ee has an alpha channel, `EINA_FALSE` if it does not.

This function returns `EINA_TRUE` if `ee` has an alpha channel, and `EINA_FALSE` if it does not.

See Also
  ecore_evas_alpha_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_transparent_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | transparent
| ) |  |

Set whether an Ecore_Evas has an transparent window or not.

Parameters

  ee | The Ecore_Evas to shape
  transparent | `EINA_TRUE` to enable the transparent window, `EINA_FALSE` to disable it

This function sets some translucency options, for more complete support see ecore_evas_alpha_set().

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_alpha_set()

EAPI Eina_Bool ecore_evas_transparent_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas is transparent.

Parameters

  ee | The Ecore_Evas to query.

Returns
  `EINA_TRUE` if ee is transparent, `EINA_FALSE` if it isn't.

See Also
  ecore_evas_transparent_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_geometry_get | ( | const Ecore_Evas * | ee,
|  | int * | x,
|  | int * | y,
|  | int * | w,
|  | int * | h
| ) |  |

Get the geometry of an Ecore_Evas.

Parameters

  ee | The Ecore_Evas whose geometry y
  x | A pointer to an int to place the x coordinate in
  y | A pointer to an int to place the y coordinate in
  w | A pointer to an int to place the w size in
  h | A pointer to an int to place the h size in

This function takes four pointers to (already allocated) ints, and places the geometry of `ee` in them. If any of the parameters is not desired you may pass `NULL` on them.

int x, y, w, h;
ecore_evas_geometry_get(ee, &x, &y, &w, &h);

See Also
  ecore_evas_new()
  ecore_evas_resize()
  ecore_evas_move()
  ecore_evas_move_resize()

Referenced by ecore_evas_ews_setup().

EAPI void ecore_evas_request_geometry_get | ( | const Ecore_Evas * | ee,
|  | int * | x,
|  | int * | y,
|  | int * | w,
|  | int * | h
| ) |  |

Get the geometry which an Ecore_Evas was latest recently requested.

Parameters

  ee | The Ecore_Evas whose geometry y
  x | A pointer to an int to place the x coordinate in
  y | A pointer to an int to place the y coordinate in
  w | A pointer to an int to place the w size in
  h | A pointer to an int to place the h size in

This function takes four pointers to (already allocated) ints, and places the geometry which `ee` was latest recently requested . If any of the parameters is not desired you may pass `NULL` on them. This function can represent recently requested geometry. ecore_evas_geometry_get function returns the value is updated after engine finished request. By comparison, ecore_evas_request_geometry_get returns recently requested value.

int x, y, w, h;
ecore_evas_request_geometry_get(ee, &x, &y, &w, &h);

Since
  1.1

EAPI void ecore_evas_focus_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Set the focus of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  on | `EINA_TRUE` for focus, `EINA_FALSE` to defocus.

This function focuses `ee` if `on` is `EINA_TRUE`, or unfocuses `ee` if `on` is `EINA_FALSE`.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_focus_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is focused or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  `EINA_TRUE` if `ee` if focused, `EINA_FALSE` if not.

See Also
  ecore_evas_focus_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_iconified_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Iconify or uniconify an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  on | `EINA_TRUE` to iconify, `EINA_FALSE` to uniconify.

This function iconifies `ee` if `on` is `EINA_TRUE`, or uniconifies `ee` if `on` is `EINA_FALSE`.

Note
  Iconify and minimize are synonyms.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_iconified_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is iconified or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  `EINA_TRUE` if `ee` is iconified, `EINA_FALSE` if not.

Note
  Iconify and minimize are synonyms.

See Also
  ecore_evas_iconified_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_borderless_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Set whether an Ecore_Evas' window is borderless or not.

Parameters

  ee | The Ecore_Evas
  on | `EINA_TRUE` for borderless, `EINA_FALSE` for bordered.

This function makes `ee` borderless if `on` is `EINA_TRUE`, or bordered if `on` is `EINA_FALSE`.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_borderless_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is borderless or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  `EINA_TRUE` if `ee` is borderless, `EINA_FALSE` if not.

See Also
  ecore_evas_borderless_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_fullscreen_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Set whether or not an Ecore_Evas' window is fullscreen.

Parameters

  ee | The Ecore_Evas
  on | `EINA_TRUE` fullscreen, `EINA_FALSE` not.

This function causes `ee` to be fullscreen if `on` is `EINA_TRUE`, or not if `on` is `EINA_FALSE`.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_fullscreen_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is fullscreen or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  `EINA_TRUE` if `ee` is fullscreen, `EINA_FALSE` if not.

See Also
  ecore_evas_fullscreen_set()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_window_group_set | ( | Ecore_Evas * | ee,
|  | const Ecore_Evas * | ee_group
| ) |  |

Set another window that this window is a group member of.

Parameters

  ee | The Ecore_Evas
  ee_group | The other group member

If `ee_group` is `NULL`, `ee` is removed from the group, otherwise it is added. Note that if you free the `ee_group` canvas before `ee`, then getting the group canvas with ecore_evas_window_group_get() will return an invalid handle.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI const Ecore_Evas* ecore_evas_window_group_get | ( | const Ecore_Evas * | ee | ) |

Get the canvas group set.

This returns the handle set by ecore_evas_window_group_set().

Parameters

  ee | The Ecore_Evas to set

Returns
  The Canvas group handle

See Also
  ecore_evas_window_group_set()

Since
  1.2

References EINA_FALSE.

EAPI void ecore_evas_aspect_set | ( | Ecore_Evas * | ee,
|  | double | aspect
| ) |  |

Set the aspect ratio of a canvas window.

Parameters

  ee | The Ecore_Evas
  aspect | The aspect ratio (width divided by height), or 0 to disable

This sets the desired aspect ratio of a canvas window

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI double ecore_evas_aspect_get | ( | const Ecore_Evas * | ee | ) |

Get the aspect ratio of a canvas window.

This returns the value set by ecore_evas_aspect_set().

Parameters

  ee | The Ecore_Evas to set

Returns
  The aspect ratio

See Also
  ecore_evas_aspect_set()

Since
  1.2

References EINA_FALSE.

EAPI void ecore_evas_urgent_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | urgent
| ) |  |

Set The urgent hint flag.

Parameters

  ee | The Ecore_Evas
  urgent | The urgent state flag

This sets the "urgent" state hint on a window so the desktop environment can highlight it somehow.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI Eina_Bool ecore_evas_urgent_get | ( | const Ecore_Evas * | ee | ) |

Get the urgent state on the cavas window.

This returns the value set by ecore_evas_urgent_set()

Parameters

  ee | The Ecore_Evas to set

Returns
  The urgent state set

See Also
  ecore_evas_urgent_set()

Since
  1.2

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_modal_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | modal
| ) |  |

Set the modal state flag on the canvas window.

Parameters

  ee | The Ecore_Evas
  modal | The modal hint flag

This hints if the window should be modal (eg if it is also transient for another window, the other window will maybe be denied focus by the desktop window manager).

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI Eina_Bool ecore_evas_modal_get | ( | const Ecore_Evas * | ee | ) |

Get The modal flag.

This returns the value set by ecore_evas_modal_set().

Parameters

  ee | The Ecore_Evas to set

Returns
  The modal flag

See Also
  ecore_evas_modal_set()

Since
  1.2

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_demand_attention_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | demand
| ) |  |

Set the "i demand attention" flag on a canvas window.

Parameters

  ee | The Ecore_Evas
  demand | The flag state to set

A window may demand attention now (eg you must enter a password before continuing), and so it may flag a window with this.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI Eina_Bool ecore_evas_demand_attention_get | ( | const Ecore_Evas * | ee | ) |

Get the "i demand attention" flag.

This returns the value set by ecore_evas_demand_attention_set().

Parameters

  ee | The Ecore_Evas to set

Returns
  The "i demand attention" flag.

See Also
  ecore_evas_demand_attention_set()

Since
  1.2

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_focus_skip_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | skip
| ) |  |

Set the "focus skip" flag.

Parameters

  ee | The Ecore_Evas
  skip | The "focus skip" state to set.

A window may not want to accept focus, be in the taskbar, pager etc. sometimes (example for a small notification window that hovers around a taskbar or panel, or hovers around a window until some activity dismisses it).

Warning
  Support for this depends on the underlying windowing system.

Since
  1.2

EAPI Eina_Bool ecore_evas_focus_skip_get | ( | const Ecore_Evas * | ee | ) |

Get the "focus skip" flag.

This returns the value set by ecore_evas_focus_skip_set().

Parameters

  ee | The Ecore_Evas to set

Returns
  The "focus skip" flag.

See Also
  ecore_evas_focus_skip_set()

Since
  1.2

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_ignore_events_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | ignore
| ) |  |

Set if this evas should ignore all events.

Parameters

  ee | The Ecore_Evas whose window's to ignore events.
  ignore | The Ecore_Evas new ignore state.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_ignore_events_get | ( | const Ecore_Evas * | ee | ) |

Returns the ignore state of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose window's ignore events state is returned.

Returns
  The Ecore_Evas window's ignore state.

See Also
  ecore_evas_ignore_events_set()

References EINA_FALSE, and EINA_TRUE.

EAPI int ecore_evas_visibility_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is visible or not.

Parameters

  ee | The Ecore_Evas to query.

Returns
  1 if visible, 0 if not.

This function queries `ee` and returns 1 if it is visible, and 0 if not.

See Also
  ecore_evas_show()
  ecore_evas_hide()

EAPI void ecore_evas_layer_set | ( | Ecore_Evas * | ee,
|  | int | layer
| ) |  |

Set the layer of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  layer | The layer to put `ee` on.

This function moves `ee` to the layer `layer`.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_lower()
  ecore_evas_raise()

EAPI int ecore_evas_layer_get | ( | const Ecore_Evas * | ee | ) |

Get the layer of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to set

Returns
  the layer `ee's` window is on.

See Also
  ecore_evas_layer_set()
  ecore_evas_lower()
  ecore_evas_raise()

EAPI void ecore_evas_maximized_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Maximize (or unmaximize) an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  on | `EINA_TRUE` to maximize, `EINA_FALSE` to unmaximize.

This function maximizes `ee` if `on` is `EINA_TRUE`, or unmaximizes `ee` if `on` is `EINA_FALSE`.

Warning
  Support for this depends on the underlying windowing system.

EAPI Eina_Bool ecore_evas_maximized_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is maximized or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  `EINA_TRUE` if `ee` is maximized, `EINA_FALSE` if not.

See Also
  ecore_evas_maximized_set()

References EINA_FALSE, and EINA_TRUE.

EAPI Eina_Bool ecore_evas_window_profile_supported_get | ( | const Ecore_Evas * | ee | ) |

Query if the underlying windowing system supports the window profile.

Parameters

  ee | The Ecore_Evas

Returns
  `EINA_TRUE` if the window profile is supported, `EINA_FALSE` otherwise.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_window_profile_set | ( | Ecore_Evas * | ee,
|  | const char * | profile
| ) |  |

Set the window profile.

Parameters

  ee | The Ecore_Evas to set
  profile | The string value of the window profile

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

EAPI const char* ecore_evas_window_profile_get | ( | const Ecore_Evas * | ee | ) |

Get the window profile.

Parameters

  ee | The Ecore_Evas to get the window profile from.

Returns
  The string value of the window profile, or NULL if none exists

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

EAPI void ecore_evas_window_available_profiles_set | ( | Ecore_Evas * | ee,
|  | const char ** | profiles,
|  | const unsigned int | count
| ) |  |

Set the array of available window profiles.

Parameters

  ee | The Ecore_Evas to set
  profiles | The string array of available window profiels
  count | The number of members in profiles

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

EAPI Eina_Bool ecore_evas_window_available_profiles_get | ( | Ecore_Evas * | ee,
|  | char *** | profiles,
|  | unsigned int * | count
| ) |  |

Get the array of available window profiles.

Parameters

  ee | The Ecore_Evas to get available window profiles from.
  profiles | Where to return the string array of available window profiles
  count | Where to return the number of members in profiles

Returns
  EINA_TRUE if available window profiles exist, EINA_FALSE otherwise

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

References EINA_FALSE, and EINA_TRUE.

EAPI Eina_Bool ecore_evas_wm_rotation_supported_get | ( | const Ecore_Evas * | ee | ) |

Query if the underlying windowing system supports the window manager rotation.

Parameters

  ee | The Ecore_Evas

Returns
  `EINA_TRUE` if the window manager rotation is supported, `EINA_FALSE` otherwise.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.9.0

References EINA_FALSE.

EAPI void ecore_evas_wm_rotation_preferred_rotation_set | ( | Ecore_Evas * | ee,
|  | int | rotation
| ) |  |

Set the preferred rotation hint.

Parameters

  ee | The Ecore_Evas to set
  rotation | Value to set the preferred rotation hint

Warning
  Support for this depends on the underlying windowing system.

Since
  1.9.0

References EINA_FALSE, and EINA_TRUE.

EAPI int ecore_evas_wm_rotation_preferred_rotation_get | ( | const Ecore_Evas * | ee | ) |

Get the preferred rotation hint.

Parameters

  ee | The Ecore_Evas to get the preferred rotation hint from.

Returns
  The preferred rotation hint, -1 on failure.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.9.0

EAPI void ecore_evas_wm_rotation_available_rotations_set | ( | Ecore_Evas * | ee,
|  | const int * | rotations,
|  | unsigned int | count
| ) |  |

Set the array of available window rotations.

Parameters

  ee | The Ecore_Evas to set
  rotations | The integer array of available window rotations
  count | The number of members in rotations

Warning
  Support for this depends on the underlying windowing system.

Since
  1.9.0

EAPI Eina_Bool ecore_evas_wm_rotation_available_rotations_get | ( | const Ecore_Evas * | ee,
|  | int ** | rotations,
|  | unsigned int * | count
| ) |  |

Get the array of available window rotations.

Parameters

  ee | The Ecore_Evas to get available window rotations from.
  rotations | Where to return the integer array of available window rotations
  count | Where to return the number of members in rotations

Returns
  EINA_TRUE if available window rotations exist, EINA_FALSE otherwise

Warning
  Support for this depends on the underlying windowing system.

Since
  1.9.0

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_wm_rotation_manual_rotation_done_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | set
| ) |  |

Set manual rotation done mode of Ecore_Evas's window.

Parameters

  ee | The Ecore_Evas
  set | If true, the window manager will not rotate the Ecore_Evas's window until the rotation done event is received by ecore_evas_wm_rotation_manual_rotation_done. If false, the manual rotation mode is disabled.

Since
  1.9.0

EAPI Eina_Bool ecore_evas_wm_rotation_manual_rotation_done_get | ( | const Ecore_Evas * | ee | ) |

Get manual rotation done mode of Ecore_Evas's window.

Parameters

  ee | The Ecore_Evas

Returns
  If true, the manual rotation done mode is enabled

Since
  1.9.0

References EINA_FALSE.

EAPI void ecore_evas_wm_rotation_manual_rotation_done | ( | Ecore_Evas * | ee | ) |

Set rotation finish manually.

Parameters

  ee | The Ecore_Evas

Since
  1.9.0

EAPI void ecore_evas_msg_parent_send | ( | Ecore_Evas * | ee,
|  | int | msg_domain,
|  | int | msg_id,
|  | void * | data,
|  | int | size
| ) |  |

Send message to parent ecore.

Parameters

  ee | The Ecore_Evas to set
  msg_domain | The domain of message
  msg_id | The id of message
  data | The data of message
  size | The size of message data

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

See Also
  ecore_evas_msg_send()
  ecore_evas_callback_msg_parent_handle_set()
  eecore_evas_callback_msg_handle_set()

This is a list of examples of these functions:

- ecore_evas_extn_socket_example
- ecore_evas_extn_plug_example

EAPI void ecore_evas_msg_send | ( | Ecore_Evas * | ee,
|  | int | msg_domain,
|  | int | msg_id,
|  | void * | data,
|  | int | size
| ) |  |

Send message to child ecore.

Parameters

  ee | The Ecore_Evas to set
  msg_domain | The domain of message
  msg_id | The id of message
  data | The data of message
  size | The size of message data

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

See Also
  ecore_evas_msg_parent_send()
  ecore_evas_callback_msg_parent_handle_set()
  eecore_evas_callback_msg_handle_set()

EAPI void ecore_evas_callback_msg_parent_handle_set | ( | Ecore_Evas * | ee,
|  | void(*)(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size) | func_parent_handle
| ) |  |

Set a callback for parent Ecore_Evas message.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func_parent_handle | The handle to be called when message arive.

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

See Also
  ecore_evas_msg_parent_send()
  ecore_evas_msg_send()
  eecore_evas_callback_msg_handle_set()

EAPI void ecore_evas_callback_msg_handle_set | ( | Ecore_Evas * | ee,
|  | void(*)(Ecore_Evas *ee, int msg_domain, int msg_id, void *data, int size) | func_handle
| ) |  |

Set a callback for child Ecore_Evas message.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func_handle | The handle to be called when message arive

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8.0

See Also
  ecore_evas_msg_parent_send()
  ecore_evas_msg_send()
  ecore_evas_callback_msg_parent_handle_set()

EAPI void ecore_evas_move | ( | Ecore_Evas * | ee,
|  | int | x,
|  | int | y
| ) |  |

Move an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to move
  x | The x coordinate to move to
  y | The y coordinate to move to

This moves `ee` to the screen coordinates (`x`, `y`)

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_new()
  ecore_evas_resize()
  ecore_evas_move_resize()

Referenced by ecore_evas_ews_setup().

EAPI void ecore_evas_resize | ( | Ecore_Evas * | ee,
|  | int | w,
|  | int | h
| ) |  |

Resize an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to move
  w | The w coordinate to resize to
  h | The h coordinate to resize to

This resizes `ee` to `w` x `h`.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_new()
  ecore_evas_move()
  ecore_evas_move_resize()

Referenced by ecore_evas_ews_setup().

EAPI void ecore_evas_move_resize | ( | Ecore_Evas * | ee,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Move and resize an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to move and resize
  x | The x coordinate to move to
  y | The y coordinate to move to
  w | The w coordinate to resize to
  h | The h coordinate to resize to

This moves `ee` to the screen coordinates (`x`, `y`) and resizes it to `w` x `h`.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_new()
  ecore_evas_move()
  ecore_evas_resize()

EAPI void ecore_evas_rotation_set | ( | Ecore_Evas * | ee,
|  | int | rot
| ) |  |

Set the rotation of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  rot | the angle (in degrees) of rotation.

The allowed values of `rot` depend on the engine being used. Most only allow multiples of 90.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_rotation_with_resize_set()

References evas_damage_rectangle_add().

EAPI void ecore_evas_rotation_with_resize_set | ( | Ecore_Evas * | ee,
|  | int | rot
| ) |  |

Set the rotation of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas
  rot | the angle (in degrees) of rotation.

Like ecore_evas_rotation_set(), but it also resizes the window's contents so that they fit inside the current window geometry.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_rotation_set()

References evas_damage_rectangle_add().

EAPI int ecore_evas_rotation_get | ( | const Ecore_Evas * | ee | ) |

Get the rotation of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas

Returns
  the angle (in degrees) of rotation.

See Also
  ecore_evas_rotation_set()
  ecore_evas_rotation_with_resize_set()

EAPI void ecore_evas_raise | ( | Ecore_Evas * | ee | ) |

Raise an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to raise.

This functions raises the Ecore_Evas to the front.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_lower()
  ecore_evas_layer_set()

EAPI void ecore_evas_lower | ( | Ecore_Evas * | ee | ) |

Lower an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to raise.

This functions lowers the Ecore_Evas to the back.

Warning
  Support for this depends on the underlying windowing system.

See Also
  ecore_evas_raise()
  ecore_evas_layer_set()

EAPI void ecore_evas_title_set | ( | Ecore_Evas * | ee,
|  | const char * | t
| ) |  |

Set the title of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose title you wish to set.
  t | The title

This function sets the title of `ee` to `t`.

Warning
  Support for this depends on the underlying windowing system.

EAPI const char* ecore_evas_title_get | ( | const Ecore_Evas * | ee | ) |

Get the title of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose title you wish to get.

Returns
  The title of `ee`.

This function returns the title of `ee`.

See Also
  ecore_evas_title_set()

EAPI void ecore_evas_name_class_set | ( | Ecore_Evas * | ee,
|  | const char * | n,
|  | const char * | c
| ) |  |

Set the name and class of an Ecore_Evas' window.

Parameters

  ee | the Ecore_Evas
  n | the name
  c | the class

This function sets the name of `ee` to `n`, and its class to `c`. The meaning of `name` and `class` depends on the underlying windowing system.

Warning
  Support for this depends on the underlying windowing system.

EAPI void ecore_evas_name_class_get | ( | const Ecore_Evas * | ee,
|  | const char ** | n,
|  | const char ** | c
| ) |  |

Get the name and class of an Ecore_Evas' window.

This function gets the name of `ee` into `n`, and its class into `c`.

Parameters

  ee | The Ecore_Evas to query.
  n | A pointer to a string to place the name in.
  c | A pointer to a string to place the class in.

See Also
  ecore_evas_name_class_set()

EAPI Ecore_Window ecore_evas_window_get | ( | const Ecore_Evas * | ee | ) |

Returns a pointer to the underlying window.

Parameters

  ee | The Ecore_Evas whose window is desired.

Returns
  A pointer to the underlying window.

Warning
  Support for this depends on the underlying windowing system.

EAPI Ecore_Evas* ecore_evas_software_x11_new | ( | const char * | disp_name,
|  | Ecore_X_Window | parent,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Create Ecore_Evas using software x11.

Note
  If ecore is not compiled with support to x11 then nothing is done and NULL is returned.

Parameters

  disp_name | The name of the Ecore_Evas to be created.
  parent | The parent of the Ecore_Evas to be created.
  x | The X coordinate to be used.
  y | The Y coordinate to be used.
  w | The width of the Ecore_Evas to be created.
  h | The height of the Ecore_Evas to be created.

Returns
  A handle to the created Ecore_Evas.

References eina_module_symbol_get().

EAPI Ecore_X_Window ecore_evas_software_x11_window_get | ( | const Ecore_Evas * | ee | ) |

Get the window from Ecore_Evas using software x11.

Note
  If ecore is not compiled with support for x11 or if `ee` was not created with ecore_evas_software_x11_new() then nothing is done and 0 is returned.

Parameters

  ee | The Ecore_Evas from which to get the window.

Returns
  The window of type Ecore_X_Window.

EAPI void ecore_evas_software_x11_direct_resize_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Set the direct_resize of Ecore_Evas using software x11.

Note
  If ecore is not compiled with support to x11 then nothing is done.

Parameters

  ee | The Ecore_Evas in which to set direct resize.
  on | Enables the resize of Ecore_Evas if equals EINA_TRUE, disables if equals EINA_FALSE.

EAPI Eina_Bool ecore_evas_software_x11_direct_resize_get | ( | const Ecore_Evas * | ee | ) |

Gets if the Ecore_Evas is being directly resized using software x11.

Note
  If ecore is not compiled with support to x11 then nothing is done and EINA_FALSE is returned.

Parameters

  ee | The Ecore_Evas from which to get direct resize.

Returns
  EINA_TRUE if the resize was managed directly, otherwise return EINA_FALSE.

References EINA_FALSE.

EAPI void ecore_evas_software_x11_extra_event_window_add | ( | Ecore_Evas * | ee,
|  | Ecore_X_Window | win
| ) |  |

Add extra window on Ecore_Evas using software x11.

Note
  If ecore is not compiled with support to x11 then nothing is done.

Parameters

  ee | The Ecore_Evas on which to add the window.
  win | The window to be added at the Ecore_Evas.

EAPI Ecore_Evas* ecore_evas_software_x11_pixmap_new | ( | const char * | disp_name,
|  | Ecore_X_Window | parent,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Create a new Ecore_Evas which does not contain an XWindow.

It will only contain an XPixmap to render to

Warning
  The XPixmap ID can change with every frame after it is rendered, so you should ALWAYS call ecore_evas_software_x11_pixmap_get when you need the current pixmap id.

Since
  1.8

It will only contain an XPixmap to render to

Since
  1.8

References eina_module_symbol_get().

EAPI Ecore_X_Pixmap ecore_evas_software_x11_pixmap_get | ( | const Ecore_Evas * | ee | ) |

Returns the underlying Ecore_X_Pixmap used in the Ecore_Evas.

Parameters

  ee | The Ecore_Evas whose pixmap is desired.

Returns
  The underlying Ecore_X_Pixmap

Warning
  Support for this depends on the underlying windowing system.
  The XPixmap ID can change with every frame after it is rendered, so you should ALWAYS call ecore_evas_software_x11_pixmap_get when you need the current pixmap id.

Since
  1.8

Parameters

  ee | The Ecore_Evas whose pixmap is desired.

Returns
  The underlying Ecore_X_Pixmap

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8

EAPI Ecore_Evas* ecore_evas_gl_x11_new | ( | const char * | disp_name,
|  | Ecore_X_Window | parent,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Create Ecore_Evas using opengl x11.

Note
  If ecore is not compiled with support to x11 then nothing is done and NULL is returned.

Parameters

  disp_name | The name of the display of the Ecore_Evas to be created.
  parent | The parent of the Ecore_Evas to be created.
  x | The X coordinate to be used.
  y | The Y coordinate to be used.
  w | The width of the Ecore_Evas to be created.
  h | The height of the Ecore_Evas to be created.

Returns
  The new Ecore_Evas.

References eina_module_symbol_get().

EAPI Ecore_X_Window ecore_evas_gl_x11_window_get | ( | const Ecore_Evas * | ee | ) |

Get the window from Ecore_Evas using opengl x11.

Note
  If ecore is not compiled with support for x11 or if `ee` was not created with ecore_evas_gl_x11_new() then nothing is done and 0 is returned.

Parameters

  ee | The Ecore_Evas from which to get the window.

Returns
  The window of type Ecore_X_Window of Ecore_Evas.

EAPI void ecore_evas_gl_x11_direct_resize_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Set direct_resize for Ecore_Evas using opengl x11.

Note
  If ecore is not compiled with support to x11 then nothing is done.

Parameters

  ee | The Ecore_Evas in which to set direct resize.
  on | Enables the resize of Ecore_Evas if equals EINA_TRUE, disables if equals EINA_FALSE.

EAPI Eina_Bool ecore_evas_gl_x11_direct_resize_get | ( | const Ecore_Evas * | ee | ) |

Gets if the Ecore_Evas is being directly resized using opengl x11.

Note
  If ecore is not compiled with support to x11 then nothing is done and EINA_FALSE is returned.

Parameters

  ee | The Ecore_Evas from which to get direct resize.

Returns
  EINA_TRUE if the resize was managed directly, otherwise return EINA_FALSE.

References EINA_FALSE.

EAPI void ecore_evas_gl_x11_extra_event_window_add | ( | Ecore_Evas * | ee,
|  | Ecore_X_Window | win
| ) |  |

Add extra window on Ecore_Evas using opengl x11.

Note
  If ecore is not compiled with support to x11 then nothing is done.

Parameters

  ee | The Ecore_Evas for which to add the window.
  win | The window to be added at the Ecore_Evas.

EAPI void ecore_evas_gl_x11_pre_post_swap_callback_set | ( | const Ecore_Evas * | ee,
|  | void * | data,
|  | void(*)(void *data, Evas *e) | pre_cb,
|  | void(*)(void *data, Evas *e) | post_cb
| ) |  |

Set the functions to be used before and after the swap callback.

Note
  If ecore is not compiled with support to x11 then nothing is done and the function is returned.

Parameters

  ee | The Ecore_Evas for which to set the swap callback.
  data | The data for which to set the swap callback.
  pre_cb | The function to be called before the callback.
  post_cb | The function to be called after the callback.

EAPI Ecore_Evas* ecore_evas_gl_x11_pixmap_new | ( | const char * | disp_name,
|  | Ecore_X_Window | parent,
|  | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Create a new Ecore_Evas which does not contain an XWindow.

It will only contain an XPixmap to render to

Warning
  The XPixmap ID can change with every frame after it is rendered, so you should ALWAYS call ecore_evas_software_x11_pixmap_get when you need the current pixmap id.

Since
  1.8

It will only contain an XPixmap to render to

Since
  1.8

References eina_module_symbol_get().

EAPI Ecore_X_Pixmap ecore_evas_gl_x11_pixmap_get | ( | const Ecore_Evas * | ee | ) |

Returns the underlying Ecore_X_Pixmap used in the Ecore_Evas.

Parameters

  ee | The Ecore_Evas whose pixmap is desired.

Returns
  The underlying Ecore_X_Pixmap

Warning
  Support for this depends on the underlying windowing system.
  The XPixmap ID can change with every frame after it is rendered, so you should ALWAYS call ecore_evas_software_x11_pixmap_get when you need the current pixmap id.

Since
  1.8

Parameters

  ee | The Ecore_Evas whose pixmap is desired.

Returns
  The underlying Ecore_X_Pixmap

Warning
  Support for this depends on the underlying windowing system.

Since
  1.8

EAPI Ecore_Evas* ecore_evas_fb_new | ( | const char * | disp_name,
|  | int | rotation,
|  | int | w,
|  | int | h
| ) |  |

Create Ecore_Evas using fb backend.

Parameters

  disp_name | The name of the display to be used.
  rotation | The rotation to be used.
  w | The width of the Ecore_Evas to be created.
  h | The height of the Ecore_Evas to be created.

Returns
  The new Ecore_Evas.

References eina_module_symbol_get().

EAPI Ecore_Evas* ecore_evas_buffer_new | ( | int | w,
|  | int | h
| ) |  |

Create a new `Ecore_Evas` canvas bound to the Evas buffer engine.

Parameters

  w | The width of the canvas, in pixels
  h | The height of the canvas, in pixels

Returns
  A new `Ecore_Evas` instance or `NULL`, on failure

This creates a new buffer canvas wrapper, with image data array bound to the ARGB format, 8 bits per pixel.

This function will allocate the needed pixels array with canonical `malloc()`. If you wish a custom function to allocate it, consider using ecore_evas_buffer_allocfunc_new(), instead.

Note
  This function actually is a wrapper on ecore_evas_buffer_allocfunc_new(), using the same w and h arguments and canonical `malloc()` and `free()` to the memory allocation and freeing functions. See that function's documentation for more details.

Examples:
  ecore_evas_buffer_example_01.c.

References ecore_evas_buffer_allocfunc_new().

EAPI Ecore_Evas* ecore_evas_buffer_allocfunc_new | ( | int | w,
|  | int | h,
|  | void *(*)(void *data, int size) | alloc_func,
|  | void(*)(void *data, void *pix) | free_func,
|  | const void * | data
| ) |  |

Create a new `Ecore_Evas` canvas bound to the Evas buffer engine, giving custom allocation and freeing functions for the canvas memory region.

Parameters

  w | The width of the canvas, in canvas units
  h | The height of the canvas, in canvas units
  alloc_func | Function to be called to allocate the memory needed for the new buffer canvas. data will be passed the same value as the `data` of this function, while size will be passed `w` times `h` times `sizeof(int)`.
  free_func | Function to be called to free the memory used by the new buffer canvas. data will be passed the same value as the `data` of this function, while pix will be passed the canvas memory pointer.
  data | Custom data to be passed to the allocation and freeing functions

Returns
  A new `Ecore_Evas` instance or `NULL`, on failure

This creates a new buffer canvas wrapper, with image data array bound to the ARGB format, 8 bits per pixel.

This function is useful when one wants an `Ecore_Evas` buffer canvas with a custom allocation function, like one getting memory chunks from a memory pool, for example.

On any resizing of this `Ecore_Evas` buffer canvas, its image data will be freed, to be allocated again with the new size.

Note
  `w` and `h` sizes have to greater or equal to 1. Otherwise, they'll be interpreted as 1, exactly.

See Also
  ecore_evas_buffer_new()

References ecore_evas_free(), ecore_time_get(), EINA_FALSE, EINA_TRUE, evas_data_attach_set(), evas_engine_info_get(), evas_engine_info_set(), evas_event_feed_mouse_in(), evas_key_lock_add(), evas_key_modifier_add(), evas_new(), evas_output_method_set(), evas_output_size_set(), evas_output_viewport_set(), and evas_render_method_lookup().

Referenced by ecore_evas_buffer_new().

EAPI const void* ecore_evas_buffer_pixels_get | ( | Ecore_Evas * | ee | ) |

Grab a pointer to the actual pixels array of a given `Ecore_Evas` buffer canvas/window.

Parameters

  ee | An `Ecore_Evas` handle

Returns
  A pointer to the internal pixels array of `ee`

Besides returning a pointer to the actual pixel array of the given canvas, this call will force a rendering update on `ee`, first.

A common use case for this call is to create an image object, from another canvas, to have as data `ee's` contents, thus snapshoting the canvas. For that case, one can also use the ecore_evas_object_image_new() helper function.

Examples:
  ecore_evas_buffer_example_01.c.

EAPI Ecore_Evas* ecore_evas_ews_new | ( | int | x,
|  | int | y,
|  | int | w,
|  | int | h
| ) |  |

Create a new `Ecore_Evas` canvas bound to the Evas ews (Ecore + Evas Single Process Windowing System) engine.

EWS is a simple single process windowing system. The backing store is also an `Ecore_Evas` that can be setup with ecore_evas_ews_setup() and retrieved with ecore_evas_ews_ecore_evas_get(). It will allow window management using events prefixed with `ECORE_EVAS_EVENT_EWS_`.

The EWS windows (returned by this function or ecore_evas_new("ews"...)) will all be software buffer windows automatic rendered to the backing store.

Parameters

  x | horizontal position of window, in pixels
  y | vertical position of window, in pixels
  w | The width of the canvas, in pixels
  h | The height of the canvas, in pixels

Returns
  A new `Ecore_Evas` instance or `NULL`, on failure

See Also
  ecore_evas_ews_setup()
  ecore_evas_ews_ecore_evas_get()

Since
  1.1

References ECORE_EVAS_EWS_EVENT_ADD, ecore_evas_free(), EINA_FALSE, eina_list_append(), EINA_TRUE, EVAS_CALLBACK_FOCUS_IN, EVAS_CALLBACK_FOCUS_OUT, EVAS_CALLBACK_FREE, EVAS_CALLBACK_HIDE, EVAS_CALLBACK_KEY_DOWN, EVAS_CALLBACK_KEY_UP, EVAS_CALLBACK_MOUSE_DOWN, EVAS_CALLBACK_MOUSE_IN, EVAS_CALLBACK_MOUSE_MOVE, EVAS_CALLBACK_MOUSE_OUT, EVAS_CALLBACK_MOUSE_UP, EVAS_CALLBACK_MOUSE_WHEEL, EVAS_CALLBACK_MULTI_DOWN, EVAS_CALLBACK_MULTI_MOVE, EVAS_CALLBACK_MULTI_UP, EVAS_CALLBACK_SHOW, EVAS_COLORSPACE_ARGB8888, evas_data_attach_set(), evas_engine_info_get(), evas_engine_info_set(), EVAS_IMAGE_CONTENT_HINT_DYNAMIC, evas_key_lock_add(), evas_key_modifier_add(), evas_new(), evas_object_data_set(), evas_object_event_callback_add(), evas_object_image_add(), evas_object_image_alpha_set(), evas_object_image_colorspace_set(), evas_object_image_content_hint_set(), evas_object_image_data_get(), evas_object_image_data_set(), evas_object_image_fill_set(), evas_object_image_size_set(), evas_object_image_stride_get(), evas_object_move(), evas_object_resize(), evas_output_method_set(), evas_output_size_set(), evas_output_viewport_set(), and evas_render_method_lookup().

EAPI Evas_Object* ecore_evas_ews_backing_store_get | ( | const Ecore_Evas * | ee | ) |

Returns the backing store image object that represents the given window in EWS.

Returns
  The evas object of EWS backing store.

Note
  This should not be modified anyhow, but may be helpful to determine stacking and geometry of it for window managers that decorate windows.

Parameters

  ee | The Ecore_Evas from which to get the backing store.

See Also
  ecore_evas_ews_manager_set()
  ecore_evas_ews_evas_get()

Since
  1.1

EAPI void ecore_evas_ews_delete_request | ( | Ecore_Evas * | ee | ) |

Calls the window to be deleted (freed), but can let user decide to forbid it by using ecore_evas_callback_delete_request_set()

Parameters

  ee | The Ecore_Evas for which window will be deleted.

Since
  1.1

References ecore_evas_free().

EAPI Evas_Object* ecore_evas_object_image_new | ( | Ecore_Evas * | ee_target | ) |

Create an Evas image object with image data bound to an own, internal `Ecore_Evas` canvas wrapper

Parameters

  ee_target | `Ecore_Evas` to have the canvas receiving the new image object

Returns
  A handle to the new image object

This will create a special Evas image object. The image's pixel array will get bound to the same image data array of an internal buffer `Ecore_Evas` canvas. The user of this function is, then, supposed to grab that `Ecore_Evas` handle, with ecore_evas_object_ecore_evas_get(), and use its canvas to render whichever contents he/she wants, independently of the contents of the canvas owned by `ee_target`. Those contents will reflect on the canvas of `ee`, though, being exactly the image data of the object returned by this function.

This is a helper function for the scenario of one wanting to grab a buffer canvas' contents (with ecore_evas_buffer_pixels_get()) to be used on another canvas, for whichever reason. The most common goal of this setup is to save an image file with a whole canvas as contents, which could not be achieved by using an image file within the target canvas.

Warning
  Always resize the returned image and its underlying `Ecore_Evas` handle accordingly. They must be kept with same sizes for things to work as expected. Also, you must issue `evas_object_image_size_set()` on the image with that same size. If the image is to be shown in a canvas bound to an engine different than the buffer one, then you must also set this image's fill properties accordingly.

Note
  The image returned will always be bound to the `EVAS_COLORSPACE_ARGB8888` colorspace, always.
  Use ecore_evas_object_evas_get() to grab the image's internal own canvas directly.
  If snapshoting this image's internal canvas, remember to flush its internal `Ecore_Evas` firstly, with ecore_evas_manual_render().

Examples:
  ecore_evas_buffer_example_02.c.

References ecore_evas_free(), EINA_FALSE, eina_list_append(), EINA_TRUE, EVAS_CALLBACK_FOCUS_IN, EVAS_CALLBACK_FOCUS_OUT, EVAS_CALLBACK_FREE, EVAS_CALLBACK_HIDE, EVAS_CALLBACK_KEY_DOWN, EVAS_CALLBACK_KEY_UP, EVAS_CALLBACK_MOUSE_DOWN, EVAS_CALLBACK_MOUSE_IN, EVAS_CALLBACK_MOUSE_MOVE, EVAS_CALLBACK_MOUSE_OUT, EVAS_CALLBACK_MOUSE_UP, EVAS_CALLBACK_MOUSE_WHEEL, EVAS_CALLBACK_MULTI_DOWN, EVAS_CALLBACK_MULTI_MOVE, EVAS_CALLBACK_MULTI_UP, EVAS_CALLBACK_SHOW, EVAS_COLORSPACE_ARGB8888, evas_data_attach_set(), evas_engine_info_get(), evas_engine_info_set(), EVAS_IMAGE_CONTENT_HINT_DYNAMIC, evas_key_lock_add(), evas_key_modifier_add(), evas_new(), evas_object_data_set(), evas_object_event_callback_add(), evas_object_image_add(), evas_object_image_alpha_set(), evas_object_image_colorspace_set(), evas_object_image_content_hint_set(), evas_object_image_data_get(), evas_object_image_data_set(), evas_object_image_size_set(), evas_object_image_stride_get(), evas_output_method_set(), evas_output_size_set(), evas_output_viewport_set(), and evas_render_method_lookup().

EAPI Ecore_Evas* ecore_evas_object_ecore_evas_get | ( | Evas_Object * | obj | ) |

Retrieve the internal `Ecore_Evas` handle of an image object created via ecore_evas_object_image_new()

Parameters

  obj | A handle to an image object created via ecore_evas_object_image_new()

Returns
  The underlying `Ecore_Evas` handle in `obj`

References evas_object_data_get().

Referenced by ecore_evas_extn_plug_connect(), ecore_evas_extn_plug_object_data_lock(), and ecore_evas_extn_plug_object_data_unlock().

EAPI Evas* ecore_evas_object_evas_get | ( | Evas_Object * | obj | ) |

Retrieve the canvas bound to the internal `Ecore_Evas` handle of an image object created via ecore_evas_object_image_new()

Parameters

  obj | A handle to an image object created via ecore_evas_object_image_new()

Returns
  A handle to `obj's` underlying `Ecore_Evas's` canvas

References ecore_evas_get(), and evas_object_data_get().

EAPI const char* ecore_evas_engine_name_get | ( | const Ecore_Evas * | ee | ) |

Get the engine name used by this Ecore_Evas(window).

Parameters

  ee | Ecore_Evas whose engine's name is desired.

Returns
  A string that can(usually) be used in ecore_evas_new()

See Also
  ecore_evas_free()

EAPI Ecore_Evas* ecore_evas_ecore_evas_get | ( | const Evas * | e | ) |

Return the Ecore_Evas for this Evas.

Parameters

  e | The Evas to get the Ecore_Evas from

Returns
  The Ecore_Evas that holds this Evas, or `NULL` if not held by one.

Warning
  Only use on Evas' created with ecore evas!

References evas_data_attach_get().

EAPI void ecore_evas_free | ( | Ecore_Evas * | ee | ) |

Free an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to free

This frees up any memory used by the Ecore_Evas.

Referenced by ecore_evas_buffer_allocfunc_new(), ecore_evas_ews_delete_request(), ecore_evas_ews_new(), and ecore_evas_object_image_new().

EAPI void* ecore_evas_data_get | ( | const Ecore_Evas * | ee,
|  | const char * | key
| ) |  |

Retrieve user data associated with an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to retrieve the user data from.
  key | The key which the user data to be retrieved is associated with.

This function retrieves user specific data that has been stored within an Ecore_Evas structure with ecore_evas_data_set().

Returns
  `NULL` on error or no data found, A pointer to the user data on success.

See Also
  ecore_evas_data_set()

References eina_hash_find().

EAPI void ecore_evas_data_set | ( | Ecore_Evas * | ee,
|  | const char * | key,
|  | const void * | data
| ) |  |

Store user data in an Ecore_Evas structure.

Parameters

  ee | The Ecore_Evas to store the user data in.
  key | A unique string to associate the user data against. Cannot be NULL.
  data | A pointer to the user data to store.

This function associates the `data` with a `key` which is stored by the Ecore_Evas `ee`. Be aware that a call to ecore_evas_free() will not free any memory for the associated user data, this is the responsibility of the caller.

See Also
  ecore_evas_callback_pre_free_set()
  ecore_evas_free()
  ecore_evas_data_get()

References eina_hash_add(), eina_hash_del(), and eina_hash_string_superfast_new().

EAPI void ecore_evas_callback_resize_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas resize events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` is resized.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_move_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas move events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` is moved.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_show_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas show events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` is shown.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_hide_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas hide events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` is hidden.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_delete_request_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas delete request events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` gets a delete request.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_destroy_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas destroy events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` is destroyed.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_focus_in_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas focus in events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` gets focus.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_focus_out_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas focus out events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` loses focus.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_sticky_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas sticky events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` becomes sticky.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_unsticky_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas un-sticky events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` becomes un-sticky.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_mouse_in_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas mouse in events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever the mouse enters `ee`.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_mouse_out_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas mouse out events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever the mouse leaves `ee`.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_pre_render_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas pre render events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called just before the evas in `ee` is rendered.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_post_render_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas mouse post render events.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called just after the evas in `ee` is rendered.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_pre_free_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas pre-free event.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called just before the instance `ee` is freed.

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI void ecore_evas_callback_state_change_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Event_Cb | func
| ) |  |

Set a callback for Ecore_Evas state changes.

Parameters

  ee | The Ecore_Evas to set callbacks on
  func | The function to call

A call to this function will set a callback on an Ecore_Evas, causing `func` to be called whenever `ee` changes state.

Since
  1.2

Warning
  If and when this function is called depends on the underlying windowing system.

EAPI Evas* ecore_evas_get | ( | const Ecore_Evas * | ee | ) |

Get an Ecore_Evas's Evas.

Parameters

  ee | The Ecore_Evas whose Evas you wish to get

Returns
  The Evas wrapped by `ee`

This function returns the Evas contained within `ee`.

Referenced by ecore_evas_ews_background_set(), ecore_evas_ews_evas_get(), and ecore_evas_object_evas_get().

EAPI void ecore_evas_managed_move | ( | Ecore_Evas * | ee,
|  | int | x,
|  | int | y
| ) |  |

Provide Managed move co-ordinates for an Ecore_Evas.

Parameters

  ee | The Ecore_Evas to move
  x | The x coordinate to set as the managed location
  y | The y coordinate to set as the managed location

This sets the managed geometry position of the `ee` to (`x`, `y`)

EAPI void ecore_evas_shaped_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | shaped
| ) |  |

Set whether an Ecore_Evas is shaped or not.

Parameters

  ee | The Ecore_Evas to shape.
  shaped | `EINA_TRUE` to shape, `EINA_FALSE` to not.

This function allows one to make an Ecore_Evas shaped to the contents of the evas. If `shaped` is `EINA_TRUE`, `ee` will be transparent in parts of the evas that contain no objects. If `shaped` is `EINA_FALSE`, then `ee` will be rectangular, and parts with no data will show random framebuffer artifacting. For non-shaped Ecore_Evases, it is recommended to cover the entire evas with a background object.

EAPI Eina_Bool ecore_evas_shaped_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas is shaped or not.

Parameters

  ee | The Ecore_Evas to query.

Returns
  `EINA_TRUE` if shaped, `EINA_FALSE` if not.

This function returns `EINA_TRUE` if `ee` is shaped, and `EINA_FALSE` if not.

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_show | ( | Ecore_Evas * | ee | ) |

Show an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to show.

This function makes `ee` visible.

EAPI void ecore_evas_hide | ( | Ecore_Evas * | ee | ) |

Hide an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to hide.

This function makes `ee` hidden(not visible).

EAPI void ecore_evas_activate | ( | Ecore_Evas * | ee | ) |

Activate (set focus to, via the window manager) an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas to activate.

This functions activates the Ecore_Evas.

EAPI void ecore_evas_size_min_set | ( | Ecore_Evas * | ee,
|  | int | w,
|  | int | h
| ) |  |

Set the minimum size of a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | The minimum width
  h | The minimum height

This function sets the minimum size of `ee` to be `w` x `h`. One won't be able to resize that window to dimensions smaller than the ones set.

Note
  When base sizes are set, via ecore_evas_size_base_set(), they'll be used to calculate a window's minimum size, instead of those set by this function.

See Also
  ecore_evas_size_min_get()

Referenced by ecore_evas_ews_setup().

EAPI void ecore_evas_size_min_get | ( | const Ecore_Evas * | ee,
|  | int * | w,
|  | int * | h
| ) |  |

Get the minimum size set for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | A pointer to an int to place the minimum width in.
  h | A pointer to an int to place the minimum height in.

Note
  Use `NULL` pointers on the size components you're not interested in: they'll be ignored by the function.

See Also
  ecore_evas_size_min_set() for more details

EAPI void ecore_evas_size_max_set | ( | Ecore_Evas * | ee,
|  | int | w,
|  | int | h
| ) |  |

Set the maximum size of a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | The maximum width
  h | The maximum height

This function sets the maximum size of `ee` to be `w` x `h`. One won't be able to resize that window to dimensions bigger than the ones set.

See Also
  ecore_evas_size_max_get()

Referenced by ecore_evas_ews_setup().

EAPI void ecore_evas_size_max_get | ( | const Ecore_Evas * | ee,
|  | int * | w,
|  | int * | h
| ) |  |

Get the maximum size set for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | A pointer to an int to place the maximum width in.
  h | A pointer to an int to place the maximum height in.

Note
  Use `NULL` pointers on the size components you're not interested in: they'll be ignored by the function.

See Also
  ecore_evas_size_max_set() for more details

EAPI void ecore_evas_size_base_set | ( | Ecore_Evas * | ee,
|  | int | w,
|  | int | h
| ) |  |

Set the base size for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | The base width
  h | The base height

This function sets the base size of `ee` to be `w` x `h`. When base sizes are set, they'll be used to calculate a window's minimum size, instead of those set by ecore_evas_size_min_get().

See Also
  ecore_evas_size_base_get()

EAPI void ecore_evas_size_base_get | ( | const Ecore_Evas * | ee,
|  | int * | w,
|  | int * | h
| ) |  |

Get the base size set for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | A pointer to an int to place the base width in.
  h | A pointer to an int to place the base height in.

Note
  Use `NULL` pointers on the size components you're not interested in: they'll be ignored by the function.

See Also
  ecore_evas_size_base_set() for more details

EAPI void ecore_evas_size_step_set | ( | Ecore_Evas * | ee,
|  | int | w,
|  | int | h
| ) |  |

Set the "size step" for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | The step width
  h | The step height

This function sets the size steps of `ee` to be `w` x `h`. This limits the size of this `Ecore_Evas` window to be always an integer multiple of the step size, for each axis.

EAPI void ecore_evas_size_step_get | ( | const Ecore_Evas * | ee,
|  | int * | w,
|  | int * | h
| ) |  |

Get the "size step" set for a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` window's handle
  w | A pointer to an int to place the step width in.
  h | A pointer to an int to place the step height in.

Note
  Use `NULL` pointers on the size components you're not interested in: they'll be ignored by the function.

See Also
  ecore_evas_size_base_set() for more details

EAPI void ecore_evas_cursor_set | ( | Ecore_Evas * | ee,
|  | const char * | file,
|  | int | layer,
|  | int | hot_x,
|  | int | hot_y
| ) |  |

Set the cursor of an Ecore_Evas.

Parameters

  ee | The Ecore_Evas
  file | The path to an image file for the cursor.
  layer | The layer in which the cursor will appear.
  hot_x | The x coordinate of the cursor's hot spot.
  hot_y | The y coordinate of the cursor's hot spot.

This function makes the mouse cursor over `ee` be the image specified by `file`. The actual point within the image that the mouse is at is specified by `hot_x` and `hot_y`, which are coordinates with respect to the top left corner of the cursor image.

Note
  This function creates an object from the image and uses ecore_evas_object_cursor_set().

See Also
  ecore_evas_object_cursor_set()

References evas_object_image_add(), evas_object_image_file_set(), evas_object_image_fill_set(), evas_object_image_size_get(), and evas_object_resize().

EAPI void ecore_evas_cursor_get | ( | const Ecore_Evas * | ee,
|  | Evas_Object ** | obj,
|  | int * | layer,
|  | int * | hot_x,
|  | int * | hot_y
| ) |  |

Get information about an Ecore_Evas' cursor.

Parameters

  ee | The Ecore_Evas to set
  obj | A pointer to an Evas_Object to place the cursor Evas_Object.
  layer | A pointer to an int to place the cursor's layer in.
  hot_x | A pointer to an int to place the cursor's hot_x coordinate in.
  hot_y | A pointer to an int to place the cursor's hot_y coordinate in.

This function queries information about an Ecore_Evas' cursor.

See Also
  ecore_evas_cursor_set()
  ecore_evas_object_cursor_set()

EAPI void ecore_evas_object_cursor_set | ( | Ecore_Evas * | ee,
|  | Evas_Object * | obj,
|  | int | layer,
|  | int | hot_x,
|  | int | hot_y
| ) |  |

Set the cursor of an Ecore_Evas.

Parameters

  ee | The Ecore_Evas
  obj | The Evas_Object which will be the cursor.
  layer | The layer in which the cursor will appear.
  hot_x | The x coordinate of the cursor's hot spot.
  hot_y | The y coordinate of the cursor's hot spot.

This function makes the mouse cursor over `ee` be the object specified by `obj`. The actual point within the object that the mouse is at is specified by `hot_x` and `hot_y`, which are coordinates with respect to the top left corner of the cursor object.

See Also
  ecore_evas_cursor_set()

EAPI void ecore_evas_override_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | on
| ) |  |

Tell the WM whether or not to ignore an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas.
  on | `EINA_TRUE` to ignore, `EINA_FALSE` to not.

This function causes the window manager to ignore `ee` if `on` is `EINA_TRUE`, or not ignore `ee` if `on` is `EINA_FALSE`.

EAPI Eina_Bool ecore_evas_override_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window is overridden or not.

Parameters

  ee | The Ecore_Evas to set.

Returns
  `EINA_TRUE` if `ee` is overridden, `EINA_FALSE` if not.

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_avoid_damage_set | ( | Ecore_Evas * | ee,
|  | Ecore_Evas_Avoid_Damage_Type | on
| ) |  |

Set whether or not an Ecore_Evas' window should avoid damage.

Parameters

  ee | The Ecore_Evas
  on | The type of the damage management

This option causes updates of the Ecore_Evas to be done on a pixmap, and then copied to the window, or the pixmap used directly on the window, depending on the setting. Possible options are:

- ECORE_EVAS_AVOID_DAMAGE_NONE - every expose event triggers a new damage and consequently render of the affected area. The rendering of things happens directly on the window;

- ECORE_EVAS_AVOID_DAMAGE_EXPOSE - there's a pixmap where everything is rendered into, and then copied to the window. On expose events, there's no need to render things again, just to copy the exposed region to the window;

- ECORE_EVAS_AVOID_DAMAGE_BUILT_IN - there's the same pixmap as the previous one, but it is set as a "background pixmap" of the window. The rendered things appear directly on the window, with no need to copy anything, but would stay stored on the pixmap, so there's no need to render things again on expose events. This option can be faster than the previous one, but may lead to artifacts during resize of the window.

EAPI Ecore_Evas_Avoid_Damage_Type ecore_evas_avoid_damage_get | ( | const Ecore_Evas * | ee | ) |

Query whether an Ecore_Evas' window avoids damage or not.

Parameters

  ee | The Ecore_Evas to set

Returns
  The type of the damage management

EAPI void ecore_evas_withdrawn_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | withdrawn
| ) |  |

Set the withdrawn state of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose window's withdrawn state is set.
  withdrawn | The Ecore_Evas window's new withdrawn state.

EAPI Eina_Bool ecore_evas_withdrawn_get | ( | const Ecore_Evas * | ee | ) |

Returns the withdrawn state of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose window's withdrawn state is returned.

Returns
  The Ecore_Evas window's withdrawn state.

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_sticky_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | sticky
| ) |  |

Set the sticky state of an Ecore_Evas window.

Parameters

  ee | The Ecore_Evas whose window's sticky state is set.
  sticky | The Ecore_Evas window's new sticky state.

EAPI Eina_Bool ecore_evas_sticky_get | ( | const Ecore_Evas * | ee | ) |

Returns the sticky state of an Ecore_Evas' window.

Parameters

  ee | The Ecore_Evas whose window's sticky state is returned.

Returns
  The Ecore_Evas window's sticky state.

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_manual_render_set | ( | Ecore_Evas * | ee,
|  | Eina_Bool | manual_render
| ) |  |

Enable/disable manual render.

Parameters

  ee | An `Ecore_Evas` handle
  manual_render | Enable/disable manual render. `EINA_TRUE` to enable manual render, `EINA_FALSE` to disable manual render. `EINA_FALSE` by default

If `manual_render` is true, default ecore_evas render routine would be disabled and rendering will be done only manually. If `manual_render` is false, rendering will be done by default ecore_evas rendering routine, but still manual rendering is available. Call ecore_evas_manual_render() to force immediate render.

See Also
  ecore_evas_manual_render_get()
  ecore_evas_manual_render()

EAPI Eina_Bool ecore_evas_manual_render_get | ( | const Ecore_Evas * | ee | ) |

Get enable/disable status of manual render.

Parameters

  ee | An `Ecore_Evas` handle

Returns
  `EINA_TRUE` if manual render is enabled, `EINA_FALSE` if manual render is disabled

See Also
  ecore_evas_manual_render_set()
  ecore_evas_manual_render()

References EINA_FALSE, and EINA_TRUE.

EAPI void ecore_evas_input_event_register | ( | Ecore_Evas * | ee | ) |

Registers an `Ecore_Evas` to receive events through ecore_input_evas.

Parameters

  ee | The `Ecore_Evas` handle.

This function calls ecore_event_window_register() with the `ee` as its `id` argument, `window` argument, and uses its `Evas` too. It is useful when no `window` information is available on a given `Ecore_Evas` backend.

See Also
  ecore_evas_input_event_unregister()

Since
  1.1

EAPI void ecore_evas_input_event_unregister | ( | Ecore_Evas * | ee | ) |

Unregisters an `Ecore_Evas` receiving events through ecore_input_evas.

Parameters

  ee | The `Ecore_Evas` handle.

See Also
  ecore_evas_input_event_register()

Since
  1.1

EAPI void ecore_evas_manual_render | ( | Ecore_Evas * | ee | ) |

Force immediate rendering on a given `Ecore_Evas` window.

Parameters

  ee | An `Ecore_Evas` handle

Use this call to forcefully flush the `ee's` canvas rendering pipeline, thus bring its window to an up to date state.

EAPI void ecore_evas_screen_geometry_get | ( | const Ecore_Evas * | ee,
|  | int * | x,
|  | int * | y,
|  | int * | w,
|  | int * | h
| ) |  |

Get geometry of screen associated with this Ecore_Evas.

Parameters

  ee | The Ecore_Evas whose window's to query container screen geometry.
  x | where to return the horizontal offset value. May be `NULL`.
  y | where to return the vertical offset value. May be `NULL`.
  w | where to return the width value. May be `NULL`.
  h | where to return the height value. May be `NULL`.

Since
  1.1

EAPI void ecore_evas_screen_dpi_get | ( | const Ecore_Evas * | ee,
|  | int * | xdpi,
|  | int * | ydpi
| ) |  |

Get the dpi of the screen the Ecore_Evas is primarily on.

Parameters

  ee | The Ecore_Evas whose window's to query.
  xdpi | Pointer to integer to store horizontal DPI. May be `NULL`.
  ydpi | Pointer to integer to store vertical DPI. May be `NULL`.

Since
  1.7

EAPI Eina_Bool ecore_evas_object_associate | ( | Ecore_Evas * | ee,
|  | Evas_Object * | obj,
|  | Ecore_Evas_Object_Associate_Flags | flags
| ) |  |

Associate the given object to this ecore evas.

Parameters

  ee | The Ecore_Evas to associate to obj
  obj | The object to associate to ee
  flags | The association flags.

Returns
  `EINA_TRUE` on success, `EINA_FALSE` otherwise.

Association means that operations on one will affect the other, for example moving the object will move the window, resize the object will also affect the ecore evas window, hide and show applies as well.

This is meant to simplify development, since you often need to associate these events with your "base" objects, background or bottom-most object.

Be aware that some methods might not be what you would like, deleting either the window or the object will delete the other. If you want to change that behavior, let's say to hide window when it's closed, you must use ecore_evas_callback_delete_request_set() and set your own code, like ecore_evas_hide(). Just remember that if you override delete_request and still want to delete the window/object, you must do that yourself.

Since we now define delete_request, deleting windows will not quit main loop, if you wish to do so, you should listen for EVAS_CALLBACK_FREE on the object, that way you get notified and you can call ecore_main_loop_quit().

Flags can be OR'ed of:

- ECORE_EVAS_OBJECT_ASSOCIATE_BASE (or 0): to listen to basic events like delete, resize and move, but no stacking or layer are used.
- ECORE_EVAS_OBJECT_ASSOCIATE_STACK: stacking operations will act on the Ecore_Evas, not the object. So evas_object_raise() will call ecore_evas_raise(). Relative operations (stack_above, stack_below) are still not implemented.
- ECORE_EVAS_OBJECT_ASSOCIATE_LAYER: stacking operations will act on the Ecore_Evas, not the object. So evas_object_layer_set() will call ecore_evas_layer_set().
- ECORE_EVAS_OBJECT_ASSOCIATE_DEL: the object delete will delete the ecore_evas as well as delete_requests on the ecore_evas will delete etc.

Examples:
  ecore_evas_basics_example.c, ecore_evas_object_example.c, edje-basic.c, edje-signals-messages.c, edje-text.c, and evas-map-utils.c.

References ecore_evas_object_dissociate(), EINA_FALSE, and EINA_TRUE.

EAPI Eina_Bool ecore_evas_object_dissociate | ( | Ecore_Evas * | ee,
|  | Evas_Object * | obj
| ) |  |

Cancel the association set with ecore_evas_object_associate().

Parameters

  ee | The Ecore_Evas to dissociate from obj
  obj | The object to dissociate from ee

Returns
  `EINA_TRUE` on success, `EINA_FALSE` otherwise.

References EINA_FALSE, and EINA_TRUE.

Referenced by ecore_evas_object_associate().

EAPI Evas_Object* ecore_evas_object_associate_get | ( | const Ecore_Evas * | ee | ) |

Get the object associated with `ee`.

Parameters

  ee | The Ecore_Evas to get the object from.

Returns
  The associated object, or `NULL` if there is no associated object.

Examples:
  ecore_evas_object_example.c.

EAPI unsigned char ecore_getopt_callback_ecore_evas_list_engines | ( | const Ecore_Getopt * | parser,
|  | const Ecore_Getopt_Desc * | desc,
|  | const char * | str,
|  | void * | data,
|  | Ecore_Getopt_Value * | storage
| ) |  |

Helper ecore_getopt callback to list available Ecore_Evas engines.

This will list all available engines except buffer, this is useful for applications to let user choose how they should create windows with ecore_evas_new().

`callback_data` value is used as `FILE*` and says where to output messages, by default it is `stdout`. You can specify this value with ECORE_GETOPT_CALLBACK_FULL() or ECORE_GETOPT_CALLBACK_ARGS().

If there is a boolean storage provided, then it is marked with 1 when this option is executed.

Parameters

  parser | This parameter isn't in use.
  desc | This parameter isn't in use.
  str | This parameter isn't in use.
  data | The data to be used.
  storage | The storage to be used.

Returns
  The function returns 1, when storage is NULL it returns 0.

References ecore_evas_engines_free(), ecore_evas_engines_get(), and EINA_LIST_FOREACH.

EAPI Eina_List* ecore_evas_ecore_evas_list_get | ( | void |  | ) |

Get a list of all the ecore_evases.

Returns
  A list of ecore_evases.

The returned list of ecore evases is only valid until the canvases are destroyed (and should not be cached for instance). The list can be freed by just deleting the list.

References EINA_INLIST_FOREACH, and eina_list_append().

EAPI Eina_List* ecore_evas_sub_ecore_evas_list_get | ( | const Ecore_Evas * | ee | ) |

Get a list of all the sub ecore_evases.

Parameters

  ee | Ecore_Evas to get the list from.

Returns
  A list of sub ecore_evases, or `NULL` if there is no sub ecore_evases.