From ad6a078501b85928bb95dbeb97a64b7c7bd2df0d Mon Sep 17 00:00:00 2001 From: Daniel Zaoui Date: Thu, 27 Mar 2014 15:15:52 +0200 Subject: [PATCH] Eolian: Integration of Win --- legacy/elementary/src/lib/Makefile.am | 10 +- legacy/elementary/src/lib/elm_win.c | 2254 ++++---------------- legacy/elementary/src/lib/elm_win.eo | 1342 ++++++++++++ legacy/elementary/src/lib/elm_win_eo.h | 3 + legacy/elementary/src/lib/elm_win_legacy.h | 10 +- 5 files changed, 1762 insertions(+), 1857 deletions(-) create mode 100644 legacy/elementary/src/lib/elm_win.eo diff --git a/legacy/elementary/src/lib/Makefile.am b/legacy/elementary/src/lib/Makefile.am index c0307b37b0..4d21669187 100644 --- a/legacy/elementary/src/lib/Makefile.am +++ b/legacy/elementary/src/lib/Makefile.am @@ -664,7 +664,9 @@ BUILT_SOURCES = \ elm_web.eo.c \ elm_web.eo.h \ elm_widget_access_object.eo.c \ - elm_widget_access_object.eo.h + elm_widget_access_object.eo.h \ + elm_win.eo.c \ + elm_win.eo.h EXTRA_DIST += \ elm_widget.eo \ @@ -736,7 +738,8 @@ EXTRA_DIST += \ elm_toolbar.eo \ elm_video.eo \ elm_web.eo \ - elm_widget_access_object.eo + elm_widget_access_object.eo \ + elm_win.eo nodist_includesunstable_HEADERS = \ elm_widget.eo.h \ @@ -808,5 +811,6 @@ nodist_includesunstable_HEADERS = \ elm_toolbar.eo.h \ elm_video.eo.h \ elm_web.eo.h \ - elm_widget_access_object.eo.h + elm_widget_access_object.eo.h \ + elm_win.eo.h diff --git a/legacy/elementary/src/lib/elm_win.c b/legacy/elementary/src/lib/elm_win.c index 31e215af67..67d45ff7bc 100644 --- a/legacy/elementary/src/lib/elm_win.c +++ b/legacy/elementary/src/lib/elm_win.c @@ -8,8 +8,6 @@ #include "elm_priv.h" #include "elm_widget_menu.h" -EAPI Eo_Op ELM_OBJ_WIN_BASE_ID = EO_NOOP; - #define MY_CLASS ELM_OBJ_WIN_CLASS #define MY_CLASS_NAME "Elm_Win" @@ -28,7 +26,7 @@ static const Elm_Win_Trap *trap = NULL; while (0) #define ELM_WIN_DATA_GET(o, sd) \ - Elm_Win_Smart_Data * sd = eo_data_scope_get(o, MY_CLASS) + Elm_Win_Data * sd = eo_data_scope_get(o, MY_CLASS) #define ELM_WIN_DATA_GET_OR_RETURN(o, ptr) \ ELM_WIN_DATA_GET(o, ptr); \ @@ -55,9 +53,9 @@ static const Elm_Win_Trap *trap = NULL; #define ENGINE_GET() (_elm_preferred_engine ? _elm_preferred_engine : (_elm_config->engine ? _elm_config->engine : "")) #define ENGINE_COMPARE(name) (!strcmp(ENGINE_GET(), name)) -typedef struct _Elm_Win_Smart_Data Elm_Win_Smart_Data; +typedef struct _Elm_Win_Data Elm_Win_Data; -struct _Elm_Win_Smart_Data +struct _Elm_Win_Data { Ecore_Evas *ee; Evas *evas; @@ -238,7 +236,7 @@ static void _elm_win_img_callbacks_del(Evas_Object *obj, Evas_Object *imgobj); #ifdef HAVE_ELEMENTARY_X -static void _elm_win_xwin_update(Elm_Win_Smart_Data *sd); +static void _elm_win_xwin_update(Elm_Win_Data *sd); #endif EAPI double _elm_startup_time = 0; @@ -364,7 +362,7 @@ _elm_win_state_eval_queue(void) // ELM_ENGINE="shot:delay=0.1:file=my-window.png" static double -_shot_delay_get(Elm_Win_Smart_Data *sd) +_shot_delay_get(Elm_Win_Data *sd) { char *p, *pd; char *d = strdup(sd->shot.info); @@ -392,7 +390,7 @@ _shot_delay_get(Elm_Win_Smart_Data *sd) } static char * -_shot_file_get(Elm_Win_Smart_Data *sd) +_shot_file_get(Elm_Win_Data *sd) { char *p; char *tmp = strdup(sd->shot.info); @@ -435,7 +433,7 @@ _shot_file_get(Elm_Win_Smart_Data *sd) } static int -_shot_repeat_count_get(Elm_Win_Smart_Data *sd) +_shot_repeat_count_get(Elm_Win_Data *sd) { char *p, *pd; char *d = strdup(sd->shot.info); @@ -465,19 +463,19 @@ _shot_repeat_count_get(Elm_Win_Smart_Data *sd) } static char * -_shot_key_get(Elm_Win_Smart_Data *sd EINA_UNUSED) +_shot_key_get(Elm_Win_Data *sd EINA_UNUSED) { return NULL; } static char * -_shot_flags_get(Elm_Win_Smart_Data *sd EINA_UNUSED) +_shot_flags_get(Elm_Win_Data *sd EINA_UNUSED) { return NULL; } static void -_shot_do(Elm_Win_Smart_Data *sd) +_shot_do(Elm_Win_Data *sd) { Ecore_Evas *ee; Evas_Object *o; @@ -532,7 +530,7 @@ _shot_delay(void *data) } static void -_shot_init(Elm_Win_Smart_Data *sd) +_shot_init(Elm_Win_Data *sd) { if (!sd->shot.info) return; @@ -541,7 +539,7 @@ _shot_init(Elm_Win_Smart_Data *sd) } static void -_shot_handle(Elm_Win_Smart_Data *sd) +_shot_handle(Elm_Win_Data *sd) { if (!sd->shot.info) return; @@ -553,7 +551,7 @@ _shot_handle(Elm_Win_Smart_Data *sd) /* elm-win specific associate, does the trap while ecore_evas_object_associate() * does not. */ -static Elm_Win_Smart_Data * +static Elm_Win_Data * _elm_win_associate_get(const Ecore_Evas *ee) { Evas_Object *obj = ecore_evas_data_get(ee, "elm_win"); @@ -617,7 +615,7 @@ _elm_win_obj_callback_changed_size_hints(void *data, Evas *e EINA_UNUSED, Evas_O static void _elm_win_move(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); int x, y; if (!sd) return; @@ -663,7 +661,7 @@ _elm_win_resize_job(void *data) static void _elm_win_resize(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); if (!sd) return; ecore_job_del(sd->deferred_resize_job); @@ -673,20 +671,20 @@ _elm_win_resize(Ecore_Evas *ee) static void _elm_win_mouse_in(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); if (!sd) return; if (sd->resizing) sd->resizing = EINA_FALSE; } static void -_elm_win_focus_highlight_reconfigure_job_stop(Elm_Win_Smart_Data *sd) +_elm_win_focus_highlight_reconfigure_job_stop(Elm_Win_Data *sd) { ELM_SAFE_FREE(sd->focus_highlight.reconf_job, ecore_job_del); } static void -_elm_win_focus_highlight_visible_set(Elm_Win_Smart_Data *sd, +_elm_win_focus_highlight_visible_set(Elm_Win_Data *sd, Eina_Bool visible) { Evas_Object *fobj = sd->focus_highlight.fobj; @@ -704,7 +702,7 @@ _elm_win_focus_highlight_visible_set(Elm_Win_Smart_Data *sd, } static void -_elm_win_focus_highlight_anim_setup(Elm_Win_Smart_Data *sd, +_elm_win_focus_highlight_anim_setup(Elm_Win_Data *sd, Evas_Object *obj) { Evas_Coord tx, ty, tw, th; @@ -734,7 +732,7 @@ _elm_win_focus_highlight_anim_setup(Elm_Win_Smart_Data *sd, } static void -_elm_win_focus_highlight_simple_setup(Elm_Win_Smart_Data *sd, +_elm_win_focus_highlight_simple_setup(Elm_Win_Data *sd, Evas_Object *obj) { Evas_Object *clip, *target = sd->focus_highlight.cur.target; @@ -843,7 +841,7 @@ the_end: } static void -_elm_win_focus_highlight_reconfigure_job_start(Elm_Win_Smart_Data *sd) +_elm_win_focus_highlight_reconfigure_job_start(Elm_Win_Data *sd) { ecore_job_del(sd->focus_highlight.reconf_job); @@ -854,7 +852,7 @@ _elm_win_focus_highlight_reconfigure_job_start(Elm_Win_Smart_Data *sd) static void _elm_win_focus_in(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); Evas_Object *obj; unsigned int order = 0; @@ -888,7 +886,7 @@ _elm_win_focus_in(Ecore_Evas *ee) static void _elm_win_focus_out(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); Evas_Object *obj; if (!sd) return; @@ -916,7 +914,7 @@ _elm_win_focus_out(Ecore_Evas *ee) } static void -_elm_win_available_profiles_del(Elm_Win_Smart_Data *sd) +_elm_win_available_profiles_del(Elm_Win_Data *sd) { if (!sd->profile.available_list) return; @@ -928,13 +926,13 @@ _elm_win_available_profiles_del(Elm_Win_Smart_Data *sd) } static void -_elm_win_profile_del(Elm_Win_Smart_Data *sd) +_elm_win_profile_del(Elm_Win_Data *sd) { ELM_SAFE_FREE(sd->profile.name, eina_stringshare_del); } static Eina_Bool -_elm_win_profile_set(Elm_Win_Smart_Data *sd, const char *profile) +_internal_elm_win_profile_set(Elm_Win_Data *sd, const char *profile) { Eina_Bool changed = EINA_FALSE; if (profile) @@ -960,7 +958,7 @@ _elm_win_profile_set(Elm_Win_Smart_Data *sd, const char *profile) } static void -_elm_win_profile_update(Elm_Win_Smart_Data *sd) +_elm_win_profile_update(Elm_Win_Data *sd) { if (sd->profile.available_list) { @@ -983,7 +981,7 @@ _elm_win_profile_update(Elm_Win_Smart_Data *sd) * change current profile to the 1st element of an array. */ if (!found) - _elm_win_profile_set(sd, sd->profile.available_list[0]); + _internal_elm_win_profile_set(sd, sd->profile.available_list[0]); } _elm_config_profile_set(sd->profile.name); @@ -1002,7 +1000,7 @@ _elm_win_profile_update(Elm_Win_Smart_Data *sd) static void _elm_win_state_change(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); Evas_Object *obj; Eina_Bool ch_withdrawn = EINA_FALSE; Eina_Bool ch_sticky = EINA_FALSE; @@ -1044,7 +1042,7 @@ _elm_win_state_change(Ecore_Evas *ee) } profile = ecore_evas_window_profile_get(sd->ee); - ch_profile = _elm_win_profile_set(sd, profile); + ch_profile = _internal_elm_win_profile_set(sd, profile); if (sd->wm_rot.use) { @@ -1104,22 +1102,16 @@ _elm_win_state_change(Ecore_Evas *ee) } } -static void -_elm_win_smart_focus_next_manager_is(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, Elm_Win_Data *_pd EINA_UNUSED) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - *ret = EINA_TRUE; + return EINA_TRUE; } -static void -_elm_win_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_focus_next(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, Elm_Focus_Direction dir, Evas_Object **next) { - Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction); - Evas_Object **next = va_arg(*list, Evas_Object **); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - if (ret) *ret = EINA_FALSE; - - ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); + ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE); const Eina_List *items; void *(*list_data_get)(const Eina_List *list); @@ -1131,44 +1123,31 @@ _elm_win_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list) { items = wd->subobjs; if (!items) - return; + return EINA_FALSE; } list_data_get = eina_list_data_get; elm_widget_focus_list_next_get(obj, items, list_data_get, dir, next); - if (*next) - { - if (ret) *ret = EINA_TRUE; - return; - } + if (*next) return EINA_TRUE; } *next = (Evas_Object *)obj; - return; + return EINA_FALSE; } -static void -_elm_win_smart_focus_direction_manager_is(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_focus_direction_manager_is(Eo *obj EINA_UNUSED, Elm_Win_Data *_pd EINA_UNUSED) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - *ret = EINA_TRUE; + return EINA_TRUE; } -static void -_elm_win_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_focus_direction(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, const Evas_Object *base, double degree, Evas_Object **direction, double *weight) { - const Evas_Object *base = va_arg(*list, Evas_Object *); - double degree = va_arg(*list, double); - Evas_Object **direction = va_arg(*list, Evas_Object **); - double *weight = va_arg(*list, double *); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - if (ret) *ret = EINA_FALSE; - Eina_Bool int_ret = EINA_FALSE; - const Eina_List *items; void *(*list_data_get)(const Eina_List *list); - ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); + ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE); /* Focus chain */ if (wd->subobjs) @@ -1178,49 +1157,43 @@ _elm_win_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list *list) list_data_get = eina_list_data_get; - int_ret = elm_widget_focus_list_direction_get + return elm_widget_focus_list_direction_get (obj, base, items, list_data_get, degree, direction, weight); - if (ret) *ret = int_ret; } + + return EINA_FALSE; } -static void -_elm_win_smart_on_focus(Eo *obj, void *_pd, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_on_focus(Eo *obj, Elm_Win_Data *sd) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - if (ret) *ret = EINA_TRUE; - Elm_Win_Smart_Data *sd = _pd; Eina_Bool int_ret = EINA_FALSE; - eo_do_super(obj, MY_CLASS, elm_obj_widget_on_focus(&int_ret)); - if (!int_ret) return; + if (!int_ret) return EINA_TRUE; if (sd->img_obj) evas_object_focus_set(sd->img_obj, elm_widget_focus_get(obj)); else evas_object_focus_set(obj, elm_widget_focus_get(obj)); + + return EINA_TRUE; } -static void -_elm_win_smart_event(Eo *obj, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_event(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED, Evas_Object *src, Evas_Callback_Type type, void *event_info) { - Evas_Object *src = va_arg(*list, Evas_Object *); - Evas_Callback_Type type = va_arg(*list, Evas_Callback_Type); - Evas_Event_Key_Down *ev = va_arg(*list, void *); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - - if (ret) *ret = EINA_FALSE; (void) src; + Evas_Event_Key_Down *ev = event_info; - if (elm_widget_disabled_get(obj)) return; - if (type != EVAS_CALLBACK_KEY_DOWN) return; + if (elm_widget_disabled_get(obj)) return EINA_FALSE; + if (type != EVAS_CALLBACK_KEY_DOWN) return EINA_FALSE; if ((!strcmp(ev->key, "Tab")) || (!strcmp(ev->key, "ISO_Left_Tab"))) { if (evas_key_modifier_is_set(ev->modifiers, "Control") || evas_key_modifier_is_set(ev->modifiers, "Alt")) - return; + return EINA_FALSE; if (evas_key_modifier_is_set(ev->modifiers, "Shift")) elm_widget_focus_cycle(obj, ELM_FOCUS_PREVIOUS); else @@ -1257,11 +1230,11 @@ _elm_win_smart_event(Eo *obj, void *_pd EINA_UNUSED, va_list *list) goto success; } - return; + return EINA_FALSE; success: ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD; - if (ret) *ret = EINA_TRUE; + return EINA_TRUE; } static void @@ -1271,11 +1244,9 @@ _deferred_ecore_evas_free(void *data) _elm_win_deferred_free--; } -static void -_elm_win_smart_show(Eo *obj, void *_pd, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_win_evas_smart_show(Eo *obj, Elm_Win_Data *sd) { - Elm_Win_Smart_Data *sd = _pd; - if (!evas_object_visible_get(obj)) _elm_win_state_eval_queue(); eo_do_super(obj, MY_CLASS, evas_obj_smart_show()); @@ -1285,11 +1256,9 @@ _elm_win_smart_show(Eo *obj, void *_pd, va_list *list EINA_UNUSED) if (sd->shot.info) _shot_handle(sd); } -static void -_elm_win_smart_hide(Eo *obj, void *_pd, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_win_evas_smart_hide(Eo *obj, Elm_Win_Data *sd) { - Elm_Win_Smart_Data *sd = _pd; - if (evas_object_visible_get(obj)) _elm_win_state_eval_queue(); eo_do_super(obj, MY_CLASS, evas_obj_smart_hide()); @@ -1387,7 +1356,7 @@ _elm_win_focus_target_get(Evas_Object *obj) } static void -_elm_win_focus_target_callbacks_add(Elm_Win_Smart_Data *sd) +_elm_win_focus_target_callbacks_add(Elm_Win_Data *sd) { Evas_Object *obj = sd->focus_highlight.cur.target; if (!obj) return; @@ -1401,7 +1370,7 @@ _elm_win_focus_target_callbacks_add(Elm_Win_Smart_Data *sd) } static void -_elm_win_focus_target_callbacks_del(Elm_Win_Smart_Data *sd) +_elm_win_focus_target_callbacks_del(Elm_Win_Data *sd) { Evas_Object *obj = sd->focus_highlight.cur.target; @@ -1454,7 +1423,7 @@ _elm_win_object_focus_out(void *data, } static void -_elm_win_focus_highlight_shutdown(Elm_Win_Smart_Data *sd) +_elm_win_focus_highlight_shutdown(Elm_Win_Data *sd) { _elm_win_focus_highlight_reconfigure_job_stop(sd); if (sd->focus_highlight.cur.target) @@ -1538,11 +1507,9 @@ _elm_win_img_callbacks_del(Evas_Object *obj, Evas_Object *imgobj) (imgobj, EVAS_CALLBACK_FOCUS_OUT, _win_img_focus_out, obj); } -static void -_elm_win_smart_del(Eo *obj, void *_pd, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_win_evas_smart_del(Eo *obj, Elm_Win_Data *sd) { - Elm_Win_Smart_Data *sd = _pd; - evas_object_event_callback_del_full(sd->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _elm_win_on_resize_obj_changed_size_hints, @@ -1658,13 +1625,9 @@ _elm_win_obj_intercept_show(void *data, evas_object_show(obj); } -static void -_elm_win_smart_move(Eo *obj, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static void +_elm_win_evas_smart_move(Eo *obj, Elm_Win_Data *sd, Evas_Coord x, Evas_Coord y) { - Evas_Coord x = va_arg(*list, Evas_Coord); - Evas_Coord y = va_arg(*list, Evas_Coord); - Elm_Win_Smart_Data *sd = _pd; - if (sd->img_obj) { if ((x != sd->screen.x) || (y != sd->screen.y)) @@ -1702,14 +1665,9 @@ _elm_win_smart_move(Eo *obj, void *_pd EINA_UNUSED, va_list *list) } } -static void -_elm_win_smart_resize(Eo *obj, void *_pd, va_list *list) +EOLIAN static void +_elm_win_evas_smart_resize(Eo *obj, Elm_Win_Data *sd, Evas_Coord w, Evas_Coord h) { - Evas_Coord w = va_arg(*list, Evas_Coord); - Evas_Coord h = va_arg(*list, Evas_Coord); - - Elm_Win_Smart_Data *sd = _pd; - eo_do_super(obj, MY_CLASS, evas_obj_smart_resize(w, h)); if (sd->img_obj) @@ -1734,7 +1692,7 @@ _elm_win_smart_resize(Eo *obj, void *_pd, va_list *list) static void _elm_win_delete_request(Ecore_Evas *ee) { - Elm_Win_Smart_Data *sd = _elm_win_associate_get(ee); + Elm_Win_Data *sd = _elm_win_associate_get(ee); Evas_Object *obj; if (!sd) return; @@ -1777,7 +1735,7 @@ _elm_ee_xwin_get(const Ecore_Evas *ee) #ifdef HAVE_ELEMENTARY_X static void -_elm_win_xwindow_get(Elm_Win_Smart_Data *sd) +_internal_elm_win_xwindow_get(Elm_Win_Data *sd) { sd->x.xwin = _elm_ee_xwin_get(sd->ee); } @@ -1807,7 +1765,7 @@ _elm_ee_wlwin_get(const Ecore_Evas *ee) #ifdef HAVE_ELEMENTARY_WAYLAND static void -_elm_win_wlwindow_get(Elm_Win_Smart_Data *sd) +_elm_win_wlwindow_get(Elm_Win_Data *sd) { sd->wl.win = _elm_ee_wlwin_get(sd->ee); } @@ -1815,11 +1773,11 @@ _elm_win_wlwindow_get(Elm_Win_Smart_Data *sd) #ifdef HAVE_ELEMENTARY_X static void -_elm_win_xwin_update(Elm_Win_Smart_Data *sd) +_elm_win_xwin_update(Elm_Win_Data *sd) { const char *s; - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->parent) { ELM_WIN_DATA_GET(sd->parent, sdp); @@ -2230,7 +2188,7 @@ _elm_win_focus_highlight_anim_end(void *data, } static void -_elm_win_focus_highlight_init(Elm_Win_Smart_Data *sd) +_elm_win_focus_highlight_init(Elm_Win_Data *sd) { evas_event_callback_add(sd->evas, EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN, _elm_win_object_focus_in, sd->obj); @@ -2321,7 +2279,7 @@ static struct _resize_info _border_corner[4] = #endif static void -_elm_win_frame_obj_update(Elm_Win_Smart_Data *sd) +_elm_win_frame_obj_update(Elm_Win_Data *sd) { int fx, fy, fw, fh; int ox, oy, ow, oh; @@ -2351,7 +2309,7 @@ _elm_win_frame_obj_move(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { - Elm_Win_Smart_Data *sd; + Elm_Win_Data *sd; if (!(sd = data)) return; if (!sd->client_obj) return; @@ -2365,7 +2323,7 @@ _elm_win_frame_obj_resize(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { - Elm_Win_Smart_Data *sd; + Elm_Win_Data *sd; if (!(sd = data)) return; if (!sd->client_obj) return; @@ -2490,7 +2448,7 @@ _elm_win_frame_cb_minimize(void *data, } static void -_elm_win_frame_maximized_state_update(Elm_Win_Smart_Data *sd, Eina_Bool maximized) +_elm_win_frame_maximized_state_update(Elm_Win_Data *sd, Eina_Bool maximized) { const char *emission; @@ -2561,7 +2519,7 @@ _elm_win_frame_cb_close(void *data, } static void -_elm_win_frame_add(Elm_Win_Smart_Data *sd, +_elm_win_frame_add(Elm_Win_Data *sd, const char *style) { Evas_Object *obj = sd->obj; @@ -2640,7 +2598,7 @@ _elm_win_frame_add(Elm_Win_Smart_Data *sd, } static void -_elm_win_frame_del(Elm_Win_Smart_Data *sd) +_elm_win_frame_del(Elm_Win_Data *sd) { int w, h; @@ -2709,7 +2667,7 @@ _debug_key_down(void *data EINA_UNUSED, #endif static void -_win_inlined_image_set(Elm_Win_Smart_Data *sd) +_win_inlined_image_set(Elm_Win_Data *sd) { evas_object_image_alpha_set(sd->img_obj, EINA_FALSE); evas_object_image_filled_set(sd->img_obj, EINA_TRUE); @@ -2737,8 +2695,8 @@ _elm_win_on_icon_del(void *data, if (sd->icon == obj) sd->icon = NULL; } -static void -_elm_win_smart_add(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_win_evas_smart_add(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED) { eo_do_super(obj, MY_CLASS, evas_obj_smart_add()); @@ -2856,26 +2814,23 @@ _accel_is_gl(void) return EINA_FALSE; } -static void -_win_constructor(Eo *obj, void *_pd, va_list *list) +EOLIAN static void +_elm_win_constructor(Eo *obj, Elm_Win_Data *sd, const char *name, Elm_Win_Type type) { - Elm_Win_Smart_Data *sd = _pd; sd->obj = obj; // in ctor - const char *name = va_arg(*list, const char *); - Elm_Win_Type type = va_arg(*list, Elm_Win_Type); Evas_Object *parent; Evas *e; const Eina_List *l; const char *fontpath, *engine = NULL, *enginelist[32], *disp; int i; - Elm_Win_Smart_Data tmp_sd; + Elm_Win_Data tmp_sd; eo_do(obj, eo_parent_get(&parent)); /* just to store some data while trying out to create a canvas */ - memset(&tmp_sd, 0, sizeof(Elm_Win_Smart_Data)); + memset(&tmp_sd, 0, sizeof(Elm_Win_Data)); switch (type) { @@ -3124,7 +3079,7 @@ _win_constructor(Eo *obj, void *_pd, va_list *list) sd->indmode = ELM_WIN_INDICATOR_UNKNOWN; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) { ecore_x_io_error_handler_set(_elm_x_io_err, NULL); @@ -3283,28 +3238,17 @@ _win_constructor(Eo *obj, void *_pd, va_list *list) evas_object_show(sd->layout); } -static void -_constructor(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_win_eo_base_constructor(Eo *obj, Elm_Win_Data *_pd EINA_UNUSED) { eo_error_set(obj); ERR("only custom constructor can be used with '%s' class", MY_CLASS_NAME); } -EAPI Elm_Win_Type -elm_win_type_get(const Evas_Object *obj) +EOLIAN static Elm_Win_Type +_elm_win_type_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) ELM_WIN_UNKNOWN; - Elm_Win_Type ret = ELM_WIN_UNKNOWN; - eo_do((Eo *) obj, elm_obj_win_type_get(&ret)); - return ret; -} - -static void -_type_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Elm_Win_Type *ret = va_arg(*list, Elm_Win_Type *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->type; + return sd->type; } EAPI Evas_Object * @@ -3330,61 +3274,27 @@ elm_win_util_standard_add(const char *name, return win; } -EAPI void -elm_win_resize_object_add(Evas_Object *obj, - Evas_Object *subobj) +EOLIAN static void +_elm_win_resize_object_add(Eo *obj, Elm_Win_Data *sd, Evas_Object *subobj) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_resize_object_add(subobj)); -} - -static void -_resize_object_add(Eo *obj, void *_pd, va_list *list) -{ - Evas_Object *subobj = va_arg(*list, Evas_Object *); - - Elm_Win_Smart_Data *sd = _pd; - elm_widget_sub_object_add(obj, subobj); if (!evas_object_box_append(sd->box, subobj)) ERR("could not append %p to box", subobj); } -EAPI void -elm_win_resize_object_del(Evas_Object *obj, - Evas_Object *subobj) +EOLIAN static void +_elm_win_resize_object_del(Eo *obj, Elm_Win_Data *sd, Evas_Object *subobj) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_resize_object_del(subobj)); -} - -static void -_resize_object_del(Eo *obj, void *_pd, va_list *list) -{ - Evas_Object *subobj = va_arg(*list, Evas_Object *); - Elm_Win_Smart_Data *sd = _pd; - if (!elm_widget_sub_object_del(obj, subobj)) ERR("could not remove sub object %p from %p", subobj, obj); evas_object_box_remove(sd->box, subobj); } -EAPI void -elm_win_title_set(Evas_Object *obj, - const char *title) +EOLIAN static void +_elm_win_title_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *title) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_title_set(title)); -} - -static void -_title_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char *title = va_arg(*list, const char *); - Elm_Win_Smart_Data *sd = _pd; - if (!title) return; eina_stringshare_replace(&(sd->title), title); TRAP(sd, title_set, sd->title); @@ -3393,37 +3303,15 @@ _title_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) (sd->frame_obj, "elm.text.title", sd->title); } -EAPI const char * -elm_win_title_get(const Evas_Object *obj) +EOLIAN static const char* +_elm_win_title_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const char *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_title_get(&ret)); - return ret; + return sd->title; } -static void -_title_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_icon_name_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *icon_name) { - const char **ret = va_arg(*list, const char **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->title; -} - -EAPI void -elm_win_icon_name_set(Evas_Object *obj, - const char *icon_name) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_icon_name_set(icon_name)); -} - -static void -_icon_name_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char *icon_name = va_arg(*list, const char *); - Elm_Win_Smart_Data *sd = _pd; - if (!icon_name) return; eina_stringshare_replace(&(sd->icon_name), icon_name); #ifdef HAVE_ELEMENTARY_X @@ -3431,36 +3319,15 @@ _icon_name_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI const char * -elm_win_icon_name_get(const Evas_Object *obj) +EOLIAN static const char* +_elm_win_icon_name_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const char *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_icon_name_get(&ret)); - return ret; + return sd->icon_name; } -static void -_icon_name_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_role_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *role) { - const char **ret = va_arg(*list, const char **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->icon_name; -} - -EAPI void -elm_win_role_set(Evas_Object *obj, const char *role) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_role_set(role)); -} - -static void -_role_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char *role = va_arg(*list, const char *); - Elm_Win_Smart_Data *sd = _pd; - if (!role) return; eina_stringshare_replace(&(sd->role), role); #ifdef HAVE_ELEMENTARY_X @@ -3468,37 +3335,15 @@ _role_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI const char * -elm_win_role_get(const Evas_Object *obj) +EOLIAN static const char* +_elm_win_role_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const char *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_role_get(&ret)); - return ret; + return sd->role; } -static void -_role_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_icon_object_set(Eo *obj, Elm_Win_Data *sd, Evas_Object *icon) { - const char **ret = va_arg(*list, const char **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->role; -} - -EAPI void -elm_win_icon_object_set(Evas_Object *obj, - Evas_Object *icon) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_icon_object_set(icon)); -} - -static void -_icon_object_set(Eo *obj, void *_pd, va_list *list) -{ - Evas_Object *icon = va_arg(*list, Evas_Object *); - Elm_Win_Smart_Data *sd = _pd; - if (sd->icon) evas_object_event_callback_del_full (sd->icon, EVAS_CALLBACK_DEL, _elm_win_on_icon_del, obj); @@ -3511,116 +3356,47 @@ _icon_object_set(Eo *obj, void *_pd, va_list *list) #endif } -EAPI const Evas_Object * -elm_win_icon_object_get(const Evas_Object *obj) +EOLIAN static const Evas_Object* +_elm_win_icon_object_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const Evas_Object *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_icon_object_get(&ret)); - return ret; + return sd->icon; } -static void -_icon_object_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_autodel_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool autodel) { - const Evas_Object **ret = va_arg(*list, const Evas_Object **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->icon; -} - -EAPI void -elm_win_autodel_set(Evas_Object *obj, - Eina_Bool autodel) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_autodel_set(autodel)); -} - -static void -_autodel_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool autodel = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; sd->autodel = autodel; } -EAPI Eina_Bool -elm_win_autodel_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_autodel_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_autodel_get(&ret)); - return ret; + return sd->autodel; } -static void -_autodel_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_activate(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->autodel; -} - -EAPI void -elm_win_activate(Evas_Object *obj) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_activate()); -} - -static void -_activate(Eo *obj EINA_UNUSED, void *_pd, va_list *list EINA_UNUSED) -{ - Elm_Win_Smart_Data *sd = _pd; TRAP(sd, activate); } -EAPI void -elm_win_lower(Evas_Object *obj) +EOLIAN static void +_elm_win_lower(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_lower()); -} - -static void -_lower(Eo *obj EINA_UNUSED, void *_pd, va_list *list EINA_UNUSED) -{ - Elm_Win_Smart_Data *sd = _pd; TRAP(sd, lower); } -EAPI void -elm_win_raise(Evas_Object *obj) +EOLIAN static void +_elm_win_raise(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_raise()); -} - -static void -_raise(Eo *obj EINA_UNUSED, void *_pd, va_list *list EINA_UNUSED) -{ - Elm_Win_Smart_Data *sd = _pd; TRAP(sd, raise); } -EAPI void -elm_win_center(Evas_Object *obj, - Eina_Bool h, - Eina_Bool v) +EOLIAN static void +_elm_win_center(Eo *obj, Elm_Win_Data *sd, Eina_Bool h, Eina_Bool v) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_center(h, v)); -} - -static void -_center(Eo *obj, void *_pd, va_list *list) -{ - Eina_Bool h = va_arg(*list, int); - Eina_Bool v = va_arg(*list, int); int win_w, win_h, screen_w, screen_h, nx, ny; - Elm_Win_Smart_Data *sd = _pd; - if ((trap) && (trap->center) && (!trap->center(sd->trap_data, obj))) return; @@ -3640,20 +3416,9 @@ _center(Eo *obj, void *_pd, va_list *list) evas_object_move(obj, nx, ny); } -EAPI void -elm_win_borderless_set(Evas_Object *obj, - Eina_Bool borderless) +EOLIAN static void +_elm_win_borderless_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool borderless) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_borderless_set(borderless)); -} - -static void -_borderless_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool borderless = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - Eina_Bool need_frame = EINA_FALSE; const char *engine_name = ecore_evas_engine_name_get(sd->ee); @@ -3681,74 +3446,30 @@ _borderless_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_borderless_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_borderless_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_borderless_get(&ret)); - return ret; + return ecore_evas_borderless_get(sd->ee); } -static void -_borderless_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_shaped_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool shaped) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = ecore_evas_borderless_get(sd->ee); -} - -EAPI void -elm_win_shaped_set(Evas_Object *obj, - Eina_Bool shaped) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_shaped_set(shaped)); -} - -static void -_shaped_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool shaped = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - TRAP(sd, shaped_set, shaped); #ifdef HAVE_ELEMENTARY_X _elm_win_xwin_update(sd); #endif } -EAPI Eina_Bool -elm_win_shaped_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_shaped_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_shaped_get(&ret)); - return ret; + return ecore_evas_shaped_get(sd->ee); } -static void -_shaped_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_alpha_set(Eo *obj, Elm_Win_Data *sd, Eina_Bool enabled) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = ecore_evas_shaped_get(sd->ee); -} - -EAPI void -elm_win_alpha_set(Evas_Object *obj, - Eina_Bool enabled) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_alpha_set(enabled)); -} - -static void -_alpha_set(Eo *obj, void *_pd, va_list *list) -{ - Eina_Bool enabled = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - if (sd->img_obj) { evas_object_image_alpha_set(sd->img_obj, enabled); @@ -3776,81 +3497,39 @@ _alpha_set(Eo *obj, void *_pd, va_list *list) } } -EAPI Eina_Bool -elm_win_alpha_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_alpha_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_alpha_get(&ret)); - return ret; -} - -static void -_alpha_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - if (sd->img_obj) { - *ret = evas_object_image_alpha_get(sd->img_obj); + return evas_object_image_alpha_get(sd->img_obj); } else { - *ret = ecore_evas_alpha_get(sd->ee); + return ecore_evas_alpha_get(sd->ee); } + + return EINA_FALSE; } -EAPI void -elm_win_override_set(Evas_Object *obj, - Eina_Bool override) +EOLIAN static void +_elm_win_override_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool override) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_override_set(override)); -} - -static void -_override_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool override = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - TRAP(sd, override_set, override); #ifdef HAVE_ELEMENTARY_X _elm_win_xwin_update(sd); #endif } -EAPI Eina_Bool -elm_win_override_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_override_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_override_get(&ret)); - return ret; + return ecore_evas_override_get(sd->ee); } -static void -_override_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_fullscreen_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool fullscreen) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = ecore_evas_override_get(sd->ee); -} - -EAPI void -elm_win_fullscreen_set(Evas_Object *obj, - Eina_Bool fullscreen) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_fullscreen_set(fullscreen)); -} - -static void -_fullscreen_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool fullscreen = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; // YYY: handle if sd->img_obj if (ENGINE_COMPARE(ELM_SOFTWARE_FB) || ENGINE_COMPARE(ELM_SOFTWARE_16_WINCE)) @@ -3890,23 +3569,9 @@ _fullscreen_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) } } -EAPI Eina_Bool -elm_win_fullscreen_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_fullscreen_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_fullscreen_get(&ret)); - return ret; -} - -static void -_fullscreen_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - - if (!ret) return; - const char* engine_name = ecore_evas_engine_name_get(sd->ee); if (engine_name && @@ -3914,21 +3579,14 @@ _fullscreen_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) (!strcmp(engine_name, ELM_SOFTWARE_16_WINCE)))) { // these engines... can ONLY be fullscreen - *ret = EINA_TRUE; + return EINA_TRUE; } else { - *ret = sd->fullscreen; + return sd->fullscreen; } -} -EAPI Evas_Object * -elm_win_main_menu_get(const Evas_Object *obj) -{ - ELM_WIN_CHECK(obj) NULL; - Evas_Object *ret; - eo_do((Eo *) obj, elm_obj_win_main_menu_get(&ret)); - return ret; + return EINA_FALSE; } static void @@ -3952,11 +3610,9 @@ _dbus_menu_set(Eina_Bool dbus_connect, void *data) } } -static void -_main_menu_get(Eo *obj, void *_pd, va_list *list) +EOLIAN static Evas_Object * +_elm_win_main_menu_get(Eo *obj, Elm_Win_Data *sd) { - Eo **ret = va_arg(*list, Eo **); - Elm_Win_Smart_Data *sd = _pd; Eina_Bool use_dbus = EINA_FALSE; if (sd->main_menu) goto end; @@ -3979,23 +3635,12 @@ _main_menu_get(Eo *obj, void *_pd, va_list *list) _dbus_menu_set(EINA_FALSE, obj); end: - *ret = sd->main_menu; + return sd->main_menu; } -EAPI void -elm_win_maximized_set(Evas_Object *obj, - Eina_Bool maximized) +EOLIAN static void +_elm_win_maximized_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool maximized) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_maximized_set(maximized)); -} - -static void -_maximized_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool maximized = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - _elm_win_frame_maximized_state_update(sd, maximized); // YYY: handle if sd->img_obj TRAP(sd, maximized_set, maximized); @@ -4004,37 +3649,15 @@ _maximized_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_maximized_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_maximized_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_maximized_get(&ret)); - return ret; + return sd->maximized; } -static void -_maximized_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_iconified_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool iconified) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->maximized; -} - -EAPI void -elm_win_iconified_set(Evas_Object *obj, - Eina_Bool iconified) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_iconified_set(iconified)); -} - -static void -_iconified_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool iconified = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - // sd->iconified = iconified; TRAP(sd, iconified_set, iconified); #ifdef HAVE_ELEMENTARY_X @@ -4042,37 +3665,15 @@ _iconified_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_iconified_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_iconified_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_iconified_get(&ret)); - return ret; + return sd->iconified; } -static void -_iconified_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_withdrawn_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool withdrawn) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->iconified; -} - -EAPI void -elm_win_withdrawn_set(Evas_Object *obj, - Eina_Bool withdrawn) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_withdrawn_set(withdrawn)); -} - -static void -_withdrawn_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool withdrawn = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - // sd->withdrawn = withdrawn; TRAP(sd, withdrawn_set, withdrawn); #ifdef HAVE_ELEMENTARY_X @@ -4080,38 +3681,15 @@ _withdrawn_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_withdrawn_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_withdrawn_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_withdrawn_get(&ret)); - return ret; + return sd->withdrawn; } -static void -_withdrawn_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_available_profiles_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char **profiles, unsigned int count) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->withdrawn; -} - -EAPI void -elm_win_available_profiles_set(Evas_Object *obj, - const char **profiles, - unsigned int count) -{ - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_available_profiles_set(profiles, count)); -} - -static void -_available_profiles_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char **profiles = va_arg(*list, const char **); - unsigned int count = va_arg(*list, unsigned int); - Elm_Win_Smart_Data *sd = _pd; Eina_Bool found = EINA_FALSE; _elm_win_available_profiles_del(sd); @@ -4160,29 +3738,12 @@ _available_profiles_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) } } -EAPI Eina_Bool -elm_win_available_profiles_get(Evas_Object *obj, - char ***profiles, - unsigned int *count) +EOLIAN static Eina_Bool +_elm_win_available_profiles_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, char ***profiles, unsigned int *count) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_available_profiles_get(profiles, count, &ret)); - return ret; -} - -static void -_available_profiles_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - char ***profiles = va_arg(*list, char ***); - unsigned int *count = va_arg(*list, unsigned int *); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - Eina_Bool res; - if (ecore_evas_window_profile_supported_get(sd->ee)) { - res = ecore_evas_window_available_profiles_get(sd->ee, + return ecore_evas_window_available_profiles_get(sd->ee, profiles, count); } @@ -4190,25 +3751,13 @@ _available_profiles_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) { if (profiles) *profiles = (char **)sd->profile.available_list; if (count) *count = sd->profile.count; - res = EINA_TRUE; + return EINA_TRUE; } - if (ret) *ret = res; } -EAPI void -elm_win_profile_set(Evas_Object *obj, - const char *profile) +EOLIAN static void +_elm_win_profile_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *profile) { - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_profile_set(profile)); -} - -static void -_profile_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char *profile = va_arg(*list, const char *); - Elm_Win_Smart_Data *sd = _pd; - /* check to see if a given profile is present in an available profiles */ if ((profile) && (sd->profile.available_list)) { @@ -4233,42 +3782,20 @@ _profile_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) } else { - if (_elm_win_profile_set(sd, profile)) + if (_internal_elm_win_profile_set(sd, profile)) _elm_win_profile_update(sd); } } -EAPI const char * -elm_win_profile_get(const Evas_Object *obj) +EOLIAN static const char* +_elm_win_profile_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const char *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_profile_get(&ret)); - return ret; + return sd->profile.name; } -static void -_profile_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_urgent_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool urgent) { - const char **ret = va_arg(*list, const char **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->profile.name; -} - -EAPI void -elm_win_urgent_set(Evas_Object *obj, - Eina_Bool urgent) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_urgent_set(urgent)); -} - -static void -_urgent_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool urgent = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - sd->urgent = urgent; TRAP(sd, urgent_set, urgent); #ifdef HAVE_ELEMENTARY_X @@ -4276,37 +3803,15 @@ _urgent_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_urgent_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_urgent_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_urgent_get(&ret)); - return ret; + return sd->urgent; } -static void -_urgent_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_demand_attention_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool demand_attention) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->urgent; -} - -EAPI void -elm_win_demand_attention_set(Evas_Object *obj, - Eina_Bool demand_attention) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_demand_attention_set(demand_attention)); -} - -static void -_demand_attention_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool demand_attention = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - sd->demand_attention = demand_attention; TRAP(sd, demand_attention_set, demand_attention); #ifdef HAVE_ELEMENTARY_X @@ -4314,37 +3819,15 @@ _demand_attention_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_demand_attention_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_demand_attention_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_demand_attention_get(&ret)); - return ret; + return sd->demand_attention; } -static void -_demand_attention_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_modal_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool modal) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->demand_attention; -} - -EAPI void -elm_win_modal_set(Evas_Object *obj, - Eina_Bool modal) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_modal_set(modal)); -} - -static void -_modal_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool modal = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - sd->modal = modal; TRAP(sd, modal_set, modal); #ifdef HAVE_ELEMENTARY_X @@ -4352,37 +3835,15 @@ _modal_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_modal_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_modal_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_modal_get(&ret)); - return ret; + return sd->modal; } -static void -_modal_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_aspect_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, double aspect) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->modal; -} - -EAPI void -elm_win_aspect_set(Evas_Object *obj, - double aspect) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_aspect_set(aspect)); -} - -static void -_aspect_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - double aspect = va_arg(*list, double); - Elm_Win_Smart_Data *sd = _pd; - sd->aspect = aspect; TRAP(sd, aspect_set, aspect); #ifdef HAVE_ELEMENTARY_X @@ -4390,36 +3851,15 @@ _aspect_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI double -elm_win_aspect_get(const Evas_Object *obj) +EOLIAN static double +_elm_win_aspect_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) 0.0; - double ret = 0.0; - eo_do((Eo *) obj, elm_obj_win_aspect_get(&ret)); - return ret; + return sd->aspect; } -static void -_aspect_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_size_base_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int w, int h) { - double *ret = va_arg(*list, double *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->aspect; -} - -EAPI void -elm_win_size_base_set(Evas_Object *obj, int w, int h) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_size_base_set(w, h)); -} - -static void -_size_base_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int w = va_arg(*list, int); - int h = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; sd->size_base_w = w; sd->size_base_h = h; TRAP(sd, size_base_set, w, h); @@ -4428,37 +3868,16 @@ _size_base_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI void -elm_win_size_base_get(Evas_Object *obj, int *w, int *h) +EOLIAN static void +_elm_win_size_base_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int *w, int *h) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_size_base_get(w, h)); -} - -static void -_size_base_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *w = va_arg(*list, int *); - int *h = va_arg(*list, int *); - - Elm_Win_Smart_Data *sd = _pd; if (w) *w = sd->size_base_w; if (w) *h = sd->size_base_h; } -EAPI void -elm_win_size_step_set(Evas_Object *obj, int w, int h) +EOLIAN static void +_elm_win_size_step_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int w, int h) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_size_step_set(w, h)); -} - -static void -_size_step_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int w = va_arg(*list, int); - int h = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; sd->size_step_w = w; sd->size_step_h = h; TRAP(sd, size_step_set, w, h); @@ -4467,58 +3886,26 @@ _size_step_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI void -elm_win_size_step_get(Evas_Object *obj, int *w, int *h) +EOLIAN static void +_elm_win_size_step_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int *w, int *h) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_size_step_get(w, h)); -} - -static void -_size_step_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *w = va_arg(*list, int *); - int *h = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; if (w) *w = sd->size_step_w; if (w) *h = sd->size_step_h; } -EAPI void -elm_win_layer_set(Evas_Object *obj, - int layer) +EOLIAN static void +_elm_win_layer_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int layer) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_layer_set(layer)); -} - -static void -_layer_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int layer = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - TRAP(sd, layer_set, layer); #ifdef HAVE_ELEMENTARY_X _elm_win_xwin_update(sd); #endif } -EAPI int -elm_win_layer_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_layer_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) - 1; - int ret = - 1; - eo_do((Eo *) obj, elm_obj_win_layer_get(&ret)); - return ret; -} - -static void -_layer_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = ecore_evas_layer_get(sd->ee); + return ecore_evas_layer_get(sd->ee); } EAPI void @@ -4574,16 +3961,8 @@ _win_rotation_degree_check(int rotation) * This API resizes the internal window(ex: X window) and evas_output. * But this does not resize the elm window object and its contents. */ -EAPI void -elm_win_rotation_set(Evas_Object *obj, - int rotation) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_rotation_set(rotation)); -} - static void -_win_rotate(Evas_Object *obj, Elm_Win_Smart_Data *sd, int rotation, Eina_Bool resize) +_win_rotate(Evas_Object *obj, Elm_Win_Data *sd, int rotation, Eina_Bool resize) { rotation = _win_rotation_degree_check(rotation); if (sd->rot == rotation) return; @@ -4601,11 +3980,9 @@ _win_rotate(Evas_Object *obj, Elm_Win_Smart_Data *sd, int rotation, Eina_Bool re evas_object_smart_callback_call(obj, SIG_ROTATION_CHANGED, NULL); } -static void -_rotation_set(Eo *obj, void *_pd, va_list *list) +EOLIAN static void +_elm_win_rotation_set(Eo *obj, Elm_Win_Data *sd, int rotation) { - int rotation = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; _win_rotate(obj, sd, rotation, EINA_FALSE); } @@ -4613,54 +3990,22 @@ _rotation_set(Eo *obj, void *_pd, va_list *list) * This API does not resize the internal window (ex: X window). * But this resizes evas_output, elm window, and its contents. */ -EAPI void -elm_win_rotation_with_resize_set(Evas_Object *obj, - int rotation) +EOLIAN static void +_elm_win_rotation_with_resize_set(Eo *obj, Elm_Win_Data *sd, int rotation) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_rotation_with_resize_set(rotation)); -} - -static void -_rotation_with_resize_set(Eo *obj, void *_pd, va_list *list) -{ - int rotation = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; _win_rotate(obj, sd, rotation, EINA_TRUE); } -EAPI int -elm_win_rotation_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_rotation_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) - 1; - int ret = - 1; - eo_do((Eo *) obj, elm_obj_win_rotation_get(&ret)); - return ret; + return sd->rot; } -static void -_rotation_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static Eina_Bool +_elm_win_wm_rotation_supported_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->rot; -} - -EAPI Eina_Bool -elm_win_wm_rotation_supported_get(const Evas_Object *obj) -{ - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_wm_rotation_supported_get(&ret)); - return ret; -} - -static void -_wm_rotation_supported_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->wm_rot.wm_supported; + return sd->wm_rot.wm_supported; } /* This will unset a preferred rotation, if given preferred rotation is '-1'. @@ -4673,12 +4018,10 @@ elm_win_wm_rotation_preferred_rotation_set(const Evas_Object *obj, eo_do((Eo *) obj, elm_obj_win_wm_preferred_rotation_set(rotation)); } -static void -_wm_preferred_rotation_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_wm_preferred_rotation_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int rotation) { - int rotation = va_arg(*list, int); int rot; - Elm_Win_Smart_Data *sd = _pd; if (!sd->wm_rot.use) sd->wm_rot.use = EINA_TRUE; @@ -4695,38 +4038,15 @@ _wm_preferred_rotation_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) ecore_evas_wm_rotation_preferred_rotation_set(sd->ee, rot); } -EAPI int -elm_win_wm_rotation_preferred_rotation_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_wm_preferred_rotation_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) -1; - int ret = -1; - eo_do((Eo *) obj, elm_obj_win_wm_preferred_rotation_get(&ret)); - return ret; + return sd->wm_rot.preferred_rot; } -static void -_wm_preferred_rotation_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_wm_available_rotations_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const int *rotations, unsigned int count) { - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->wm_rot.preferred_rot; -} - -EAPI void -elm_win_wm_rotation_available_rotations_set(Evas_Object *obj, - const int *rotations, - unsigned int count) -{ - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_wm_available_rotations_set(rotations, count)); -} - -static void -_wm_available_rotations_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const int *rotations = va_arg(*list, const int *); - unsigned int count = va_arg(*list, unsigned int); - Elm_Win_Smart_Data *sd = _pd; unsigned int i; int r; @@ -4754,26 +4074,10 @@ _wm_available_rotations_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) sd->wm_rot.count); } -EAPI Eina_Bool -elm_win_wm_rotation_available_rotations_get(const Evas_Object *obj, - int **rotations, - unsigned int *count) +EOLIAN static Eina_Bool +_elm_win_wm_available_rotations_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int **rotations, unsigned int *count) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_wm_available_rotations_get(rotations, count, &ret)); - return ret; -} - -static void -_wm_available_rotations_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int **rotations = va_arg(*list, int **); - unsigned int *count = va_arg(*list, unsigned int *); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = EINA_FALSE; - if (!sd->wm_rot.use) return; + if (!sd->wm_rot.use) return EINA_FALSE; if (sd->wm_rot.count > 0) { @@ -4790,73 +4094,33 @@ _wm_available_rotations_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) } if (count) *count = sd->wm_rot.count; - *ret = EINA_TRUE; + return EINA_TRUE; } -EAPI void -elm_win_wm_rotation_manual_rotation_done_set(Evas_Object *obj, - Eina_Bool set) +EOLIAN static void +_elm_win_wm_manual_rotation_done_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool set) { - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_wm_manual_rotation_done_set(set)); -} - -static void -_wm_manual_rotation_done_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int set = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; if (!sd->wm_rot.use) return; ecore_evas_wm_rotation_manual_rotation_done_set(sd->ee, set); } -EAPI Eina_Bool -elm_win_wm_rotation_manual_rotation_done_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_wm_manual_rotation_done_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_wm_manual_rotation_done_get(&ret)); - return ret; + if (!sd->wm_rot.use) return EINA_FALSE; + return ecore_evas_wm_rotation_manual_rotation_done_get(sd->ee); } -static void -_wm_manual_rotation_done_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_wm_manual_rotation_done(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - if (!sd->wm_rot.use) return; - *ret = ecore_evas_wm_rotation_manual_rotation_done_get(sd->ee); -} - -EAPI void -elm_win_wm_rotation_manual_rotation_done(Evas_Object *obj) -{ - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_wm_manual_rotation_done()); -} - -static void -_wm_manual_rotation_done(Eo *obj EINA_UNUSED, void *_pd, va_list *list EINA_UNUSED) -{ - Elm_Win_Smart_Data *sd = _pd; if (!sd->wm_rot.use) return; ecore_evas_wm_rotation_manual_rotation_done(sd->ee); } -EAPI void -elm_win_sticky_set(Evas_Object *obj, - Eina_Bool sticky) +EOLIAN static void +_elm_win_sticky_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool sticky) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_sticky_set(sticky)); -} - -static void -_sticky_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool sticky = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - // sd->sticky = sticky; TRAP(sd, sticky_set, sticky); #ifdef HAVE_ELEMENTARY_X @@ -4864,40 +4128,18 @@ _sticky_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_sticky_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_sticky_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_sticky_get(&ret)); - return ret; + return sd->sticky; } -static void -_sticky_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_keyboard_mode_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Elm_Win_Keyboard_Mode mode) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->sticky; -} - -EAPI void -elm_win_keyboard_mode_set(Evas_Object *obj, - Elm_Win_Keyboard_Mode mode) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_keyboard_mode_set(mode)); -} - -static void -_keyboard_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Elm_Win_Keyboard_Mode mode = va_arg(*list, Elm_Win_Keyboard_Mode); - Elm_Win_Smart_Data *sd = _pd; - if (mode == sd->kbdmode) return; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); #endif sd->kbdmode = mode; #ifdef HAVE_ELEMENTARY_X @@ -4907,39 +4149,17 @@ _keyboard_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Elm_Win_Keyboard_Mode -elm_win_keyboard_mode_get(const Evas_Object *obj) +EOLIAN static Elm_Win_Keyboard_Mode +_elm_win_keyboard_mode_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) ELM_WIN_KEYBOARD_UNKNOWN; - Elm_Win_Keyboard_Mode ret = ELM_WIN_KEYBOARD_UNKNOWN; - eo_do((Eo *) obj, elm_obj_win_keyboard_mode_get(&ret)); - return ret; + return sd->kbdmode; } -static void -_keyboard_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_keyboard_win_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool is_keyboard) { - Elm_Win_Keyboard_Mode *ret = va_arg(*list, Elm_Win_Keyboard_Mode *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->kbdmode; -} - -EAPI void -elm_win_keyboard_win_set(Evas_Object *obj, - Eina_Bool is_keyboard) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_keyboard_win_set(is_keyboard)); -} - -static void -_keyboard_win_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool is_keyboard = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) ecore_x_e_virtual_keyboard_set(sd->x.xwin, is_keyboard); #else @@ -4947,49 +4167,22 @@ _keyboard_win_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_keyboard_win_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_keyboard_win_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_keyboard_win_get(&ret)); - return ret; -} - -static void -_keyboard_win_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); - if (sd->x.xwin) - { - *ret = ecore_x_e_virtual_keyboard_get(sd->x.xwin); - return; - } + _internal_elm_win_xwindow_get(sd); + if (sd->x.xwin) return ecore_x_e_virtual_keyboard_get(sd->x.xwin); #endif - *ret = EINA_FALSE; + return EINA_FALSE; } -EAPI void -elm_win_indicator_mode_set(Evas_Object *obj, - Elm_Win_Indicator_Mode mode) +EOLIAN static void +_elm_win_indicator_mode_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Elm_Win_Indicator_Mode mode) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_indicator_mode_set(mode)); -} - -static void -_indicator_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Elm_Win_Indicator_Mode mode = va_arg(*list, Elm_Win_Indicator_Mode); - Elm_Win_Smart_Data *sd = _pd; - if (mode == sd->indmode) return; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); #endif sd->indmode = mode; #ifdef HAVE_ELEMENTARY_X @@ -5006,41 +4199,19 @@ _indicator_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) evas_object_smart_callback_call(obj, SIG_INDICATOR_PROP_CHANGED, NULL); } -EAPI Elm_Win_Indicator_Mode -elm_win_indicator_mode_get(const Evas_Object *obj) +EOLIAN static Elm_Win_Indicator_Mode +_elm_win_indicator_mode_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) ELM_WIN_INDICATOR_UNKNOWN; - Elm_Win_Indicator_Mode ret = ELM_WIN_INDICATOR_UNKNOWN; - eo_do((Eo *) obj, elm_obj_win_indicator_mode_get(&ret)); - return ret; + return sd->indmode; } -static void -_indicator_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_indicator_opacity_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Elm_Win_Indicator_Opacity_Mode mode) { - Elm_Win_Indicator_Mode *ret = va_arg(*list, Elm_Win_Indicator_Mode *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->indmode; -} - -EAPI void -elm_win_indicator_opacity_set(Evas_Object *obj, - Elm_Win_Indicator_Opacity_Mode mode) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_indicator_opacity_set(mode)); -} - -static void -_indicator_opacity_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Elm_Win_Indicator_Opacity_Mode mode = va_arg(*list, Elm_Win_Indicator_Opacity_Mode); - Elm_Win_Smart_Data *sd = _pd; - if (mode == sd->ind_o_mode) return; sd->ind_o_mode = mode; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) { if (sd->ind_o_mode == ELM_WIN_INDICATOR_OPAQUE) @@ -5057,151 +4228,54 @@ _indicator_opacity_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) evas_object_smart_callback_call(obj, SIG_INDICATOR_PROP_CHANGED, NULL); } -EAPI Elm_Win_Indicator_Opacity_Mode -elm_win_indicator_opacity_get(const Evas_Object *obj) +EOLIAN static Elm_Win_Indicator_Opacity_Mode +_elm_win_indicator_opacity_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) ELM_WIN_INDICATOR_OPACITY_UNKNOWN; - Elm_Win_Indicator_Opacity_Mode ret = ELM_WIN_INDICATOR_OPACITY_UNKNOWN; - eo_do((Eo *) obj, elm_obj_win_indicator_opacity_get(&ret)); - return ret; + return sd->ind_o_mode; } -static void -_indicator_opacity_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_screen_position_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int *x, int *y) { - Elm_Win_Indicator_Opacity_Mode *ret = va_arg(*list, Elm_Win_Indicator_Opacity_Mode *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->ind_o_mode; -} - -EAPI void -elm_win_screen_position_get(const Evas_Object *obj, - int *x, - int *y) -{ - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_screen_position_get(x, y)); -} - -static void -_screen_position_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *x = va_arg(*list, int *); - int *y = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - if (x) *x = sd->screen.x; if (y) *y = sd->screen.y; } -EAPI Eina_Bool -elm_win_focus_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_focus_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_focus_get(&ret)); - return ret; + return ecore_evas_focus_get(sd->ee); } -static void -_focus_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_screen_constrain_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool constrain) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = ecore_evas_focus_get(sd->ee); -} - -EAPI void -elm_win_screen_constrain_set(Evas_Object *obj, - Eina_Bool constrain) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_screen_constrain_set(constrain)); -} - -static void -_screen_constrain_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool constrain = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; sd->constrain = !!constrain; } -EAPI Eina_Bool -elm_win_screen_constrain_get(Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_screen_constrain_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do(obj, elm_obj_win_screen_constrain_get(&ret)); - return ret; + return sd->constrain; } -static void -_screen_constrain_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_screen_size_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int *x, int *y, int *w, int *h) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->constrain; -} - -EAPI void -elm_win_screen_size_get(const Evas_Object *obj, - int *x, - int *y, - int *w, - int *h) -{ - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_screen_size_get(x, y, w, h)); -} - -static void -_screen_size_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *x = va_arg(*list, int *); - int *y = va_arg(*list, int *); - int *w = va_arg(*list, int *); - int *h = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - ecore_evas_screen_geometry_get(sd->ee, x, y, w, h); } -EAPI void -elm_win_screen_dpi_get(const Evas_Object *obj, - int *xdpi, - int *ydpi) +EOLIAN static void +_elm_win_screen_dpi_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int *xdpi, int *ydpi) { - ELM_WIN_CHECK(obj); - eo_do((Eo *) obj, elm_obj_win_screen_dpi_get(xdpi, ydpi)); -} - -static void -_screen_dpi_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *xdpi = va_arg(*list, int *); - int *ydpi = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - ecore_evas_screen_dpi_get(sd->ee, xdpi, ydpi); } -EAPI void -elm_win_conformant_set(Evas_Object *obj, - Eina_Bool conformant) +EOLIAN static void +_elm_win_conformant_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool conformant) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_conformant_set(conformant)); -} - -static void -_conformant_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool conformant = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) ecore_x_e_illume_conformant_set(sd->x.xwin, conformant); #else @@ -5209,44 +4283,23 @@ _conformant_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_conformant_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_conformant_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_conformant_get(&ret)); - return ret; -} - -static void -_conformant_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = EINA_FALSE; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) - *ret = ecore_x_e_illume_conformant_get(sd->x.xwin); + return ecore_x_e_illume_conformant_get(sd->x.xwin); #endif + + return EINA_FALSE; } -EAPI void -elm_win_quickpanel_set(Evas_Object *obj, - Eina_Bool quickpanel) +EOLIAN static void +_elm_win_quickpanel_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool quickpanel) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_quickpanel_set(quickpanel)); -} - -static void -_quickpanel_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool quickpanel = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) { ecore_x_e_illume_quickpanel_set(sd->x.xwin, quickpanel); @@ -5265,45 +4318,23 @@ _quickpanel_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Eina_Bool -elm_win_quickpanel_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_quickpanel_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_quickpanel_get(&ret)); - return ret; -} - -static void -_quickpanel_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = EINA_FALSE; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) - *ret = ecore_x_e_illume_quickpanel_get(sd->x.xwin); + return ecore_x_e_illume_quickpanel_get(sd->x.xwin); #endif + + return EINA_FALSE; } -EAPI void -elm_win_quickpanel_priority_major_set(Evas_Object *obj, - int priority) +EOLIAN static void +_elm_win_quickpanel_priority_major_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int priority) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_quickpanel_priority_major_set(priority)); -} - -static void -_quickpanel_priority_major_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int priority = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) ecore_x_e_illume_quickpanel_priority_major_set(sd->x.xwin, priority); #else @@ -5311,45 +4342,23 @@ _quickpanel_priority_major_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI int -elm_win_quickpanel_priority_major_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_quickpanel_priority_major_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) - 1; - int ret = - 1; - eo_do((Eo *) obj, elm_obj_win_quickpanel_priority_major_get(&ret)); - return ret; -} - -static void -_quickpanel_priority_major_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = -1; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) - *ret = ecore_x_e_illume_quickpanel_priority_major_get(sd->x.xwin); + return ecore_x_e_illume_quickpanel_priority_major_get(sd->x.xwin); #endif + + return -1; } -EAPI void -elm_win_quickpanel_priority_minor_set(Evas_Object *obj, - int priority) +EOLIAN static void +_elm_win_quickpanel_priority_minor_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int priority) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_quickpanel_priority_minor_set(priority)); -} - -static void -_quickpanel_priority_minor_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int priority = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) ecore_x_e_illume_quickpanel_priority_minor_set(sd->x.xwin, priority); #else @@ -5357,45 +4366,23 @@ _quickpanel_priority_minor_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI int -elm_win_quickpanel_priority_minor_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_quickpanel_priority_minor_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) - 1; - int ret = - 1; - eo_do((Eo *) obj, elm_obj_win_quickpanel_priority_minor_get(&ret)); - return ret; -} - -static void -_quickpanel_priority_minor_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = -1; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) - *ret = ecore_x_e_illume_quickpanel_priority_minor_get(sd->x.xwin); + return ecore_x_e_illume_quickpanel_priority_minor_get(sd->x.xwin); #endif + + return -1; } -EAPI void -elm_win_quickpanel_zone_set(Evas_Object *obj, - int zone) +EOLIAN static void +_elm_win_quickpanel_zone_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, int zone) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_quickpanel_zone_set(zone)); -} - -static void -_quickpanel_zone_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int zone = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) ecore_x_e_illume_quickpanel_zone_set(sd->x.xwin, zone); #else @@ -5403,66 +4390,32 @@ _quickpanel_zone_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI int -elm_win_quickpanel_zone_get(const Evas_Object *obj) +EOLIAN static int +_elm_win_quickpanel_zone_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) 0; - int ret = 0; - eo_do((Eo *) obj, elm_obj_win_quickpanel_zone_get(&ret)); - return ret; -} - -static void -_quickpanel_zone_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - int *ret = va_arg(*list, int *); - Elm_Win_Smart_Data *sd = _pd; - *ret = 0; - #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) - *ret = ecore_x_e_illume_quickpanel_zone_get(sd->x.xwin); + return ecore_x_e_illume_quickpanel_zone_get(sd->x.xwin); #endif + + return 0; } -EAPI void -elm_win_prop_focus_skip_set(Evas_Object *obj, - Eina_Bool skip) +EOLIAN static void +_elm_win_prop_focus_skip_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool skip) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_prop_focus_skip_set(skip)); -} - -static void -_prop_focus_skip_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool skip = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - sd->skip_focus = skip; TRAP(sd, focus_skip_set, skip); } -EAPI void -elm_win_illume_command_send(Evas_Object *obj, - Elm_Illume_Command command, - void *params) +EOLIAN static void +_elm_win_illume_command_send(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Elm_Illume_Command command, void *params) { - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_illume_command_send(command, params)); -} - -static void -_illume_command_send(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Elm_Illume_Command command = va_arg(*list, Elm_Illume_Command); - void *params = va_arg(*list, void *); (void) params; - Elm_Win_Smart_Data *sd = _pd; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) { switch (command) @@ -5492,37 +4445,15 @@ _illume_command_send(Eo *obj EINA_UNUSED, void *_pd, va_list *list) #endif } -EAPI Evas_Object * -elm_win_inlined_image_object_get(Evas_Object *obj) +EOLIAN static Evas_Object* +_elm_win_inlined_image_object_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - Evas_Object *ret = NULL; - eo_do(obj, elm_obj_win_inlined_image_object_get(&ret)); - return ret; + return sd->img_obj; } -static void -_inlined_image_object_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_focus_highlight_enabled_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool enabled) { - Evas_Object **ret = va_arg(*list, Evas_Object **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->img_obj; -} - -EAPI void -elm_win_focus_highlight_enabled_set(Evas_Object *obj, - Eina_Bool enabled) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_focus_highlight_enabled_set(enabled)); -} - -static void -_focus_highlight_enabled_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool enabled = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - enabled = !!enabled; if (sd->focus_highlight.enabled == enabled) return; @@ -5535,91 +4466,42 @@ _focus_highlight_enabled_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) _elm_win_focus_highlight_shutdown(sd); } -EAPI Eina_Bool -elm_win_focus_highlight_enabled_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_focus_highlight_enabled_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_focus_highlight_enabled_get(&ret)); - return ret; + return sd->focus_highlight.enabled; } -static void -_focus_highlight_enabled_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static Eina_Bool +_elm_win_elm_widget_theme_apply(Eo *obj, Elm_Win_Data *sd) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->focus_highlight.enabled; -} - -EAPI void -elm_win_focus_highlight_style_set(Evas_Object *obj, - const char *style) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_focus_highlight_style_set(style)); -} - -static void -_elm_win_smart_theme(Eo *obj EINA_UNUSED, void *_pd, va_list *list EINA_UNUSED) -{ - Elm_Win_Smart_Data *sd = _pd; - Eina_Bool *ret = va_arg(*list, Eina_Bool *); Eina_Bool int_ret = EINA_FALSE; - - if (ret) *ret = EINA_TRUE; - eo_do_super(obj, MY_CLASS, elm_obj_widget_theme_apply(&int_ret)); - if (!int_ret) return; + if (!int_ret) return EINA_TRUE; sd->focus_highlight.theme_changed = EINA_TRUE; _elm_win_focus_highlight_reconfigure_job_start(sd); - if (ret) *ret = EINA_TRUE; + return EINA_TRUE; } -static void -_focus_highlight_style_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_focus_highlight_style_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *style) { - const char *style = va_arg(*list, const char *); - Elm_Win_Smart_Data *sd = _pd; - eina_stringshare_replace(&sd->focus_highlight.style, style); sd->focus_highlight.theme_changed = EINA_TRUE; _elm_win_focus_highlight_reconfigure_job_start(sd); } -EAPI const char * -elm_win_focus_highlight_style_get(const Evas_Object *obj) +EOLIAN static const char* +_elm_win_focus_highlight_style_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) NULL; - const char *ret = NULL; - eo_do((Eo *) obj, elm_obj_win_focus_highlight_style_get(&ret)); - return ret; + return sd->focus_highlight.style; } -static void -_focus_highlight_style_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static void +_elm_win_focus_highlight_animate_set(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, Eina_Bool animate) { - const char **ret = va_arg(*list, const char **); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->focus_highlight.style; -} - -EAPI void -elm_win_focus_highlight_animate_set(Evas_Object *obj, - Eina_Bool animate) -{ - ELM_WIN_CHECK(obj); - eo_do(obj, elm_obj_win_focus_highlight_animate_set(animate)); -} - -static void -_focus_highlight_animate_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Eina_Bool animate = va_arg(*list, int); - Elm_Win_Smart_Data *sd = _pd; - animate = !!animate; if (sd->focus_highlight.animate == animate) return; @@ -5629,91 +4511,33 @@ _focus_highlight_animate_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list) _elm_win_focus_highlight_reconfigure_job_start(sd); } -EAPI Eina_Bool -elm_win_focus_highlight_animate_get(const Evas_Object *obj) +EOLIAN static Eina_Bool +_elm_win_focus_highlight_animate_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do((Eo *) obj, elm_obj_win_focus_highlight_animate_get(&ret)); - return ret; + return sd->focus_highlight.animate; } -static void -_focus_highlight_animate_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static Eina_Bool +_elm_win_socket_listen(Eo *obj EINA_UNUSED, Elm_Win_Data *sd, const char *svcname, int svcnum, Eina_Bool svcsys) { - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = sd->focus_highlight.animate; -} - -EAPI Eina_Bool -elm_win_socket_listen(Evas_Object *obj, - const char *svcname, - int svcnum, - Eina_Bool svcsys) -{ - ELM_WIN_CHECK(obj) EINA_FALSE; - Eina_Bool ret = EINA_FALSE; - eo_do(obj, elm_obj_win_socket_listen(svcname, svcnum, svcsys, &ret)); - return ret; -} - -static void -_socket_listen(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - const char *svcname = va_arg(*list, const char *); - int svcnum = va_arg(*list, int); - Eina_Bool svcsys = va_arg(*list, int); - Eina_Bool *ret = va_arg(*list, Eina_Bool *); - Elm_Win_Smart_Data *sd = _pd; - *ret = EINA_FALSE; - - if (!sd->ee) return; + if (!sd->ee) return EINA_FALSE; if (!ecore_evas_extn_socket_listen(sd->ee, svcname, svcnum, svcsys)) - return; + return EINA_FALSE; - *ret = EINA_TRUE; + return EINA_TRUE; } /* windowing specific calls - shall we do this differently? */ -EAPI Ecore_X_Window -elm_win_xwindow_get(const Evas_Object *obj) +EOLIAN static Ecore_X_Window +_elm_win_xwindow_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - if (!obj) return 0; - - if (!evas_object_smart_type_check_ptr(obj, MY_CLASS_NAME_LEGACY)) - { - Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(obj)); - return _elm_ee_xwin_get(ee); - } - - ELM_WIN_CHECK(obj) 0; - Ecore_X_Window ret = 0; - eo_do((Eo *) obj, elm_obj_win_xwindow_get(&ret)); - return ret; -} - -static void -_xwindow_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) -{ - Ecore_X_Window *ret = va_arg(*list, Ecore_X_Window *); - Elm_Win_Smart_Data *sd = _pd; - #ifdef HAVE_ELEMENTARY_X - if (sd->x.xwin) - { - *ret = sd->x.xwin; - return; - } - if (sd->parent) - { - *ret = elm_win_xwindow_get(sd->parent); - return; - } + if (sd->x.xwin) return sd->x.xwin; + if (sd->parent) return elm_win_xwindow_get(sd->parent); #endif - *ret = 0; + return 0; } EAPI Ecore_Wl_Window * @@ -5737,26 +4561,16 @@ elm_win_wl_window_get(const Evas_Object *obj) return ret; } -static void -_wl_window_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static Ecore_Wl_Window* +_elm_win_wl_window_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - Ecore_Wl_Window **ret = va_arg(*list, Ecore_Wl_Window **); #if HAVE_ELEMENTARY_WAYLAND - Elm_Win_Smart_Data *sd = _pd; - if (sd->wl.win) - { - *ret = sd->wl.win; - return; - } - if (sd->parent) - { - *ret = elm_win_wl_window_get(sd->parent); - return; - } + if (sd->wl.win) return sd->wl.win; + if (sd->parent) return elm_win_wl_window_get(sd->parent); #else - (void)_pd; + (void)sd; #endif - *ret = NULL; + return NULL; } EAPI Eina_Bool @@ -5785,7 +4599,7 @@ elm_win_floating_mode_set(Evas_Object *obj, Eina_Bool floating) if (floating == sd->floating) return; sd->floating = floating; #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); + _internal_elm_win_xwindow_get(sd); if (sd->x.xwin) { if (sd->floating) @@ -5807,48 +4621,33 @@ elm_win_floating_mode_get(const Evas_Object *obj) return sd->floating; } -static void -_window_id_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) +EOLIAN static Ecore_Window +_elm_win_window_id_get(Eo *obj EINA_UNUSED, Elm_Win_Data *sd) { - Ecore_Window *ret = va_arg(*list, Ecore_Window *); - Elm_Win_Smart_Data *sd = _pd; - if ((ENGINE_COMPARE(ELM_WAYLAND_SHM)) || (ENGINE_COMPARE(ELM_WAYLAND_EGL))) { #if HAVE_ELEMENTARY_WAYLAND - if (sd->wl.win) - { - *ret = (Ecore_Window)ecore_wl_window_surface_id_get(sd->wl.win); - return; - } + if (sd->wl.win) return (Ecore_Window)ecore_wl_window_surface_id_get(sd->wl.win); if (sd->parent) { Ecore_Wl_Window *parent; parent = elm_win_wl_window_get(sd->parent); - if (parent) *ret = (Ecore_Window)ecore_wl_window_surface_id_get(parent); - return; + if (parent) return (Ecore_Window)ecore_wl_window_surface_id_get(parent); + return 0; } #endif } else { #ifdef HAVE_ELEMENTARY_X - _elm_win_xwindow_get(sd); - if (sd->x.xwin) - { - *ret = (Ecore_Window)sd->x.xwin; - return; - } - if (sd->parent) - { - *ret = (Ecore_Window)elm_win_xwindow_get(sd->parent); - return; - } + _internal_elm_win_xwindow_get(sd); + if (sd->x.xwin) return (Ecore_Window)sd->x.xwin; + if (sd->parent) return (Ecore_Window)elm_win_xwindow_get(sd->parent); #endif } - *ret = 0; + return 0; } void @@ -5879,253 +4678,10 @@ elm_win_window_id_get(const Evas_Object *obj) return ret; } -static void -_class_constructor(Eo_Class *klass) +EOLIAN static void +_elm_win_class_constructor(Eo_Class *klass) { - const Eo_Op_Func_Description func_desc[] = { - EO_OP_FUNC(EO_BASE_ID(EO_BASE_SUB_ID_CONSTRUCTOR), _constructor), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_ADD), _elm_win_smart_add), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_DEL), _elm_win_smart_del), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_RESIZE), _elm_win_smart_resize), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_MOVE), _elm_win_smart_move), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_SHOW), _elm_win_smart_show), - EO_OP_FUNC(EVAS_OBJ_SMART_ID(EVAS_OBJ_SMART_SUB_ID_HIDE), _elm_win_smart_hide), - - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_ON_FOCUS), _elm_win_smart_on_focus), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_EVENT), _elm_win_smart_event), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_FOCUS_NEXT_MANAGER_IS), _elm_win_smart_focus_next_manager_is), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_FOCUS_NEXT), _elm_win_smart_focus_next), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_FOCUS_DIRECTION_MANAGER_IS), _elm_win_smart_focus_direction_manager_is), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_FOCUS_DIRECTION), _elm_win_smart_focus_direction), - EO_OP_FUNC(ELM_OBJ_WIDGET_ID(ELM_OBJ_WIDGET_SUB_ID_THEME_APPLY), _elm_win_smart_theme), - - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR), _win_constructor), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_ADD), _resize_object_add), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL), _resize_object_del), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TYPE_GET), _type_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TITLE_SET), _title_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_TITLE_GET), _title_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICON_NAME_SET), _icon_name_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICON_NAME_GET), _icon_name_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ROLE_SET), _role_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ROLE_GET), _role_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICON_OBJECT_SET), _icon_object_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICON_OBJECT_GET), _icon_object_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_AUTODEL_SET), _autodel_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_AUTODEL_GET), _autodel_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ACTIVATE), _activate), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_LOWER), _lower), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_RAISE), _raise), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_CENTER), _center), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_BORDERLESS_SET), _borderless_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_BORDERLESS_GET), _borderless_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SHAPED_SET), _shaped_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SHAPED_GET), _shaped_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ALPHA_SET), _alpha_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ALPHA_GET), _alpha_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_OVERRIDE_SET), _override_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_OVERRIDE_GET), _override_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FULLSCREEN_SET), _fullscreen_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FULLSCREEN_GET), _fullscreen_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_MAIN_MENU_GET), _main_menu_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_MAXIMIZED_SET), _maximized_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_MAXIMIZED_GET), _maximized_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICONIFIED_SET), _iconified_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ICONIFIED_GET), _iconified_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WITHDRAWN_SET), _withdrawn_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WITHDRAWN_GET), _withdrawn_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_AVAILABLE_PROFILES_SET), _available_profiles_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_AVAILABLE_PROFILES_GET), _available_profiles_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_PROFILE_SET), _profile_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_PROFILE_GET), _profile_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_URGENT_SET), _urgent_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_URGENT_GET), _urgent_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_DEMAND_ATTENTION_SET), _demand_attention_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_DEMAND_ATTENTION_GET), _demand_attention_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_MODAL_SET), _modal_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_MODAL_GET), _modal_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ASPECT_SET), _aspect_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ASPECT_GET), _aspect_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SIZE_BASE_SET), _size_base_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SIZE_BASE_GET), _size_base_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SIZE_STEP_SET), _size_step_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SIZE_STEP_GET), _size_step_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_LAYER_SET), _layer_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_LAYER_GET), _layer_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ROTATION_SET), _rotation_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ROTATION_WITH_RESIZE_SET), _rotation_with_resize_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ROTATION_GET), _rotation_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_STICKY_SET), _sticky_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_STICKY_GET), _sticky_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_KEYBOARD_MODE_SET), _keyboard_mode_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_KEYBOARD_MODE_GET), _keyboard_mode_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_KEYBOARD_WIN_SET), _keyboard_win_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_KEYBOARD_WIN_GET), _keyboard_win_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_INDICATOR_MODE_SET), _indicator_mode_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_INDICATOR_MODE_GET), _indicator_mode_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_INDICATOR_OPACITY_SET), _indicator_opacity_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_INDICATOR_OPACITY_GET), _indicator_opacity_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SCREEN_POSITION_GET), _screen_position_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_GET), _focus_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SCREEN_CONSTRAIN_SET), _screen_constrain_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SCREEN_CONSTRAIN_GET), _screen_constrain_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SCREEN_SIZE_GET), _screen_size_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SCREEN_DPI_GET), _screen_dpi_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_CONFORMANT_SET), _conformant_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_CONFORMANT_GET), _conformant_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_SET), _quickpanel_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_GET), _quickpanel_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MAJOR_SET), _quickpanel_priority_major_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MAJOR_GET), _quickpanel_priority_major_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MINOR_SET), _quickpanel_priority_minor_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MINOR_GET), _quickpanel_priority_minor_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_ZONE_SET), _quickpanel_zone_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_ZONE_GET), _quickpanel_zone_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_PROP_FOCUS_SKIP_SET), _prop_focus_skip_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_ILLUME_COMMAND_SEND), _illume_command_send), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_INLINED_IMAGE_OBJECT_GET), _inlined_image_object_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ENABLED_SET), _focus_highlight_enabled_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ENABLED_GET), _focus_highlight_enabled_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_STYLE_SET), _focus_highlight_style_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_STYLE_GET), _focus_highlight_style_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ANIMATE_SET), _focus_highlight_animate_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ANIMATE_GET), _focus_highlight_animate_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_SOCKET_LISTEN), _socket_listen), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_XWINDOW_GET), _xwindow_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WL_WINDOW_GET), _wl_window_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WINDOW_ID_GET), _window_id_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_ROTATION_SUPPORTED_GET), _wm_rotation_supported_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_PREFERRED_ROTATION_SET), _wm_preferred_rotation_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_PREFERRED_ROTATION_GET), _wm_preferred_rotation_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_AVAILABLE_ROTATIONS_SET), _wm_available_rotations_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_AVAILABLE_ROTATIONS_GET), _wm_available_rotations_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE_SET), _wm_manual_rotation_done_set), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE_GET), _wm_manual_rotation_done_get), - EO_OP_FUNC(ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE), _wm_manual_rotation_done), - EO_OP_FUNC_SENTINEL - }; - - eo_class_funcs_set(klass, func_desc); - evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass); } -static const Eo_Op_Description op_desc[] = { - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR, "Adds a window object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_ADD, "Add subobj as a resize object of window obj."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_RESIZE_OBJECT_DEL, "Delete subobj as a resize object of window obj."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TYPE_GET, "Get the type of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TITLE_SET, "Set the title of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_TITLE_GET, "Get the title of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICON_NAME_SET, "Set the icon name of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICON_NAME_GET, "Get the icon name of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ROLE_SET, "Set the role of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ROLE_GET, "Get the role of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICON_OBJECT_SET, "Set a window object's icon."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICON_OBJECT_GET, "Get the icon object used for the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_AUTODEL_SET, "Set the window's autodel state."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_AUTODEL_GET, "Get the window's autodel state."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ACTIVATE, "Activate a window object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_LOWER, "Lower a window object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_RAISE, "Raise a window object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_CENTER, "Center a window on its screen."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_BORDERLESS_SET, "Set the borderless state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_BORDERLESS_GET, "Get the borderless state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SHAPED_SET, "Set the shaped state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SHAPED_GET, "Get the shaped state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ALPHA_SET, "Set the alpha channel state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ALPHA_GET, "Get the alpha channel state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_OVERRIDE_SET, "Set the override state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_OVERRIDE_GET, "Get the override state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FULLSCREEN_SET, "Set the fullscreen state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FULLSCREEN_GET, "Get the fullscreen state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_MAIN_MENU_GET, "Get the Main Menu of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_MAXIMIZED_SET, "Set the maximized state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_MAXIMIZED_GET, "Get the maximized state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICONIFIED_SET, "Set the iconified state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ICONIFIED_GET, "Get the iconified state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WITHDRAWN_SET, "Set the withdrawn state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WITHDRAWN_GET, "Get the withdrawn state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_AVAILABLE_PROFILES_SET, "Set the array of available profiles to a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_AVAILABLE_PROFILES_GET, "Get the array of available profiles of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_PROFILE_SET, "Set the profile of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_PROFILE_GET, "Get the profile of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_URGENT_SET, "Set the urgent state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_URGENT_GET, "Get the urgent state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_DEMAND_ATTENTION_SET, "Set the demand_attention state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_DEMAND_ATTENTION_GET, "Get the demand_attention state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_MODAL_SET, "Set the modal state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_MODAL_GET, "Get the modal state of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ASPECT_SET, "Set the aspect ratio of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ASPECT_GET, "Get the aspect ratio of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SIZE_BASE_SET, "Set the base window size used with stepping calculation."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SIZE_BASE_GET, "Get the base size of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SIZE_STEP_SET, "Set the window stepping used with sizing calculation."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SIZE_STEP_GET, "Get the stepping of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_LAYER_SET, "Set the layer of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_LAYER_GET, "Get the layer of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ROTATION_SET, "Set the rotation of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ROTATION_WITH_RESIZE_SET, "Rotates the window and resizes it."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ROTATION_GET, "Get the rotation of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_STICKY_SET, "Set the sticky state of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_STICKY_GET, "Get the sticky state of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_KEYBOARD_MODE_SET, "Sets the keyboard mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_KEYBOARD_MODE_GET, "Get the keyboard mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_KEYBOARD_WIN_SET, "Sets whether the window is a keyboard."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_KEYBOARD_WIN_GET, "Get whether the window is a keyboard."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_INDICATOR_MODE_SET, "Sets the indicator mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_INDICATOR_MODE_GET, "Get the indicator mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_INDICATOR_OPACITY_SET, "Sets the indicator opacity mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_INDICATOR_OPACITY_GET, "Get the indicator opacity mode of the window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SCREEN_POSITION_GET, "Get the screen position of a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_GET, "Determine whether a window has focus."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SCREEN_CONSTRAIN_SET, "Constrain the maximum width and height of a window to the width and height of its screen."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SCREEN_CONSTRAIN_GET, "Retrieve the constraints on the maximum width and height of a window relative to the width and height of its screen."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SCREEN_SIZE_GET, "Get screen geometry details for the screen that a window is on."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SCREEN_DPI_GET, "Get screen dpi for the screen that a window is on."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_CONFORMANT_SET, "Set if this window is an illume conformant window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_CONFORMANT_GET, "Get if this window is an illume conformant window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_SET, "Set a window to be an illume quickpanel window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_GET, "Get if this window is a quickpanel or not."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MAJOR_SET, "Set the major priority of a quickpanel window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MAJOR_GET, "Get the major priority of a quickpanel window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MINOR_SET, "Set the minor priority of a quickpanel window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_PRIORITY_MINOR_GET, "Get the minor priority of a quickpanel window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_ZONE_SET, "Set which zone this quickpanel should appear in."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_QUICKPANEL_ZONE_GET, "Get which zone this quickpanel should appear in."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_PROP_FOCUS_SKIP_SET, "Set the window to be skipped by keyboard focus."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_ILLUME_COMMAND_SEND, "Send a command to the windowing environment."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_INLINED_IMAGE_OBJECT_GET, "Get the inlined image object handle."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ENABLED_SET, "Set the enabled status for the focus highlight in a window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ENABLED_GET, "Get the enabled value of the focus highlight for this window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_STYLE_SET, "Set the style for the focus highlight on this window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_STYLE_GET, "Get the style set for the focus highlight object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ANIMATE_SET, "Set the animate status for the focus highlight for this window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_FOCUS_HIGHLIGHT_ANIMATE_GET, "Get the animate status for the focus highlight for this window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_SOCKET_LISTEN, "Create a socket to provide the service for Plug widget."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_XWINDOW_GET, "Get the Ecore_X_Window of an Evas_Object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WL_WINDOW_GET, "Get the Ecore_Wl_Window of an Evas_Object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WINDOW_ID_GET, "Get the Ecore_Window of an Evas_Object."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_ROTATION_SUPPORTED_GET, "Query if the underlying windowing system supports the window manager rotation.."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_PREFERRED_ROTATION_SET, "Set the preferred rotation hint."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_PREFERRED_ROTATION_GET, "Get the preferred rotation hint."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_AVAILABLE_ROTATIONS_SET, "Set the array of available window rotations."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_AVAILABLE_ROTATIONS_GET, "Get the array of available window rotations."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE_SET, "Set manual rotation done mode of obj window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE_GET, "Get manual rotation done mode of obj window."), - EO_OP_DESCRIPTION(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE, "Set rotation finish manually"), - EO_OP_DESCRIPTION_SENTINEL -}; - -static const Eo_Class_Description class_desc = { - EO_VERSION, - MY_CLASS_NAME, - EO_CLASS_TYPE_REGULAR, - EO_CLASS_DESCRIPTION_OPS(&ELM_OBJ_WIN_BASE_ID, op_desc, ELM_OBJ_WIN_SUB_ID_LAST), - NULL, - sizeof(Elm_Win_Smart_Data), - _class_constructor, - NULL -}; - -EO_DEFINE_CLASS(elm_obj_win_class_get, &class_desc, ELM_OBJ_WIDGET_CLASS, NULL); +#include "elm_win.eo.c" diff --git a/legacy/elementary/src/lib/elm_win.eo b/legacy/elementary/src/lib/elm_win.eo new file mode 100644 index 0000000000..89d1257872 --- /dev/null +++ b/legacy/elementary/src/lib/elm_win.eo @@ -0,0 +1,1342 @@ +class Elm_Win (Elm_Widget) +{ + eo_prefix: elm_obj_win; + constructors { + constructor { + /*@ No description supplied by the EAPI. */ + params { + @in const char *name; + @in Elm_Win_Type type; + } + } + } + properties { + keyboard_win { + set { + /*@ + Sets whether the window is a keyboard. + + @ingroup Win */ + } + get { + /*@ + Get whether the window is a keyboard. + + @return If the window is a virtual keyboard + + @ingroup Win */ + } + values { + Eina_Bool is_keyboard; /*@ If true, the window is a virtual keyboard */ + } + } + autodel { + set { + /*@ + Set the window's autodel state. + + When closing the window in any way outside of the program control, like + pressing the X button in the titlebar or using a command from the + Window Manager, a "delete,request" signal is emitted to indicate that + this event occurred and the developer can take any action, which may + include, or not, destroying the window object. + + When the @p autodel parameter is set, the window will be automatically + destroyed when this event occurs, after the signal is emitted. + If @p autodel is @c EINA_FALSE, then the window will not be destroyed + and is up to the program to do so when it's required. + + @ingroup Win */ + } + get { + /*@ + Get the window's autodel state. + + @return If the window will automatically delete itself when closed + + @see elm_win_autodel_set() + + @ingroup Win */ + } + values { + Eina_Bool autodel; /*@ If true, the window will automatically delete itself when + closed */ + } + } + override { + set { + /*@ + Set the override state of a window. + + A window with @p override set to EINA_TRUE will not be managed by the + Window Manager. This means that no decorations of any kind will be shown + for it, moving and resizing must be handled by the application, as well + as the window visibility. + + This should not be used for normal windows, and even for not so normal + ones, it should only be used when there's a good reason and with a lot + of care. Mishandling override windows may result situations that + disrupt the normal workflow of the end user. + + @ingroup Win */ + } + get { + /*@ + Get the override state of a window. + + @return If true, the window is overridden + + @see elm_win_override_set() + + @ingroup Win */ + } + values { + Eina_Bool override; /*@ If true, the window is overridden */ + } + } + iconified { + set { + /*@ + Set the iconified state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the iconified state of a window. + + @return If true, the window is iconified + + @ingroup Win */ + } + values { + Eina_Bool iconified; /*@ If true, the window is iconified */ + } + } + wm_available_rotations { + set { + /*@ + Set the array of available window rotations. + + This function is used to set the available rotations to give the hints to WM. + WM will refer this hints and set the orientation window properly. + + @see elm_win_wm_rotation_available_rotations_get() + + ingroup Win + @since 1.9 */ + legacy elm_win_wm_rotation_available_rotations_set; + rotations: const; + } + get { + /*@ + Get the array of available window rotations. + + This function is used to get the available rotations. + + @see elm_win_wm_rotation_available_rotations_set() + + ingroup Win + @since 1.9 */ + legacy elm_win_wm_rotation_available_rotations_get; + return Eina_Bool; + } + values { + int *rotations; /*@ The array of rotation value. */ + unsigned int count; /*@ The number of array of rotations */ + } + } + quickpanel_zone { + set { + /*@ + Set which zone this quickpanel should appear in + + @ingroup Win */ + } + get { + /*@ + Get which zone this quickpanel should appear in + + @return The requested zone for this quickpanel + + @ingroup Win */ + } + values { + int zone; /*@ The requested zone for this quickpanel */ + } + } + maximized { + set { + /*@ + Set the maximized state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the maximized state of a window. + + @return If true, the window is maximized + + @ingroup Win */ + } + values { + Eina_Bool maximized; /*@ If true, the window is maximized */ + } + } + modal { + set { + /*@ + Set the modal state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the modal state of a window. + + @return If true, the window is modal + + @ingroup Win */ + } + values { + Eina_Bool modal; /*@ If true, the window is modal */ + } + } + icon_name { + set { + /*@ + Set the icon name of the window + + @ingroup Win */ + } + get { + /*@ + Get the icon name of the window + + The returned string is an internal one and should not be freed or + modified. It will also be invalid if a new icon name is set or if + the window is destroyed. + + @return The icon name + + @ingroup Win */ + } + values { + const char *icon_name; /*@ The icon name to set */ + } + } + withdrawn { + set { + /*@ + Set the withdrawn state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the withdrawn state of a window. + + @return If true, the window is withdrawn + + @ingroup Win */ + } + values { + Eina_Bool withdrawn; /*@ If true, the window is withdrawn */ + } + } + role { + set { + /*@ + Set the role of the window + + @ingroup Win */ + } + get { + /*@ + Get the role of the window + + The returned string is an internal one and should not be freed or + modified. It will also be invalid if a new role is set or if + the window is destroyed. + + @return The role + + @ingroup Win */ + } + values { + const char *role; /*@ The role to set */ + } + } + size_step { + set { + /*@ + Set the window stepping used with sizing calculation + + Base size + stepping is what is calculated for window sizing restrictions. + + @ingroup Win + @see elm_win_size_step_get + @see elm_win_size_base_set + @since 1.7 */ + } + get { + /*@ + Get the stepping of a window. + + @ingroup Win + @see elm_win_size_base_set + @see elm_win_size_step_set + @since 1.7 */ + } + values { + int w; /*@ The stepping width (0 disables) */ + int h; /*@ The stepping height (0 disables) */ + } + } + focus_highlight_style { + set { + /*@ + Set the style for the focus highlight on this window + + Sets the style to use for theming the highlight of focused objects on + the given window. If @p style is NULL, the default will be used. + + @ingroup Win */ + } + get { + /*@ + Get the style set for the focus highlight object + + Get the style set for this windows highlight object, or NULL if none + is set. + + @return The style set or NULL if none was. Default is used in that case. + + @ingroup Win */ + } + values { + const char *style; /*@ The style to set */ + } + } + borderless { + set { + /*@ + Set the borderless state of a window. + + This function requests the Window Manager to not draw any decoration + around the window. + + @ingroup Win */ + } + get { + /*@ + Get the borderless state of a window. + + @return If true, the window is borderless + + @ingroup Win */ + } + values { + Eina_Bool borderless; /*@ If true, the window is borderless */ + } + } + screen_constrain { + set { + /*@ + Constrain the maximum width and height of a window to the width and height of its screen + + When @p constrain is true, @p obj will never resize larger than the screen. + @ingroup Win */ + } + get { + /*@ + Retrieve the constraints on the maximum width and height of a window relative to the width and height of its screen + + When this function returns true, @p obj will never resize larger than the screen. + @return EINA_TRUE to restrict the window's maximum size, EINA_FALSE to disable restriction + + @ingroup Win */ + } + values { + Eina_Bool constrain; /*@ EINA_TRUE to restrict the window's maximum size, EINA_FALSE to disable restriction */ + } + } + available_profiles { + set { + /*@ + Set the array of available profiles to a window. + + @ingroup Win + @since 1.8 */ + profiles: const; + } + get { + /*@ + Get the array of available profiles of a window. + + @return EINA_TRUE if available profiles exist, EINA_FALSE otherwise + + @ingroup Win + @since 1.8 */ + return Eina_Bool; + } + values { + char **profiles; /*@ The string array of available profiles */ + unsigned int count; /*@ The number of members in profiles */ + } + } + focus_highlight_enabled { + set { + /*@ + Set the enabled status for the focus highlight in a window + + This function will enable or disable the focus highlight only for the + given window, regardless of the global setting for it + + @ingroup Win */ + } + get { + /*@ + Get the enabled value of the focus highlight for this window + + @return EINA_TRUE if enabled, EINA_FALSE otherwise + + @ingroup Win */ + } + values { + Eina_Bool enabled; /*@ The enabled value for the highlight */ + } + } + title { + set { + /*@ + Set the title of the window + + @ingroup Win */ + } + get { + /*@ + Get the title of the window + + The returned string is an internal one and should not be freed or + modified. It will also be invalid if a new title is set or if + the window is destroyed. + + @return The title + + @ingroup Win */ + } + values { + const char *title; /*@ The title to set */ + } + } + alpha { + set { + /*@ + Set the alpha channel state of a window. + + If @p alpha is EINA_TRUE, the alpha channel of the canvas will be enabled + possibly making parts of the window completely or partially transparent. + This is also subject to the underlying system supporting it, like for + example, running under a compositing manager. If no compositing is + available, enabling this option will instead fallback to using shaped + windows, with elm_win_shaped_set(). + + @see elm_win_alpha_set() + + @ingroup Win */ + } + get { + /*@ + Get the alpha channel state of a window. + + @return EINA_TRUE if the window alpha channel is enabled, EINA_FALSE + otherwise + + @ingroup Win */ + } + values { + Eina_Bool alpha; /*@ EINA_TRUE if the window alpha channel is enabled, EINA_FALSE otherwise */ + } + } + urgent { + set { + /*@ + Set the urgent state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the urgent state of a window. + + @return If true, the window is urgent + + @ingroup Win */ + } + values { + Eina_Bool urgent; /*@ If true, the window is urgent */ + } + } + rotation { + set { + /*@ + Set the rotation of the window. + + Most engines only work with multiples of 90. + + This function is used to set the orientation of the window @p obj to + match that of the screen. The window itself will be resized to adjust + to the new geometry of its contents. If you want to keep the window size, + see elm_win_rotation_with_resize_set(). + + @ingroup Win */ + } + get { + /*@ + Get the rotation of the window. + + @return The rotation of the window in degrees (0-360) + + @see elm_win_rotation_set() + @see elm_win_rotation_with_resize_set() + + @ingroup Win */ + } + values { + int rotation; /*@ The rotation of the window, in degrees (0-360), + counter-clockwise. */ + } + } + icon_object { + set { + /*@ + Set a window object's icon + + This sets an image to be used as the icon for the given window, in + the window manager decoration part. The exact pixel dimensions of + the object (not object size) will be used, and the image pixels + will be used as-is when this function is called. If the image + object has been updated, then call this function again to source + the image pixels and put them on the window's icon. Note that + only Evas image objects are allowed, for + + Example of usage: + @code + icon = evas_object_image_add(evas_object_evas_get(elm_window)); + evas_object_image_file_set(icon, "/path/to/the/icon", NULL); + elm_win_icon_object_set(elm_window, icon); + evas_object_show(icon); + @endcode + + @ingroup Win */ + } + get { + /*@ + Get the icon object used for the window + + The object returns is the one marked by elm_win_icon_object_set() as the + object to use for the window icon. + + @return The icon object set + + @ingroup Win */ + icon: const; + } + values { + Evas_Object *icon; /*@ The Evas image object to use for an icon */ + } + } + quickpanel_priority_minor { + set { + /*@ + Set the minor priority of a quickpanel window + + @ingroup Win */ + } + get { + /*@ + Get the minor priority of a quickpanel window + + @return The minor priority of this quickpanel + + @ingroup Win */ + } + values { + int priority; /*@ The minor priority for this quickpanel */ + } + } + sticky { + set { + /*@ + Set the sticky state of the window. + + Hints the Window Manager that the window in @p obj should be left fixed + at its position even when the virtual desktop it's on moves or changes. + + @ingroup Win */ + } + get { + /*@ + Get the sticky state of the window. + + @return If true, the window's sticky state is enabled + + @see elm_win_sticky_set() + + @ingroup Win */ + } + values { + Eina_Bool sticky; /*@ If true, the window's sticky state is enabled */ + } + } + keyboard_mode { + set { + /*@ + Sets the keyboard mode of the window. + + @ingroup Win */ + } + get { + /*@ + Get the keyboard mode of the window. + + @return The mode, one of #Elm_Win_Keyboard_Mode + + @ingroup Win */ + } + values { + Elm_Win_Keyboard_Mode mode; /*@ The mode to set, one of #Elm_Win_Keyboard_Mode */ + } + } + focus_highlight_animate { + set { + /*@ + Set the animate status for the focus highlight for this window. + + This function will enable or disable the animation of focus highlight only + for the given window, regardless of the global setting for it + + @ingroup Win */ + } + get { + /*@ + Get the animate value of the focus highlight for this window + + @return EINA_TRUE if animation is enabled, EINA_FALSE otherwise + + @ingroup Win */ + } + values { + Eina_Bool animate; /*@ The enabled value for the highlight animation */ + } + } + aspect { + set { + /*@ + Set the aspect ratio of a window. + + @ingroup Win */ + } + get { + /*@ + Get the aspect ratio of a window. + + @return The aspect ratio set (0 by default) + + @ingroup Win */ + } + values { + double aspect; /*@ If 0, the window has no aspect limits, otherwise it is + width divided by height */ + } + } + quickpanel_priority_major { + set { + /*@ + Set the major priority of a quickpanel window + + @ingroup Win */ + } + get { + /*@ + Get the major priority of a quickpanel window + + @return The major priority of this quickpanel + + @ingroup Win */ + } + values { + int priority; /*@ The major priority for this quickpanel */ + } + } + indicator_opacity { + set { + /*@ + Sets the indicator opacity mode of the window. + + @ingroup Win */ + } + get { + /*@ + Get the indicator opacity mode of the window. + + @return The mode, one of #Elm_Win_Indicator_Opacity_Mode + + @ingroup Win */ + } + values { + Elm_Win_Indicator_Opacity_Mode mode; /*@ The mode to set, one of #Elm_Win_Indicator_Opacity_Mode */ + } + } + demand_attention { + set { + /*@ + Set the demand_attention state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the demand_attention state of a window. + + @return If true, the window is demand_attention + + @ingroup Win */ + } + values { + Eina_Bool demand_attention; /*@ If true, the window is demand_attention */ + } + } + wm_preferred_rotation { + set { + /*@ + Set the preferred rotation value. + + This function is used to set the orientation of window @p obj to spicific angle fixed. + + @see elm_win_wm_rotation_preferred_rotation_get() + + ingroup Win + @since 1.9 */ + legacy null; + } + get { + /*@ + Get the preferred rotation value. + + This function is used to get the preferred rotoation value. + + @return The preferred rotation of the window in degrees (0-360), + counter-clockwise. + + @see elm_win_wm_rotation_preferred_rotation_set() + + ingroup Win + @since 1.9 */ + legacy elm_win_wm_rotation_preferred_rotation_get; + } + values { + int rotation; /*@ The preferred rotation of the window in degrees (0-360), + counter-clockwise. */ + } + } + layer { + set { + /*@ + Set the layer of the window. + + What this means exactly will depend on the underlying engine used. + + In the case of X11 backed engines, the value in @p layer has the + following meanings: + @li < 3: The window will be placed below all others. + @li > 5: The window will be placed above all others. + @li other: The window will be placed in the default layer. + + @ingroup Win */ + } + get { + /*@ + Get the layer of the window. + + @return The layer of the window + + @see elm_win_layer_set() + + @ingroup Win */ + } + values { + int layer; /*@ The layer of the window */ + } + } + profile { + set { + /*@ + Set the profile of a window. + + @ingroup Win + @since 1.8 */ + } + get { + /*@ + Get the profile of a window. + + @return The string value of a window profile, or NULL if none exists + + @ingroup Win + @since 1.8 */ + } + values { + const char *profile; /*@ The string value of a window profile */ + } + } + shaped { + set { + /*@ + Set the shaped state of a window. + + Shaped windows, when supported, will render the parts of the window that + has no content, transparent. + + If @p shaped is EINA_FALSE, then it is strongly advised to have some + background object or cover the entire window in any other way, or the + parts of the canvas that have no data will show framebuffer artifacts. + + @see elm_win_alpha_set() + + @ingroup Win */ + } + get { + /*@ + Get the shaped state of a window. + + @return If true, the window is shaped + + @see elm_win_shaped_set() + + @ingroup Win */ + } + values { + Eina_Bool shaped; /*@ If true, the window is shaped */ + } + } + fullscreen { + set { + /*@ + Set the fullscreen state of a window. + + @ingroup Win */ + } + get { + /*@ + Get the fullscreen state of a window. + + @return If true, the window is fullscreen + + @ingroup Win */ + } + values { + Eina_Bool fullscreen; /*@ If true, the window is fullscreen */ + } + } + wm_manual_rotation_done { + set { + /*@ + Set the manual rotation done mode. + + This function is used to set or reset the manual rotation done mode. + the message of rotation done is sent to WM after rendering its canvas in Ecore_Evas. + but if set the manual rotation done mode, + it's disabled and user should call the "elm_win_wm_rotation_manual_done" explicitly to sends the message. + + @see elm_win_wm_rotation_manual_rotation_done_get() + @see elm_win_wm_rotation_manual_rotation_done() + + ingroup Win + @since 1.9 */ + legacy elm_win_wm_rotation_manual_rotation_done_set; + } + get { + /*@ + Get the state of manual rotation done mode. + + This function is used to get the state of manual rotation done mode. + + @return @c EINA_TRUE manual rotationn done mode, @c EINA_FALSE otherwise. + + @see elm_win_wm_rotation_manual_rotation_done_set() + @see elm_win_wm_rotation_manual_rotation_done() + + ingroup Win + @since 1.9 */ + legacy elm_win_wm_rotation_manual_rotation_done_get; + } + values { + Eina_Bool set; /*@ EINA_TRUE means to set manual rotation done mode EINA_FALSE otherwise. */ + } + } + indicator_mode { + set { + /*@ + Sets the indicator mode of the window. + + @ingroup Win */ + } + get { + /*@ + Get the indicator mode of the window. + + @return The mode, one of #Elm_Win_Indicator_Mode + + @ingroup Win */ + } + values { + Elm_Win_Indicator_Mode mode; /*@ The mode to set, one of #Elm_Win_Indicator_Mode */ + } + } + conformant { + set { + /*@ + Set if this window is an illume conformant window + + @ingroup Win */ + } + get { + /*@ + Get if this window is an illume conformant window + + @return A boolean if this window is illume conformant or not + + @ingroup Win */ + } + values { + Eina_Bool conformant; /*@ The conformant flag (1 = conformant, 0 = non-conformant) */ + } + } + size_base { + set { + /*@ + Set the base window size used with stepping calculation + + Base size + stepping is what is calculated for window sizing restrictions. + + @ingroup Win + @see elm_win_size_step_set + @see elm_win_size_base_get + @since 1.7 */ + } + get { + /*@ + Get the base size of a window. + + @ingroup Win + @see elm_win_size_base_set + @see elm_win_size_step_set + @since 1.7 */ + } + values { + int w; /*@ The base width */ + int h; /*@ The base height */ + } + } + quickpanel { + set { + /*@ + Set a window to be an illume quickpanel window + + By default window objects are not quickpanel windows. + + @ingroup Win */ + } + get { + /*@ + Get if this window is a quickpanel or not + + @return A boolean if this window is a quickpanel or not + + @ingroup Win */ + } + values { + Eina_Bool quickpanel; /*@ The quickpanel flag (1 = quickpanel, 0 = normal window) */ + } + } + rotation_with_resize { + set { + /*@ + Rotates the window and resizes it. + + Like elm_win_rotation_set(), but it also resizes the window's contents so + that they fit inside the current window geometry. + + @ingroup Win */ + } + values { + int rotation; /*@ The rotation of the window in degrees (0-360), + counter-clockwise. */ + } + } + prop_focus_skip { + set { + /*@ + Set the window to be skipped by keyboard focus + + This sets the window to be skipped by normal keyboard input. This means + a window manager will be asked to not focus this window as well as omit + it from things like the taskbar, pager, "alt-tab" list etc. etc. + + Call this and enable it on a window BEFORE you show it for the first time, + otherwise it may have no effect. + + Use this for windows that have only output information or might only be + interacted with by the mouse or fingers, and never for typing input. + Be careful that this may have side-effects like making the window + non-accessible in some cases unless the window is specially handled. Use + this with care. + + @ingroup Win */ + } + values { + Eina_Bool skip; /*@ The skip flag state (EINA_TRUE if it is to be skipped) */ + } + } + screen_position { + get { + /*@ + Get the screen position of a window. + + @ingroup Win */ + } + values { + int x; /*@ The int to store the x coordinate to */ + int y; /*@ The int to store the y coordinate to */ + } + } + wm_rotation_supported { + get { + /*@ + Query whether window manager supports window rotation or not. + + The window manager rotation allows the WM to controls the rotation of application windows. + It is designed to support synchronized rotation for the multiple application windows at same time. + + @return @c EINA_TRUE if the window manager rotation is supported, @c EINA_FALSE otherwise. + + @see elm_win_wm_rotation_supported_get() + @see elm_win_wm_rotation_preferred_rotation_set() + @see elm_win_wm_rotation_preferred_rotation_get() + @see elm_win_wm_rotation_available_rotations_set() + @see elm_win_wm_rotation_available_rotations_get() + @see elm_win_wm_rotation_manual_rotation_done_set() + @see elm_win_wm_rotation_manual_rotation_done_get() + @see elm_win_wm_rotation_manual_rotation_done() + + @ingroup Win + @since 1.9 */ + return Eina_Bool; + } + } + xwindow { + get { + /*@ + Get the Ecore_X_Window of an Evas_Object + + @return The Ecore_X_Window of @p obj + + @ingroup Win */ + return Ecore_X_Window; + } + } + focus { + get { + /*@ + Determine whether a window has focus + @return EINA_TRUE if the window exists and has focus, else EINA_FALSE + + @ingroup Win */ + return Eina_Bool; + } + } + screen_size { + get { + /*@ + Get screen geometry details for the screen that a window is on + @ingroup Win */ + } + values { + int x; /*@ where to return the horizontal offset value. May be NULL. */ + int y; /*@ where to return the vertical offset value. May be NULL. */ + int w; /*@ where to return the width value. May be NULL. */ + int h; /*@ where to return the height value. May be NULL. */ + } + } + main_menu { + get { + /*@ + Get the Main Menu of a window. + + @return The Main Menu of the window (NULL if error). + + @ingroup Win */ + return Evas_Object *; + } + } + wl_window { + get { + /*@ + Get the Ecore_Wl_Window of an Evas_Object + + @return The Ecore_Wl_Window of @p obj + + @ingroup Win */ + return Ecore_Wl_Window *; + legacy null; + } + } + window_id { + get { + /*@ + Get the Ecore_Window of an Evas_Object + + When Elementary is using a Wayland engine, this function will return the surface id of the elm window's surface. + + @return The Ecore_Window of an Evas_Object + + @ingroup Win + @since 1.8 */ + return Ecore_Window; + legacy null; + } + } + screen_dpi { + get { + /*@ + Get screen dpi for the screen that a window is on + @ingroup Win + @since 1.7 */ + } + values { + int xdpi; /*@ Pointer to value to store return horizontal dpi. May be NULL. */ + int ydpi; /*@ Pointer to value to store return vertical dpi. May be NULL. */ + } + } + inlined_image_object { + get { + /*@ + Get the inlined image object handle + + When you create a window with elm_win_add() of type ELM_WIN_INLINED_IMAGE, + then the window is in fact an evas image object inlined in the parent + canvas. You can get this object (be careful to not manipulate it as it + is under control of elementary), and use it to do things like get pixel + data, save the image to a file, etc. + + @return The inlined image object, or NULL if none exists + + @ingroup Win */ + return Evas_Object *; + } + } + type { + get { + /*@ + Get the type of a window. + + @return The type of a window object. If the object is not window object, return ELM_WIN_UNKNOWN. + + @ingroup Win */ + return Elm_Win_Type; + } + } + } + methods { + wm_manual_rotation_done { + /*@ + To notify the rotation done to WM manually. + + This function is used to notify the rotation done to WM manually. + + @see elm_win_wm_rotation_manual_rotation_done_set() + @see elm_win_wm_rotation_manual_rotation_done_get() + + ingroup Win + @since 1.9 */ + + legacy elm_win_wm_rotation_manual_rotation_done; + } + socket_listen { + /*@ + Create a socket to provide the service for Plug widget + + @return If socket creation is successful + + @ingroup Win */ + + return Eina_Bool; + params { + @in const char *svcname; /*@ The name of the service to be advertised. ensure that it is unique (when combined with @p svcnum) otherwise creation may fail. */ + @in int svcnum; /*@ A number (any value, 0 being the common default) to differentiate multiple instances of services with the same name. */ + @in Eina_Bool 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 id that created the service. */ + } + } + illume_command_send { + /*@ + Send a command to the windowing environment + + This is intended to work in touchscreen or small screen device + environments where there is a more simplistic window management policy in + place. This uses the window object indicated to select which part of the + environment to control (the part that this window lives in), and provides + a command and an optional parameter structure (use NULL for this if not + needed). + + @ingroup Win */ + + params { + @in Elm_Illume_Command command; /*@ The command to send */ + @in void *params; /*@ Optional parameters for the command */ + } + } + activate { + /*@ + Activate a window object. + + This function sends a request to the Window Manager to activate the + window pointed by @p obj. If honored by the WM, the window will receive + the keyboard focus. + + @note This is just a request that a Window Manager may ignore, so calling + this function does not ensure in any way that the window will be the + active one after it. + + @ingroup Win */ + + } + resize_object_add { + /*@ + Add @p subobj as a resize object of window @p obj. + + + Setting an object as a resize object of the window means that the + @p subobj child's size and position will be controlled by the window + directly. That is, the object will be resized to match the window size + and should never be moved or resized manually by the developer. + + In addition, resize objects of the window control what the minimum size + of it will be, as well as whether it can or not be resized by the user. + + For the end user to be able to resize a window by dragging the handles + or borders provided by the Window Manager, or using any other similar + mechanism, all of the resize objects in the window should have their + evas_object_size_hint_weight_set() set to EVAS_HINT_EXPAND. + + Also notice that the window can get resized to the current size of the + object if the EVAS_HINT_EXPAND is set @b after the call to + elm_win_resize_object_add(). So if the object should get resized to the + size of the window, set this hint @b before adding it as a resize object + (this happens because the size of the window and the object are evaluated + as soon as the object is added to the window). + + @ingroup Win */ + + params { + @in Evas_Object *subobj; /*@ The resize object to add */ + } + } + raise { + /*@ + Raise a window object. + + Places the window pointed by @p obj at the top of the stack, so that it's + not covered by any other window. + + If elm_win_override_set() is not set, the Window Manager may ignore this + request. + + @ingroup Win */ + + } + lower { + /*@ + Lower a window object. + + Places the window pointed by @p obj at the bottom of the stack, so that + no other window is covered by it. + + If elm_win_override_set() is not set, the Window Manager may ignore this + request. + + @ingroup Win */ + + } + resize_object_del { + /*@ + Delete @p subobj as a resize object of window @p obj. + + This function removes the object @p subobj from the resize objects of + the window @p obj. It will not delete the object itself, which will be + left unmanaged and should be deleted by the developer, manually handled + or set as child of some other container. + + @ingroup Win */ + + params { + @in Evas_Object *subobj; /*@ The resize object to add */ + } + } + center { + /*@ + Center a window on its screen + + This function centers window @p obj horizontally and/or vertically based on the values + of @p h and @p v. + @ingroup Win */ + + params { + @in Eina_Bool h; /*@ If true, center horizontally. If false, do not change horizontal location. */ + @in Eina_Bool v; /*@ If true, center vertically. If false, do not change vertical location. */ + } + } + } + implements { + class::constructor; + Eo_Base::constructor; + Evas_Smart::hide; + Evas_Smart::show; + Evas_Smart::move; + Evas_Smart::add; + Evas_Smart::del; + Evas_Smart::resize; + Elm_Widget::focus_direction; + Elm_Widget::focus_next_manager_is; + Elm_Widget::focus_direction_manager_is; + Elm_Widget::focus_next; + Elm_Widget::theme_apply; + Elm_Widget::on_focus; + Elm_Widget::event; + } + events { + delete,request; + focus,out; + focus,in; + moved; + withdrawn; + iconified; + normal; + stick; + unstick; + fullscreen; + unfullscreen; + maximized; + unmaximized; + ioerr; + indicator,prop,changed; + rotation,changed; + profile,changed; + focused; + unfocused; + wm,rotation,changed; + } + +} diff --git a/legacy/elementary/src/lib/elm_win_eo.h b/legacy/elementary/src/lib/elm_win_eo.h index 8ade15a589..f3cc01ba74 100644 --- a/legacy/elementary/src/lib/elm_win_eo.h +++ b/legacy/elementary/src/lib/elm_win_eo.h @@ -3,6 +3,8 @@ * * @{ */ +#include "elm_win.eo.h" +#if 0 #define ELM_OBJ_WIN_CLASS elm_obj_win_class_get() const Eo_Class *elm_obj_win_class_get(void) EINA_CONST; @@ -1373,6 +1375,7 @@ enum */ #define elm_obj_win_wm_manual_rotation_done() ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WM_MANUAL_ROTATION_DONE) +#endif /** * @} */ diff --git a/legacy/elementary/src/lib/elm_win_legacy.h b/legacy/elementary/src/lib/elm_win_legacy.h index 2513357abf..2c5c340d2d 100644 --- a/legacy/elementary/src/lib/elm_win_legacy.h +++ b/legacy/elementary/src/lib/elm_win_legacy.h @@ -526,7 +526,7 @@ EAPI void elm_win_available_profiles_set(Evas_Object *obj, cons * @ingroup Win * @since 1.8 */ -EAPI Eina_Bool elm_win_available_profiles_get(Evas_Object *obj, char ***profiles, unsigned int *count); +EAPI Eina_Bool elm_win_available_profiles_get(const Evas_Object *obj, char ***profiles, unsigned int *count); /** * Set the profile of a window. @@ -659,7 +659,7 @@ EAPI void elm_win_size_base_set(Evas_Object *obj, int w, int h) * @see elm_win_size_step_set * @since 1.7 */ -EAPI void elm_win_size_base_get(Evas_Object *obj, int *w, int *h); +EAPI void elm_win_size_base_get(const Evas_Object *obj, int *w, int *h); /** * Set the window stepping used with sizing calculation @@ -689,7 +689,7 @@ EAPI void elm_win_size_step_set(Evas_Object *obj, int w, int h) * @see elm_win_size_step_set * @since 1.7 */ -EAPI void elm_win_size_step_get(Evas_Object *obj, int *w, int *h); +EAPI void elm_win_size_step_get(const Evas_Object *obj, int *w, int *h); /** * Set the layer of the window. @@ -1159,7 +1159,7 @@ EAPI void elm_win_illume_command_send(Evas_Object *obj, Elm_Ill * * @ingroup Win */ -EAPI Evas_Object *elm_win_inlined_image_object_get(Evas_Object *obj); +EAPI Evas_Object *elm_win_inlined_image_object_get(const Evas_Object *obj); /** * Determine whether a window has focus @@ -1190,7 +1190,7 @@ EAPI void elm_win_screen_constrain_set(Evas_Object *obj, Eina_B * * @ingroup Win */ -EAPI Eina_Bool elm_win_screen_constrain_get(Evas_Object *obj); +EAPI Eina_Bool elm_win_screen_constrain_get(const Evas_Object *obj); /** * Get screen geometry details for the screen that a window is on