aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h256
1 files changed, 227 insertions, 29 deletions
diff --git a/libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h b/libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h
index 8d9abc4..a78824e 100644
--- a/libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h
+++ b/libraries/ecore/src/lib/ecore_evas/Ecore_Evas.h
@@ -39,6 +39,9 @@
39 * @li @ref ecore_evas_callbacks_example_c 39 * @li @ref ecore_evas_callbacks_example_c
40 * @li @ref ecore_evas_object_example_c 40 * @li @ref ecore_evas_object_example_c
41 * @li @ref ecore_evas_basics_example_c 41 * @li @ref ecore_evas_basics_example_c
42 * @li @ref Ecore_Evas_Window_Sizes_Example_c
43 * @li @ref Ecore_Evas_Buffer_Example_01_c
44 * @li @ref Ecore_Evas_Buffer_Example_02_c
42 */ 45 */
43 46
44/* FIXME: 47/* FIXME:
@@ -60,10 +63,26 @@ extern "C" {
60/** 63/**
61 * @defgroup Ecore_Evas_Group Ecore_Evas wrapper/helper set of functions 64 * @defgroup Ecore_Evas_Group Ecore_Evas wrapper/helper set of functions
62 * 65 *
66 * Ecore evas is a set of functions that makes it easy to tie together ecore's
67 * main loop and input handling to evas. As such it's a natural base for EFL
68 * applications. While this combination makes it easy to create the basic
69 * aspects all applications need, for normal applications(ones with buttons,
70 * checkboxes and layouts) one should consider using Elementary.
71 *
72 * Ecore evas is extremely well suited for applications that are not based on
73 * widgets. It has a main loop that delivers events, does basic window handling
74 * and leaves all of the drawing up to the user. This works very well if used
75 * in conjunction with Edje or if doing custom drawing as, for example, is done
76 * in games.
77 *
63 * This is a list of examples of these functions: 78 * This is a list of examples of these functions:
64 * - @ref Ecore_Evas_Window_Sizes_Example_c 79 * @li @ref ecore_evas_basics_example_c
65 * - @ref Ecore_Evas_Buffer_Example_01_c 80 * @li @ref ecore_evas_object_example_c
66 * - @ref Ecore_Evas_Buffer_Example_02_c 81 * @li @ref ecore_evas_callbacks_example_c
82 * @li @ref Ecore_Evas_Window_Sizes_Example_c
83 * @li @ref Ecore_Evas_Buffer_Example_01_c
84 * @li @ref Ecore_Evas_Buffer_Example_02_c
85 *
67 * @{ 86 * @{
68 */ 87 */
69 88
@@ -151,6 +170,12 @@ typedef struct _Ecore_Cocoa_Window Ecore_Cocoa_Window;
151#ifndef _ECORE_EVAS_PRIVATE_H 170#ifndef _ECORE_EVAS_PRIVATE_H
152/* basic data types */ 171/* basic data types */
153typedef struct _Ecore_Evas Ecore_Evas; 172typedef struct _Ecore_Evas Ecore_Evas;
173typedef void (*Ecore_Evas_Event_Cb) (Ecore_Evas *ee); /**< Callback used for several ecore evas events @since 1.2 */
174#endif
175
176#ifndef _ECORE_WAYLAND_H_
177#define _ECORE_WAYLAND_WINDOW_PREDEF
178typedef struct _Ecore_Wl_Window Ecore_Wl_Window;
154#endif 179#endif
155 180
156/* module setup/shutdown calls */ 181/* module setup/shutdown calls */
@@ -222,7 +247,7 @@ EAPI Ecore_Evas *ecore_evas_new(const char *engine_name, int x, int y, int w, in
222 * This function allows you to make an Ecore_Evas translucent using an 247 * This function allows you to make an Ecore_Evas translucent using an
223 * alpha channel. See ecore_evas_shaped_set() for details. The difference 248 * alpha channel. See ecore_evas_shaped_set() for details. The difference
224 * between a shaped window and a window with an alpha channel is that an 249 * between a shaped window and a window with an alpha channel is that an
225 * alpha channel supports multiple levels of transpararency, as opposed to 250 * alpha channel supports multiple levels of transparency, as opposed to
226 * the 1 bit transparency of a shaped window (a pixel is either opaque, or 251 * the 1 bit transparency of a shaped window (a pixel is either opaque, or
227 * it's transparent). 252 * it's transparent).
228 * 253 *
@@ -300,7 +325,7 @@ EAPI void ecore_evas_geometry_get(const Ecore_Evas *ee, int *x, int *y, i
300 * This function takes four pointers to (already allocated) ints, and places 325 * This function takes four pointers to (already allocated) ints, and places
301 * the geometry which @p ee was latest recently requested . If any of the parameters is not desired you 326 * the geometry which @p ee was latest recently requested . If any of the parameters is not desired you
302 * may pass NULL on them. 327 * may pass NULL on them.
303 * This function can represent recently requested geomety. 328 * This function can represent recently requested geometry.
304 * ecore_evas_geometry_get function returns the value is updated after engine finished request. 329 * ecore_evas_geometry_get function returns the value is updated after engine finished request.
305 * By comparison, ecore_evas_request_geometry_get returns recently requested value. 330 * By comparison, ecore_evas_request_geometry_get returns recently requested value.
306 * 331 *
@@ -342,7 +367,7 @@ EAPI Eina_Bool ecore_evas_focus_get(const Ecore_Evas *ee);
342 * This function iconifies @p ee if @p on is EINA_TRUE, or uniconifies @p ee if 367 * This function iconifies @p ee if @p on is EINA_TRUE, or uniconifies @p ee if
343 * @p on is EINA_FALSE. 368 * @p on is EINA_FALSE.
344 * 369 *
345 * @note Iconify and minize are synonims. 370 * @note Iconify and minimize are synonyms.
346 * 371 *
347 * @warning Support for this depends on the underlying windowing system. 372 * @warning Support for this depends on the underlying windowing system.
348 */ 373 */
@@ -353,7 +378,7 @@ EAPI void ecore_evas_iconified_set(Ecore_Evas *ee, Eina_Bool on);
353 * @param ee The Ecore_Evas to set 378 * @param ee The Ecore_Evas to set
354 * @return EINA_TRUE if @p ee is iconified, EINA_FALSE if not. 379 * @return EINA_TRUE if @p ee is iconified, EINA_FALSE if not.
355 * 380 *
356 * @note Iconify and minize are synonims. 381 * @note Iconify and minimize are synonyms.
357 * 382 *
358 * @see ecore_evas_iconified_set() 383 * @see ecore_evas_iconified_set()
359 */ 384 */
@@ -401,6 +426,161 @@ EAPI void ecore_evas_fullscreen_set(Ecore_Evas *ee, Eina_Bool on);
401 */ 426 */
402EAPI Eina_Bool ecore_evas_fullscreen_get(const Ecore_Evas *ee); 427EAPI Eina_Bool ecore_evas_fullscreen_get(const Ecore_Evas *ee);
403/** 428/**
429 * @brief Set another window that this window is a group member of
430 *
431 * @param ee The Ecore_Evas
432 * @param ee_group The other group member
433 *
434 * If @p ee_group is NULL, @p ee is removed from the group, otherwise it is
435 * added. Note that if you free the @p ee_group canvas before @p ee, then
436 * getting the group canvas with ecore_evas_window_group_get() will return
437 * an invalid handle.
438 *
439 * @warning Support for this depends on the underlying windowing system.
440 * @since 1.2
441 */
442EAPI void ecore_evas_window_group_set(Ecore_Evas *ee, const Ecore_Evas *ee_group);
443/**
444 * @brief Get the canvas group set.
445 *
446 * This returns the handle set by ecore_evas_window_group_set().
447 *
448 * @param ee The Ecore_Evas to set
449 * @return The Canvas group handle
450 *
451 * @see ecore_evas_window_group_set()
452 * @since 1.2
453 */
454EAPI const Ecore_Evas *ecore_evas_window_group_get(const Ecore_Evas *ee);
455/**
456 * @brief Set the aspect ratio of a canvas window
457 *
458 * @param ee The Ecore_Evas
459 * @param aspect The aspect ratio (width divided by height), or 0 to disable
460 *
461 * This sets the desired aspect ratio of a canvas window
462 *
463 * @warning Support for this depends on the underlying windowing system.
464 * @since 1.2
465 */
466EAPI void ecore_evas_aspect_set(Ecore_Evas *ee, double aspect);
467/**
468 * @brief Get the aspect ratio of a canvas window
469 *
470 * This returns the value set by ecore_evas_aspect_set().
471 *
472 * @param ee The Ecore_Evas to set
473 * @return The aspect ratio
474 *
475 * @see ecore_evas_aspect_set()
476 * @since 1.2
477 */
478EAPI double ecore_evas_aspect_get(const Ecore_Evas *ee);
479/**
480 * @brief Set The urgent hint flag
481 *
482 * @param ee The Ecore_Evas
483 * @param urgent The urgent state flag
484 *
485 * This sets the "urgent" state hint on a window so the desktop environment
486 * can highlight it somehow.
487 *
488 * @warning Support for this depends on the underlying windowing system.
489 * @since 1.2
490 */
491EAPI void ecore_evas_urgent_set(Ecore_Evas *ee, Eina_Bool urgent);
492/**
493 * @brief Get the urgent state on the cavas window
494 *
495 * This returns the value set by ecore_evas_urgent_set()
496 *
497 * @param ee The Ecore_Evas to set
498 * @return The urgent state set
499 *
500 * @see ecore_evas_urgent_set()
501 * @since 1.2
502 */
503EAPI Eina_Bool ecore_evas_urgent_get(const Ecore_Evas *ee);
504/**
505 * @brief Set the modal state flag on the canvas window
506 *
507 * @param ee The Ecore_Evas
508 * @param modal The modal hint flag
509 *
510 * This hints if the window should be modal (eg if it is also transient
511 * for another window, the other window will maybe be denied focus by
512 * the desktop window manager).
513 *
514 * @warning Support for this depends on the underlying windowing system.
515 * @since 1.2
516 */
517EAPI void ecore_evas_modal_set(Ecore_Evas *ee, Eina_Bool modal);
518/**
519 * @brief Get The modal flag
520 *
521 * This returns the value set by ecore_evas_modal_set().
522 *
523 * @param ee The Ecore_Evas to set
524 * @return The modal flag
525 *
526 * @see ecore_evas_modal_set()
527 * @since 1.2
528 */
529EAPI Eina_Bool ecore_evas_modal_get(const Ecore_Evas *ee);
530/**
531 * @brief Set the "i demand attention" flag on a canvas window
532 *
533 * @param ee The Ecore_Evas
534 * @param demand_attention The flag state to set
535 *
536 * A window may demand attention now (eg you must enter a password before
537 * continuing), and so it may flag a window with this.
538 *
539 * @warning Support for this depends on the underlying windowing system.
540 * @since 1.2
541 */
542EAPI void ecore_evas_demand_attention_set(Ecore_Evas *ee, Eina_Bool demand);
543/**
544 * @brief Get the "i demand attention" flag
545 *
546 * This returns the value set by ecore_evas_demand_attention_set().
547 *
548 * @param ee The Ecore_Evas to set
549 * @return The "i demand attention" flag.
550 *
551 * @see ecore_evas_demand_attention_set()
552 * @since 1.2
553 */
554EAPI Eina_Bool ecore_evas_demand_attention_get(const Ecore_Evas *ee);
555/**
556 * @brief Set the "focus skip" flag
557 *
558 * @param ee The Ecore_Evas
559 * @param skip The "focus skip" state to set.
560 *
561 * A window may not want to accept focus, be in the taskbar, pager etc.
562 * sometimes (example for a small notification window that hovers around
563 * a taskbar or panel, or hovers around a window until some activity
564 * dismisses it).
565 *
566 * @warning Support for this depends on the underlying windowing system.
567 * @since 1.2
568 */
569EAPI void ecore_evas_focus_skip_set(Ecore_Evas *ee, Eina_Bool skip);
570/**
571 * @brief Get the "focus skip" flag
572 *
573 * This returns the value set by ecore_evas_focus_skip_set().
574 *
575 * @param ee The Ecore_Evas to set
576 * @return The "focus skip" flag.
577 *
578 * @see ecore_evas_focus_skip_set()
579 * @since 1.2
580 */
581EAPI Eina_Bool ecore_evas_focus_skip_get(const Ecore_Evas *ee);
582
583/**
404 * @brief Set if this evas should ignore @b all events. 584 * @brief Set if this evas should ignore @b all events.
405 * 585 *
406 * @param ee The Ecore_Evas whose window's to ignore events. 586 * @param ee The Ecore_Evas whose window's to ignore events.
@@ -693,10 +873,13 @@ EAPI Ecore_Evas *ecore_evas_fb_new(const char *disp_name, int rotation, int
693EAPI Ecore_Evas *ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w, int h); 873EAPI Ecore_Evas *ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w, int h);
694EAPI Ecore_DirectFB_Window *ecore_evas_directfb_window_get(const Ecore_Evas *ee); 874EAPI Ecore_DirectFB_Window *ecore_evas_directfb_window_get(const Ecore_Evas *ee);
695 875
696EAPI Ecore_Evas *ecore_evas_wayland_shm_new(const char *disp_name, int x, int y, int w, int h, int frame); 876
697EAPI Ecore_Evas *ecore_evas_wayland_egl_new(const char *disp_name, int x, int y, int w, int h, int frame); 877EAPI 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);
878EAPI 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);
698EAPI void ecore_evas_wayland_resize(Ecore_Evas *ee, int location); 879EAPI void ecore_evas_wayland_resize(Ecore_Evas *ee, int location);
699EAPI void ecore_evas_wayland_drag_start(Ecore_Evas *ee, Ecore_Evas *drag_ee, void *source); 880/* EAPI void ecore_evas_wayland_drag_start(Ecore_Evas *ee, Ecore_Evas *drag_ee, void *source); */
881/* EAPI void ecore_evas_wayland_pointer_set(Ecore_Evas *ee, int hot_x, int hot_y); */
882/* EAPI void ecore_evas_wayland_type_set(Ecore_Evas *ee, int type); */
700 883
701/** 884/**
702 * @brief Create a new @c Ecore_Evas canvas bound to the Evas 885 * @brief Create a new @c Ecore_Evas canvas bound to the Evas
@@ -1038,7 +1221,7 @@ EAPI void ecore_evas_data_set(Ecore_Evas *ee, const char *key, const void
1038 * @warning If and when this function is called depends on the underlying 1221 * @warning If and when this function is called depends on the underlying
1039 * windowing system. 1222 * windowing system.
1040 */ 1223 */
1041EAPI void ecore_evas_callback_resize_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1224EAPI void ecore_evas_callback_resize_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1042/** 1225/**
1043 * Set a callback for Ecore_Evas move events. 1226 * Set a callback for Ecore_Evas move events.
1044 * @param ee The Ecore_Evas to set callbacks on 1227 * @param ee The Ecore_Evas to set callbacks on
@@ -1050,7 +1233,7 @@ EAPI void ecore_evas_callback_resize_set(Ecore_Evas *ee, void (*func) (Ec
1050 * @warning If and when this function is called depends on the underlying 1233 * @warning If and when this function is called depends on the underlying
1051 * windowing system. 1234 * windowing system.
1052 */ 1235 */
1053EAPI void ecore_evas_callback_move_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1236EAPI void ecore_evas_callback_move_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1054/** 1237/**
1055 * Set a callback for Ecore_Evas show events. 1238 * Set a callback for Ecore_Evas show events.
1056 * @param ee The Ecore_Evas to set callbacks on 1239 * @param ee The Ecore_Evas to set callbacks on
@@ -1062,7 +1245,7 @@ EAPI void ecore_evas_callback_move_set(Ecore_Evas *ee, void (*func) (Ecor
1062 * @warning If and when this function is called depends on the underlying 1245 * @warning If and when this function is called depends on the underlying
1063 * windowing system. 1246 * windowing system.
1064 */ 1247 */
1065EAPI void ecore_evas_callback_show_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1248EAPI void ecore_evas_callback_show_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1066/** 1249/**
1067 * Set a callback for Ecore_Evas hide events. 1250 * Set a callback for Ecore_Evas hide events.
1068 * @param ee The Ecore_Evas to set callbacks on 1251 * @param ee The Ecore_Evas to set callbacks on
@@ -1074,7 +1257,7 @@ EAPI void ecore_evas_callback_show_set(Ecore_Evas *ee, void (*func) (Ecor
1074 * @warning If and when this function is called depends on the underlying 1257 * @warning If and when this function is called depends on the underlying
1075 * windowing system. 1258 * windowing system.
1076 */ 1259 */
1077EAPI void ecore_evas_callback_hide_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1260EAPI void ecore_evas_callback_hide_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1078/** 1261/**
1079 * Set a callback for Ecore_Evas delete request events. 1262 * Set a callback for Ecore_Evas delete request events.
1080 * @param ee The Ecore_Evas to set callbacks on 1263 * @param ee The Ecore_Evas to set callbacks on
@@ -1086,7 +1269,7 @@ EAPI void ecore_evas_callback_hide_set(Ecore_Evas *ee, void (*func) (Ecor
1086 * @warning If and when this function is called depends on the underlying 1269 * @warning If and when this function is called depends on the underlying
1087 * windowing system. 1270 * windowing system.
1088 */ 1271 */
1089EAPI void ecore_evas_callback_delete_request_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1272EAPI void ecore_evas_callback_delete_request_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1090/** 1273/**
1091 * Set a callback for Ecore_Evas destroy events. 1274 * Set a callback for Ecore_Evas destroy events.
1092 * @param ee The Ecore_Evas to set callbacks on 1275 * @param ee The Ecore_Evas to set callbacks on
@@ -1098,7 +1281,7 @@ EAPI void ecore_evas_callback_delete_request_set(Ecore_Evas *ee, void (*f
1098 * @warning If and when this function is called depends on the underlying 1281 * @warning If and when this function is called depends on the underlying
1099 * windowing system. 1282 * windowing system.
1100 */ 1283 */
1101EAPI void ecore_evas_callback_destroy_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1284EAPI void ecore_evas_callback_destroy_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1102/** 1285/**
1103 * Set a callback for Ecore_Evas focus in events. 1286 * Set a callback for Ecore_Evas focus in events.
1104 * @param ee The Ecore_Evas to set callbacks on 1287 * @param ee The Ecore_Evas to set callbacks on
@@ -1110,7 +1293,7 @@ EAPI void ecore_evas_callback_destroy_set(Ecore_Evas *ee, void (*func) (E
1110 * @warning If and when this function is called depends on the underlying 1293 * @warning If and when this function is called depends on the underlying
1111 * windowing system. 1294 * windowing system.
1112 */ 1295 */
1113EAPI void ecore_evas_callback_focus_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1296EAPI void ecore_evas_callback_focus_in_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1114/** 1297/**
1115 * Set a callback for Ecore_Evas focus out events. 1298 * Set a callback for Ecore_Evas focus out events.
1116 * @param ee The Ecore_Evas to set callbacks on 1299 * @param ee The Ecore_Evas to set callbacks on
@@ -1122,7 +1305,7 @@ EAPI void ecore_evas_callback_focus_in_set(Ecore_Evas *ee, void (*func) (
1122 * @warning If and when this function is called depends on the underlying 1305 * @warning If and when this function is called depends on the underlying
1123 * windowing system. 1306 * windowing system.
1124 */ 1307 */
1125EAPI void ecore_evas_callback_focus_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1308EAPI void ecore_evas_callback_focus_out_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1126/** 1309/**
1127 * Set a callback for Ecore_Evas sticky events. 1310 * Set a callback for Ecore_Evas sticky events.
1128 * @param ee The Ecore_Evas to set callbacks on 1311 * @param ee The Ecore_Evas to set callbacks on
@@ -1134,7 +1317,7 @@ EAPI void ecore_evas_callback_focus_out_set(Ecore_Evas *ee, void (*func)
1134 * @warning If and when this function is called depends on the underlying 1317 * @warning If and when this function is called depends on the underlying
1135 * windowing system. 1318 * windowing system.
1136 */ 1319 */
1137EAPI void ecore_evas_callback_sticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1320EAPI void ecore_evas_callback_sticky_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1138/** 1321/**
1139 * Set a callback for Ecore_Evas un-sticky events. 1322 * Set a callback for Ecore_Evas un-sticky events.
1140 * @param ee The Ecore_Evas to set callbacks on 1323 * @param ee The Ecore_Evas to set callbacks on
@@ -1146,7 +1329,7 @@ EAPI void ecore_evas_callback_sticky_set(Ecore_Evas *ee, void (*func) (Ec
1146 * @warning If and when this function is called depends on the underlying 1329 * @warning If and when this function is called depends on the underlying
1147 * windowing system. 1330 * windowing system.
1148 */ 1331 */
1149EAPI void ecore_evas_callback_unsticky_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1332EAPI void ecore_evas_callback_unsticky_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1150/** 1333/**
1151 * Set a callback for Ecore_Evas mouse in events. 1334 * Set a callback for Ecore_Evas mouse in events.
1152 * @param ee The Ecore_Evas to set callbacks on 1335 * @param ee The Ecore_Evas to set callbacks on
@@ -1158,7 +1341,7 @@ EAPI void ecore_evas_callback_unsticky_set(Ecore_Evas *ee, void (*func) (
1158 * @warning If and when this function is called depends on the underlying 1341 * @warning If and when this function is called depends on the underlying
1159 * windowing system. 1342 * windowing system.
1160 */ 1343 */
1161EAPI void ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1344EAPI void ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1162/** 1345/**
1163 * Set a callback for Ecore_Evas mouse out events. 1346 * Set a callback for Ecore_Evas mouse out events.
1164 * @param ee The Ecore_Evas to set callbacks on 1347 * @param ee The Ecore_Evas to set callbacks on
@@ -1170,7 +1353,7 @@ EAPI void ecore_evas_callback_mouse_in_set(Ecore_Evas *ee, void (*func) (
1170 * @warning If and when this function is called depends on the underlying 1353 * @warning If and when this function is called depends on the underlying
1171 * windowing system. 1354 * windowing system.
1172 */ 1355 */
1173EAPI void ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1356EAPI void ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1174/** 1357/**
1175 * Set a callback for Ecore_Evas pre render events. 1358 * Set a callback for Ecore_Evas pre render events.
1176 * @param ee The Ecore_Evas to set callbacks on 1359 * @param ee The Ecore_Evas to set callbacks on
@@ -1182,7 +1365,7 @@ EAPI void ecore_evas_callback_mouse_out_set(Ecore_Evas *ee, void (*func)
1182 * @warning If and when this function is called depends on the underlying 1365 * @warning If and when this function is called depends on the underlying
1183 * windowing system. 1366 * windowing system.
1184 */ 1367 */
1185EAPI void ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1368EAPI void ecore_evas_callback_pre_render_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1186/** 1369/**
1187 * Set a callback for Ecore_Evas mouse post render events. 1370 * Set a callback for Ecore_Evas mouse post render events.
1188 * @param ee The Ecore_Evas to set callbacks on 1371 * @param ee The Ecore_Evas to set callbacks on
@@ -1194,7 +1377,7 @@ EAPI void ecore_evas_callback_pre_render_set(Ecore_Evas *ee, void (*func)
1194 * @warning If and when this function is called depends on the underlying 1377 * @warning If and when this function is called depends on the underlying
1195 * windowing system. 1378 * windowing system.
1196 */ 1379 */
1197EAPI void ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1380EAPI void ecore_evas_callback_post_render_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1198/** 1381/**
1199 * Set a callback for Ecore_Evas pre-free event. 1382 * Set a callback for Ecore_Evas pre-free event.
1200 * @param ee The Ecore_Evas to set callbacks on 1383 * @param ee The Ecore_Evas to set callbacks on
@@ -1206,7 +1389,21 @@ EAPI void ecore_evas_callback_post_render_set(Ecore_Evas *ee, void (*func
1206 * @warning If and when this function is called depends on the underlying 1389 * @warning If and when this function is called depends on the underlying
1207 * windowing system. 1390 * windowing system.
1208 */ 1391 */
1209EAPI void ecore_evas_callback_pre_free_set(Ecore_Evas *ee, void (*func) (Ecore_Evas *ee)); 1392EAPI void ecore_evas_callback_pre_free_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1393/**
1394 * Set a callback for Ecore_Evas state changes.
1395 * @param ee The Ecore_Evas to set callbacks on
1396 * @param func The function to call
1397
1398 * A call to this function will set a callback on an Ecore_Evas, causing
1399 * @p func to be called whenever @p ee changes state.
1400 *
1401 * @since 1.2
1402 * @warning If and when this function is called depends on the underlying
1403 * windowing system.
1404 */
1405EAPI void ecore_evas_callback_state_change_set(Ecore_Evas *ee, Ecore_Evas_Event_Cb func);
1406
1210EAPI Evas *ecore_evas_get(const Ecore_Evas *ee); 1407EAPI Evas *ecore_evas_get(const Ecore_Evas *ee);
1211EAPI void ecore_evas_managed_move(Ecore_Evas *ee, int x, int y); 1408EAPI void ecore_evas_managed_move(Ecore_Evas *ee, int x, int y);
1212EAPI void ecore_evas_shaped_set(Ecore_Evas *ee, Eina_Bool shaped); 1409EAPI void ecore_evas_shaped_set(Ecore_Evas *ee, Eina_Bool shaped);
@@ -1572,7 +1769,7 @@ EAPI Eina_Bool ecore_evas_ews_setup(int x, int y, int w, int h);
1572/** 1769/**
1573 * Return the internal backing store in use. 1770 * Return the internal backing store in use.
1574 * 1771 *
1575 * @note this will foced it to be created, making future calls to 1772 * @note this will forced it to be created, making future calls to
1576 * ecore_evas_ews_engine_set() void. 1773 * ecore_evas_ews_engine_set() void.
1577 * 1774 *
1578 * @see ecore_evas_ews_evas_get() 1775 * @see ecore_evas_ews_evas_get()
@@ -1583,7 +1780,7 @@ EAPI Ecore_Evas *ecore_evas_ews_ecore_evas_get(void);
1583/** 1780/**
1584 * Return the internal backing store in use. 1781 * Return the internal backing store in use.
1585 * 1782 *
1586 * @note this will foced it to be created, making future calls to 1783 * @note this will forced it to be created, making future calls to
1587 * ecore_evas_ews_engine_set() void. 1784 * ecore_evas_ews_engine_set() void.
1588 * 1785 *
1589 * @see ecore_evas_ews_ecore_evas_get() 1786 * @see ecore_evas_ews_ecore_evas_get()
@@ -1762,6 +1959,7 @@ EAPI Ecore_Evas *ecore_evas_extn_socket_new(int w, int h);
1762/** 1959/**
1763 * @brief Create a socket to provide the service for external ecore evas socket. 1960 * @brief Create a socket to provide the service for external ecore evas socket.
1764 * 1961 *
1962 * @param ee The Ecore_Evas
1765 * @param svcname The name of the service to be advertised. ensure that it is unique (when combined with @p svcnum) otherwise creation may fail. 1963 * @param svcname The name of the service to be advertised. ensure that it is unique (when combined with @p svcnum) otherwise creation may fail.
1766 * @param svcnum A number (any value, 0 beig the common default) to differentiate multiple instances of services with the same name. 1964 * @param svcnum A number (any value, 0 beig the common default) to differentiate multiple instances of services with the same name.
1767 * @param svcsys A boolean that if true, specifies to create a system-wide service all users can connect to, otherwise the service is private to the user ide that created the service. 1965 * @param svcsys A boolean that if true, specifies to create a system-wide service all users can connect to, otherwise the service is private to the user ide that created the service.
@@ -1791,7 +1989,7 @@ EAPI Eina_Bool ecore_evas_extn_socket_listen(Ecore_Evas *ee, const char *svcname
1791 * image data so the external plug process will not render to it or alter it. 1989 * image data so the external plug process will not render to it or alter it.
1792 * 1990 *
1793 * You should only hold the lock for just as long as you need to read out the 1991 * You should only hold the lock for just as long as you need to read out the
1794 * image data or otherwise deal with it, and then unlokc it with 1992 * image data or otherwise deal with it, and then unlock it with
1795 * ecore_evas_extn_plug_object_data_unlock(). Keeping a lock over more than 1993 * ecore_evas_extn_plug_object_data_unlock(). Keeping a lock over more than
1796 * 1 iteration of the main ecore loop will be problematic, so avoid it. Also 1994 * 1 iteration of the main ecore loop will be problematic, so avoid it. Also
1797 * forgetting to unlock may cause the socket process to freeze and thus create 1995 * forgetting to unlock may cause the socket process to freeze and thus create
@@ -1831,7 +2029,7 @@ EAPI void ecore_evas_extn_plug_object_data_unlock(Evas_Object *obj);
1831 * in the canvas of the plug process in place of the image object. The image 2029 * in the canvas of the plug process in place of the image object. The image
1832 * object by default is created to be filled (equivalent of 2030 * object by default is created to be filled (equivalent of
1833 * evas_object_image_filled_add() on creation) so image content will scale 2031 * evas_object_image_filled_add() on creation) so image content will scale
1834 * toi fill the image unless otherwise reconfigured. The Ecore_Evas size 2032 * to fill the image unless otherwise reconfigured. The Ecore_Evas size
1835 * of the plug is the master size and determines size in pixels of the 2033 * of the plug is the master size and determines size in pixels of the
1836 * plug canvas. You can change the size with something like: 2034 * plug canvas. You can change the size with something like:
1837 * 2035 *