efl.ui.win: remove all legacy types and functions from eo file

Summary:
most of the eo methods here will be marked beta, preventing them from
generating legacy code

ref T7511
Depends on D8082

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7511

Differential Revision: https://phab.enlightenment.org/D8083
This commit is contained in:
Mike Blumenkrantz 2019-03-04 13:37:24 -05:00
parent bc0c50c507
commit e3fa213d10
41 changed files with 1205 additions and 219 deletions

View File

@ -41,7 +41,7 @@ test_efl_ui_text_label(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi
char *markup;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Canvas_Layout"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
@ -145,7 +145,7 @@ test_efl_ui_text(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *eve
Eo *bt;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Ui Text"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
@ -204,7 +204,7 @@ test_efl_ui_text_inputfield(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED
Eo *win, *bx, *en;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Ui Text Input Field"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
@ -294,7 +294,7 @@ test_ui_text_item_factory(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
Eina_File *f;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Ui Text Item Factory"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -805,7 +805,7 @@ test_image_zoomable_animated(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE
char buf[PATH_MAX];
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Image_Zoomable animation"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -28,7 +28,7 @@ test_ui_button(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event
char buf[PATH_MAX];
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Button"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE)
);

View File

@ -48,7 +48,7 @@ test_ui_clock(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_
Evas_Object *win, *bx;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Clock"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -18,7 +18,7 @@ test_ui_datepicker(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
Eo *win, *bx;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Datepicker"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -678,7 +678,7 @@ void test_ui_pager(void *data EINA_UNUSED,
int i;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Pager"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -859,7 +859,7 @@ void test_ui_pager_scroll(void *data EINA_UNUSED,
int i;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Pager"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -10,7 +10,7 @@ test_ui_panel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_
Eo *win, *table, *panel;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Panel"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
@ -103,7 +103,7 @@ test_ui_panel2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event
Eo *win, *box, *check, *btn, *table, *list, *panel;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Panel"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -9,7 +9,7 @@ test_panes_minsize(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
Eo *win, *panes, *panes_h;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Panes"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE)
);

View File

@ -118,7 +118,7 @@ test_ui_progressbar(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, void *event_inf
pd = (pbdata *)calloc(1, sizeof(pbdata));
pd->win = win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Progressbar"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_event_callback_add(efl_added, EFL_UI_WIN_EVENT_DELETE_REQUEST,

View File

@ -264,7 +264,7 @@ test_ui_relative_layout(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, vo
Eo *win, *vbox, *f, *hbox;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Relative_Layout"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -31,7 +31,7 @@ test_efl_ui_scroller(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
int i, j;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Ui Scroller"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
efl_gfx_entity_size_set(win, EINA_SIZE2D(320, 400));

View File

@ -33,7 +33,7 @@ test_ui_slider(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event
double step;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Slider"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -33,7 +33,7 @@ test_slider_interval(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
double step;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Slider_Interval"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -37,7 +37,7 @@ test_ui_spin(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_i
Eo *win, *bx, *sp;
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Spin"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -28,7 +28,7 @@ test_ui_spin_button(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *
eina_array_push(array, &values[i]);
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Spin_Button"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -123,7 +123,7 @@ test_ui_tab_pager(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *ev
int i;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Tab_Pager"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_event_callback_add(efl_added, EFL_EVENT_DEL, _win_del_cb, ad));

View File

@ -59,7 +59,7 @@ test_ui_tags(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_i
char buf[PATH_MAX];
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Tags"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -19,7 +19,7 @@ test_ui_timepicker(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
Eo *win, *bx;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Timepicker"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -29,7 +29,7 @@ _bt2_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_
Eina_Size2D size = { 300, 150 };
dia = efl_add(EFL_UI_WIN_CLASS, parent,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_DIALOG_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_DIALOG_BASIC),
efl_ui_win_name_set(efl_added, "window-dia-2"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_text_set(efl_added, "A Fixed Size Dialog"));
@ -76,7 +76,7 @@ _bt3_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_
Efl_Canvas_Object *dia, *lb, *parent = data;
dia = efl_add(EFL_UI_WIN_CLASS, parent,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_DIALOG_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_DIALOG_BASIC),
efl_ui_win_name_set(efl_added, "window-dia-3"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_text_set(efl_added, "Min/Max Size Dialog"));
@ -102,7 +102,7 @@ _bt4_clicked_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *even
Efl_Canvas_Object *dia, *lb;
dia = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_DIALOG_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_DIALOG_BASIC),
efl_ui_win_name_set(efl_added, "window-dia-4"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_text_set(efl_added, "Min/Max Size Dialog")

View File

@ -56,25 +56,25 @@ _create_indicator(void)
static void
_off_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
{
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_OFF);
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_MODE_OFF);
}
static void
_opaque_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
{
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_BG_OPAQUE);
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_MODE_BG_OPAQUE);
}
static void
_transparent_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
{
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_BG_TRANSPARENT);
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_MODE_BG_TRANSPARENT);
}
static void
_hidden_clicked(void *data, const Efl_Event *ev EINA_UNUSED)
{
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_HIDDEN);
efl_ui_win_indicator_mode_set(data, EFL_UI_WIN_INDICATOR_MODE_HIDDEN);
}
static void
@ -92,7 +92,7 @@ test_win_indicator(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e
// FIXME: Resizing window should no cause sizing issues!
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Win.Indicator"),
efl_gfx_hint_size_max_set(efl_added, EINA_SIZE2D(300, -1)),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -20,13 +20,13 @@ _win_new(Evas_Object *stack_top, const char *title)
if (level >= 3)
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_name_set(efl_added, "window-stack"),
efl_ui_win_type_set(efl_added, ELM_WIN_NAVIFRAME_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_NAVIFRAME_BASIC),
efl_text_set(efl_added, title),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
else
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_name_set(efl_added, "window-stack"),
efl_ui_win_type_set(efl_added, ELM_WIN_DIALOG_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_DIALOG_BASIC),
efl_text_set(efl_added, title),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -263,39 +263,39 @@ _bt_pressed(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
case 1:
printf("Top Left\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_LEFT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_TOP | ELM_WIN_MOVE_RESIZE_LEFT);
break;
case 2:
printf("Top\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_TOP);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_TOP);
break;
case 3:
printf("Top Right\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_RIGHT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_TOP | ELM_WIN_MOVE_RESIZE_RIGHT);
break;
case 4:
printf("Left\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_LEFT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_LEFT);
break;
case 5:
printf("Move win\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_MOVE);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_MOVE);
break;
case 6:
printf("Right\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_RIGHT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_RIGHT);
break;
case 7:
printf("Bottom Left\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_LEFT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_BOTTOM | ELM_WIN_MOVE_RESIZE_LEFT);
break;
case 8:
printf("Bottom\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_BOTTOM);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_BOTTOM);
break;
case 9:
printf("Bottom Right\n");
res = elm_win_move_resize_start(win, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_RIGHT);
res = elm_win_move_resize_start(win, ELM_WIN_MOVE_RESIZE_BOTTOM | ELM_WIN_MOVE_RESIZE_RIGHT);
break;
default:
printf("No action\n");

View File

@ -121,7 +121,7 @@ efl_main(void *data EINA_UNUSED,
Eo *win;
win = efl_add(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl Canvas_Layout"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE),
efl_event_callback_add(efl_added, EFL_UI_WIN_EVENT_DELETE_REQUEST, _on_win_delete, NULL));

View File

@ -39,7 +39,7 @@ elm_main(int argc, char **argv)
Grid_Event_Data *gd = calloc(sizeof(Grid_Event_Data *), 1);
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Grid"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -16,7 +16,7 @@ elm_main(int argc, char **argv)
Eo *win, *layout, *btn1, *btn2, *btn3;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Relative_Layout"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -16,7 +16,7 @@ elm_main(int argc, char **argv)
Eo *win, *layout, *btn1, *btn2;
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Relative_Layout"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));

View File

@ -52,7 +52,7 @@ efl_main(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED)
efl_ui_theme_extension_add(default_theme, EXAMPLE_EDJ_FILE_PATH);
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Theme example"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE)
);

View File

@ -52,7 +52,7 @@ efl_main(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED)
efl_ui_theme_overlay_add(default_theme, EXAMPLE_EDJ_FILE_PATH);
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Efl.Ui.Theme example"),
efl_ui_win_autodel_set(efl_added, EINA_TRUE)
);

View File

@ -22,7 +22,7 @@ elm_main(int argc, char* argv[])
{
win_1.text_set("Toolbar");
win_1.win_name_set("toolbar");
win_1.win_type_set(EFL_UI_WIN_BASIC);
win_1.win_type_set(EFL_UI_WIN_TYPE_BASIC);
});
#if 0

View File

@ -53,7 +53,7 @@ static int _paused_windows = 0;
#define TRAP(sd, name, ...) \
do \
{ \
if (sd->type != ELM_WIN_FAKE) \
if (sd->type != EFL_UI_WIN_TYPE_FAKE) \
if ((!trap) || (!trap->name) || \
((trap->name) && \
(trap->name(sd->trap_data, sd->obj, ## __VA_ARGS__)))) \
@ -385,6 +385,66 @@ static inline void _elm_win_need_frame_adjust(Efl_Ui_Win_Data *sd, const char *e
static void _elm_win_resize_objects_eval(Evas_Object *obj, Eina_Bool force_resize);
static void _elm_win_frame_obj_update(Efl_Ui_Win_Data *sd, Eina_Bool force);
static inline Efl_Ui_Win_Type
_elm_win_type_to_efl_ui_win_type(Elm_Win_Type type)
{
switch (type)
{
#define CONVERT_TYPE(TYPE) case ELM_WIN_##TYPE: return EFL_UI_WIN_TYPE_##TYPE
CONVERT_TYPE(BASIC);
CONVERT_TYPE(DIALOG_BASIC);
CONVERT_TYPE(DESKTOP);
CONVERT_TYPE(DOCK);
CONVERT_TYPE(TOOLBAR);
CONVERT_TYPE(MENU);
CONVERT_TYPE(UTILITY);
CONVERT_TYPE(SPLASH);
CONVERT_TYPE(DROPDOWN_MENU);
CONVERT_TYPE(POPUP_MENU);
CONVERT_TYPE(TOOLTIP);
CONVERT_TYPE(NOTIFICATION);
CONVERT_TYPE(COMBO);
CONVERT_TYPE(DND);
CONVERT_TYPE(INLINED_IMAGE);
CONVERT_TYPE(SOCKET_IMAGE);
CONVERT_TYPE(FAKE);
CONVERT_TYPE(NAVIFRAME_BASIC);
default: break;
}
return EFL_UI_WIN_TYPE_UNKNOWN;
#undef CONVERT_TYPE
}
static inline Elm_Win_Type
_efl_ui_win_type_to_elm_win_type(Efl_Ui_Win_Type type)
{
switch (type)
{
#define CONVERT_TYPE(TYPE) case EFL_UI_WIN_TYPE_##TYPE: return ELM_WIN_##TYPE
CONVERT_TYPE(BASIC);
CONVERT_TYPE(DIALOG_BASIC);
CONVERT_TYPE(DESKTOP);
CONVERT_TYPE(DOCK);
CONVERT_TYPE(TOOLBAR);
CONVERT_TYPE(MENU);
CONVERT_TYPE(UTILITY);
CONVERT_TYPE(SPLASH);
CONVERT_TYPE(DROPDOWN_MENU);
CONVERT_TYPE(POPUP_MENU);
CONVERT_TYPE(TOOLTIP);
CONVERT_TYPE(NOTIFICATION);
CONVERT_TYPE(COMBO);
CONVERT_TYPE(DND);
CONVERT_TYPE(INLINED_IMAGE);
CONVERT_TYPE(SOCKET_IMAGE);
CONVERT_TYPE(FAKE);
CONVERT_TYPE(NAVIFRAME_BASIC);
default: break;
}
return ELM_WIN_UNKNOWN;
#undef CONVERT_TYPE
}
#ifdef HAVE_ELEMENTARY_X
static void _elm_win_xwin_update(Efl_Ui_Win_Data *sd);
#endif
@ -1000,7 +1060,7 @@ _elm_win_pre_render(Ecore_Evas *ee)
{
int mw, mh;
if (sd->type != ELM_WIN_FAKE)
if (sd->type != EFL_UI_WIN_TYPE_FAKE)
{
edje_object_thaw(sd->frame_obj);
evas_object_show(sd->frame_obj);
@ -1315,7 +1375,7 @@ _elm_win_focus_in(Ecore_Evas *ee)
_elm_widget_top_win_focused_set(obj, EINA_TRUE);
ELM_WIN_DATA_ALIVE_CHECK(obj, sd);
if (sd->type != ELM_WIN_FAKE)
if (sd->type != EFL_UI_WIN_TYPE_FAKE)
{
Efl_Ui_Focus_Manager *man = sd->obj;
while(efl_ui_focus_manager_redirect_get(man))
@ -1388,7 +1448,7 @@ _elm_win_focus_out(Ecore_Evas *ee)
efl_access_state_changed_signal_emit(obj, EFL_ACCESS_STATE_ACTIVE, EINA_FALSE);
}
if (sd->type != ELM_WIN_FAKE)
if (sd->type != EFL_UI_WIN_TYPE_FAKE)
{
Efl_Ui_Focus_Manager *man = sd->obj;
while(efl_ui_focus_manager_redirect_get(man))
@ -2943,7 +3003,7 @@ _efl_ui_win_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Win_Data *sd)
/* NB: child deletion handled by parent's smart del */
if ((sd->type != ELM_WIN_FAKE) && (trap) && (trap->del))
if ((sd->type != EFL_UI_WIN_TYPE_FAKE) && (trap) && (trap->del))
trap->del(sd->trap_data, obj);
if (sd->parent)
@ -2995,7 +3055,7 @@ _efl_ui_win_efl_canvas_group_group_del(Eo *obj, Efl_Ui_Win_Data *sd)
}
else
{
if (sd->ee && (sd->type != ELM_WIN_FAKE))
if (sd->ee && (sd->type != EFL_UI_WIN_TYPE_FAKE))
{
ecore_evas_manual_render_set(sd->ee, EINA_TRUE);
edje_object_freeze(sd->frame_obj);
@ -3409,7 +3469,7 @@ _elm_win_xwin_update(Efl_Ui_Win_Data *sd)
{
const char *s;
if (sd->type == ELM_WIN_FAKE) return;
if (sd->type == EFL_UI_WIN_TYPE_FAKE) return;
_internal_elm_win_xwindow_get(sd);
if (!sd->x.xwin) return; /* nothing more to do */
@ -4031,40 +4091,40 @@ typedef struct _resize_info {
} resize_info;
static const resize_info _resize_infos_legacy[8] = {
{ "elm.event.resize.t", ELM_CURSOR_TOP_SIDE, EFL_UI_WIN_MOVE_RESIZE_TOP, 1 XDIR(SIZE_T) },
{ "elm.event.resize.b", ELM_CURSOR_BOTTOM_SIDE, EFL_UI_WIN_MOVE_RESIZE_BOTTOM, 2 XDIR(SIZE_B) },
{ "elm.event.resize.l", ELM_CURSOR_LEFT_SIDE, EFL_UI_WIN_MOVE_RESIZE_LEFT, 4 XDIR(SIZE_L) },
{ "elm.event.resize.r", ELM_CURSOR_RIGHT_SIDE, EFL_UI_WIN_MOVE_RESIZE_RIGHT, 8 XDIR(SIZE_R) },
{ "elm.event.resize.tl", ELM_CURSOR_TOP_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_LEFT, 5 XDIR(SIZE_TL) },
{ "elm.event.resize.bl", ELM_CURSOR_BOTTOM_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_LEFT, 6 XDIR(SIZE_BL) },
{ "elm.event.resize.br", ELM_CURSOR_BOTTOM_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_RIGHT, 10 XDIR(SIZE_BR) },
{ "elm.event.resize.tr", ELM_CURSOR_TOP_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_RIGHT, 9 XDIR(SIZE_TR) },
{ "elm.event.resize.t", ELM_CURSOR_TOP_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP, 1 XDIR(SIZE_T) },
{ "elm.event.resize.b", ELM_CURSOR_BOTTOM_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM, 2 XDIR(SIZE_B) },
{ "elm.event.resize.l", ELM_CURSOR_LEFT_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 4 XDIR(SIZE_L) },
{ "elm.event.resize.r", ELM_CURSOR_RIGHT_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 8 XDIR(SIZE_R) },
{ "elm.event.resize.tl", ELM_CURSOR_TOP_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 5 XDIR(SIZE_TL) },
{ "elm.event.resize.bl", ELM_CURSOR_BOTTOM_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 6 XDIR(SIZE_BL) },
{ "elm.event.resize.br", ELM_CURSOR_BOTTOM_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 10 XDIR(SIZE_BR) },
{ "elm.event.resize.tr", ELM_CURSOR_TOP_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 9 XDIR(SIZE_TR) },
};
static const resize_info _resize_infos[8] = {
{ "efl.event.resize.t", ELM_CURSOR_TOP_SIDE, EFL_UI_WIN_MOVE_RESIZE_TOP, 1 XDIR(SIZE_T) },
{ "efl.event.resize.b", ELM_CURSOR_BOTTOM_SIDE, EFL_UI_WIN_MOVE_RESIZE_BOTTOM, 2 XDIR(SIZE_B) },
{ "efl.event.resize.l", ELM_CURSOR_LEFT_SIDE, EFL_UI_WIN_MOVE_RESIZE_LEFT, 4 XDIR(SIZE_L) },
{ "efl.event.resize.r", ELM_CURSOR_RIGHT_SIDE, EFL_UI_WIN_MOVE_RESIZE_RIGHT, 8 XDIR(SIZE_R) },
{ "efl.event.resize.tl", ELM_CURSOR_TOP_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_LEFT, 5 XDIR(SIZE_TL) },
{ "efl.event.resize.bl", ELM_CURSOR_BOTTOM_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_LEFT, 6 XDIR(SIZE_BL) },
{ "efl.event.resize.br", ELM_CURSOR_BOTTOM_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_RIGHT, 10 XDIR(SIZE_BR) },
{ "efl.event.resize.tr", ELM_CURSOR_TOP_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_RIGHT, 9 XDIR(SIZE_TR) },
{ "efl.event.resize.t", ELM_CURSOR_TOP_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP, 1 XDIR(SIZE_T) },
{ "efl.event.resize.b", ELM_CURSOR_BOTTOM_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM, 2 XDIR(SIZE_B) },
{ "efl.event.resize.l", ELM_CURSOR_LEFT_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 4 XDIR(SIZE_L) },
{ "efl.event.resize.r", ELM_CURSOR_RIGHT_SIDE, EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 8 XDIR(SIZE_R) },
{ "efl.event.resize.tl", ELM_CURSOR_TOP_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 5 XDIR(SIZE_TL) },
{ "efl.event.resize.bl", ELM_CURSOR_BOTTOM_LEFT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT, 6 XDIR(SIZE_BL) },
{ "efl.event.resize.br", ELM_CURSOR_BOTTOM_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 10 XDIR(SIZE_BR) },
{ "efl.event.resize.tr", ELM_CURSOR_TOP_RIGHT_CORNER, EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT, 9 XDIR(SIZE_TR) },
};
static inline Efl_Ui_Win_Move_Resize_Mode
_move_resize_mode_rotate(int rotation, Efl_Ui_Win_Move_Resize_Mode mode)
{
const Efl_Ui_Win_Move_Resize_Mode edges[4] = {
EFL_UI_WIN_MOVE_RESIZE_TOP, EFL_UI_WIN_MOVE_RESIZE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_BOTTOM, EFL_UI_WIN_MOVE_RESIZE_RIGHT
EFL_UI_WIN_MOVE_RESIZE_MODE_TOP, EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM, EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT
};
const Efl_Ui_Win_Move_Resize_Mode corners[4] = {
EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_RIGHT,
EFL_UI_WIN_MOVE_RESIZE_TOP | EFL_UI_WIN_MOVE_RESIZE_RIGHT,
EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_LEFT,
EFL_UI_WIN_MOVE_RESIZE_MODE_BOTTOM | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT,
EFL_UI_WIN_MOVE_RESIZE_MODE_TOP | EFL_UI_WIN_MOVE_RESIZE_MODE_RIGHT,
};
const int i = rotation / 90;
@ -4078,7 +4138,7 @@ _move_resize_mode_rotate(int rotation, Efl_Ui_Win_Move_Resize_Mode mode)
if (mode == corners[k])
return corners[(k + i) % 4];
return EFL_UI_WIN_MOVE_RESIZE_MOVE;
return EFL_UI_WIN_MOVE_RESIZE_MODE_MOVE;
}
static const resize_info *
@ -4123,7 +4183,7 @@ _move_resize_mode_get(Evas_Object *obj, const char *source)
return _resize_infos[k].mode;
}
return EFL_UI_WIN_MOVE_RESIZE_MOVE;
return EFL_UI_WIN_MOVE_RESIZE_MODE_MOVE;
}
static void
@ -4264,7 +4324,7 @@ _win_move_resize_start(Efl_Ui_Win_Data *sd, Efl_Ui_Win_Move_Resize_Mode mode)
return EINA_FALSE;
}
if (mode == EFL_UI_WIN_MOVE_RESIZE_MOVE)
if (mode == EFL_UI_WIN_MOVE_RESIZE_MODE_MOVE)
return _win_move_start(sd);
ri = _resize_info_get(sd->obj, sd->rot, mode);
@ -4310,7 +4370,7 @@ _elm_win_frame_cb_move_start(void *data,
{
ELM_WIN_DATA_GET_OR_RETURN(data, sd);
_win_move_resize_start(sd, EFL_UI_WIN_MOVE_RESIZE_MOVE);
_win_move_resize_start(sd, EFL_UI_WIN_MOVE_RESIZE_MODE_MOVE);
}
static void
@ -4321,7 +4381,7 @@ _elm_win_frame_cb_resize_start(void *data, Evas_Object *obj EINA_UNUSED,
Efl_Ui_Win_Move_Resize_Mode mode;
mode = _move_resize_mode_get(sd->obj, source);
if (mode == EFL_UI_WIN_MOVE_RESIZE_MOVE) return;
if (mode == EFL_UI_WIN_MOVE_RESIZE_MODE_MOVE) return;
_win_move_resize_start(sd, mode);
}
@ -4697,7 +4757,7 @@ _elm_win_frame_style_update(Efl_Ui_Win_Data *sd, Eina_Bool force_emit, Eina_Bool
if (!sd->frame_obj)
{
if (!efl_finalized_get(sd->obj)) return;
if (EINA_LIKELY(sd->type == ELM_WIN_FAKE))
if (EINA_LIKELY(sd->type == EFL_UI_WIN_TYPE_FAKE))
return;
if (!_elm_config->win_no_border)
CRI("Window has no frame object!");
@ -4927,7 +4987,7 @@ _elm_win_need_frame_adjust(Efl_Ui_Win_Data *sd, const char *engine)
sd->csd.wayland = (eina_streq(engine, ELM_WAYLAND_SHM) ||
eina_streq(engine, ELM_WAYLAND_EGL));
if (sd->type == ELM_WIN_FAKE)
if (sd->type == EFL_UI_WIN_TYPE_FAKE)
sd->csd.need = EINA_FALSE;
else if (eina_streq(s, "on"))
sd->csd.need = EINA_TRUE;
@ -5081,7 +5141,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
switch ((int) type)
{
case ELM_WIN_FAKE:
case EFL_UI_WIN_TYPE_FAKE:
tmp_sd.ee = sd->ee;
break;
case ELM_WIN_INLINED_IMAGE:
@ -5431,12 +5491,12 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
SD_CPY(shot.info);
#undef SD_CPY
if ((type != ELM_WIN_FAKE) && (trap) && (trap->add))
if ((type != EFL_UI_WIN_TYPE_FAKE) && (trap) && (trap->add))
sd->trap_data = trap->add(obj);
/* complementary actions, which depend on final smart data
* pointer */
if (type == ELM_WIN_INLINED_IMAGE)
if (type == EFL_UI_WIN_TYPE_INLINED_IMAGE)
_win_inlined_image_set(sd);
#ifdef HAVE_ELEMENTARY_X
else if ((engine) &&
@ -5454,7 +5514,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
sd->kbdmode = ELM_WIN_KEYBOARD_UNKNOWN;
sd->legacy.indmode = ELM_WIN_INDICATOR_UNKNOWN;
sd->indimode = EFL_UI_WIN_INDICATOR_OFF;
sd->indimode = EFL_UI_WIN_INDICATOR_MODE_OFF;
#ifdef HAVE_ELEMENTARY_X
_internal_elm_win_xwindow_get(sd);
@ -5494,7 +5554,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
}
ecore_wl2_window_type_set(sd->wl.win, wtype);
}
else if (sd->type == ELM_WIN_FAKE)
else if (sd->type == EFL_UI_WIN_TYPE_FAKE)
{
const char *env = getenv("WAYLAND_DISPLAY");
if (env)
@ -5540,13 +5600,13 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
evas_object_color_set(obj, 0, 0, 0, 0);
evas_object_pass_events_set(obj, EINA_TRUE);
if (type == ELM_WIN_INLINED_IMAGE)
if (type == EFL_UI_WIN_TYPE_INLINED_IMAGE)
efl_ui_win_inlined_parent_set(obj, parent);
/* use own version of ecore_evas_object_associate() that does TRAP() */
ecore_evas_data_set(sd->ee, "elm_win", obj);
if (type != ELM_WIN_FAKE)
if (type != EFL_UI_WIN_TYPE_FAKE)
{
evas_object_event_callback_add(obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
_elm_win_obj_callback_changed_size_hints, NULL);
@ -5571,7 +5631,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
ecore_evas_callback_resize_set(sd->ee, _elm_win_resize);
ecore_evas_callback_move_set(sd->ee, _elm_win_move);
ecore_evas_callback_pre_render_set(sd->ee, _elm_win_pre_render);
if (type != ELM_WIN_FAKE)
if (type != EFL_UI_WIN_TYPE_FAKE)
{
ecore_evas_callback_mouse_in_set(sd->ee, _elm_win_mouse_in);
ecore_evas_callback_mouse_out_set(sd->ee, _elm_win_mouse_out);
@ -5600,7 +5660,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
_elm_win_xwin_update(sd);
#endif
if (type != ELM_WIN_FAKE)
if (type != EFL_UI_WIN_TYPE_FAKE)
{
//Prohibiting auto-rendering, until elm_win is shown.
if (_elm_win_auto_norender_withdrawn(obj))
@ -5627,7 +5687,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
ERR("failed to grab F12 key to elm widgets (dot) tree generation");
#endif
if (type != ELM_WIN_FAKE)
if (type != EFL_UI_WIN_TYPE_FAKE)
{
if ((_elm_config->softcursor_mode == ELM_SOFTCURSOR_MODE_ON) ||
((_elm_config->softcursor_mode == ELM_SOFTCURSOR_MODE_AUTO) &&
@ -5665,7 +5725,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
_elm_win_apply_alpha(obj, sd);
#ifdef HAVE_ELEMENTARY_WL2
if ((type != ELM_WIN_FAKE) && (type != ELM_WIN_INLINED_IMAGE))
if ((type != EFL_UI_WIN_TYPE_FAKE) && (type != EFL_UI_WIN_TYPE_INLINED_IMAGE))
{
if ((engine) &&
((!strcmp(engine, ELM_WAYLAND_SHM) ||
@ -5693,7 +5753,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
#endif
/* do not append to list; all windows render as black rects */
if (type != ELM_WIN_FAKE)
if (type != EFL_UI_WIN_TYPE_FAKE)
{
const char *element = "base";
const char *style;
@ -5711,15 +5771,15 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
if (!style) style = "default";
switch (type)
{
case EFL_UI_WIN_DIALOG_BASIC: element = "dialog"; break;
case EFL_UI_WIN_NAVIFRAME_BASIC: element = "naviframe"; break;
case EFL_UI_WIN_TYPE_DIALOG_BASIC: element = "dialog"; break;
case EFL_UI_WIN_TYPE_NAVIFRAME_BASIC: element = "naviframe"; break;
default: break;
}
if (!_elm_config->win_no_border)
_elm_win_frame_add(sd, element, style);
if (sd->indimode != EFL_UI_WIN_INDICATOR_OFF)
if (sd->indimode != EFL_UI_WIN_INDICATOR_MODE_OFF)
_indicator_add(sd);
if (_elm_config->focus_highlight_enable)
@ -5740,7 +5800,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
efl_event_callback_array_add(obj, _elm_win_tracking(), sd);
evas_object_show(sd->legacy.edje);
if (type == ELM_WIN_FAKE)
if (type == EFL_UI_WIN_TYPE_FAKE)
{
_elm_win_resize_job(obj);
_elm_win_move(sd->ee);
@ -5756,9 +5816,9 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
{
switch (type)
{
case EFL_UI_WIN_UNKNOWN:
case EFL_UI_WIN_BASIC:
case EFL_UI_WIN_DIALOG_BASIC:
case EFL_UI_WIN_TYPE_UNKNOWN:
case EFL_UI_WIN_TYPE_BASIC:
case EFL_UI_WIN_TYPE_DIALOG_BASIC:
_elm_win_standard_init(obj);
break;
default: break;
@ -5812,7 +5872,7 @@ EOLIAN static void
_efl_ui_win_efl_object_destructor(Eo *obj, Efl_Ui_Win_Data *pd EINA_UNUSED)
{
#ifdef HAVE_ELEMENTARY_WL2
if (pd->type == ELM_WIN_FAKE)
if (pd->type == EFL_UI_WIN_TYPE_FAKE)
{
if (pd->wl.win)
ecore_wl2_window_free(pd->wl.win);
@ -6218,7 +6278,7 @@ _efl_ui_win_fullscreen_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd, Eina_Bool f
// these engines... can ONLY be fullscreen
return;
}
else if (sd->type == ELM_WIN_FAKE)
else if (sd->type == EFL_UI_WIN_TYPE_FAKE)
sd->fullscreen = !!fullscreen;
else
{
@ -6480,8 +6540,8 @@ _efl_ui_win_urgent_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Urge
EOLIAN static Efl_Ui_Win_Urgent_Mode
_efl_ui_win_urgent_get(const Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
{
if (sd->urgent) return EFL_UI_WIN_URGENT_URGENT;
return EFL_UI_WIN_URGENT_NONE;
if (sd->urgent) return EFL_UI_WIN_URGENT_MODE_URGENT;
return EFL_UI_WIN_URGENT_MODE_NONE;
}
EOLIAN static void
@ -6506,8 +6566,8 @@ _efl_ui_win_modal_set(Eo *obj, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Modal_Mode modal)
EOLIAN static Efl_Ui_Win_Modal_Mode
_efl_ui_win_modal_get(const Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
{
if (sd->modal) return EFL_UI_WIN_MODAL_MODAL;
return EFL_UI_WIN_MODAL_NONE;
if (sd->modal) return EFL_UI_WIN_MODAL_MODE_MODAL;
return EFL_UI_WIN_MODAL_MODE_NONE;
}
static void
@ -6767,7 +6827,7 @@ _efl_ui_win_sticky_get(const Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
}
EOLIAN static void
_efl_ui_win_keyboard_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd, Elm_Win_Keyboard_Mode mode)
_efl_ui_win_keyboard_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Keyboard_Mode mode)
{
if (mode == sd->kbdmode) return;
#ifdef HAVE_ELEMENTARY_X
@ -6781,7 +6841,7 @@ _efl_ui_win_keyboard_mode_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd, Elm_Win_
#endif
}
EOLIAN static Elm_Win_Keyboard_Mode
EOLIAN static Efl_Ui_Win_Keyboard_Mode
_efl_ui_win_keyboard_mode_get(const Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
{
return sd->kbdmode;
@ -6794,7 +6854,7 @@ _efl_ui_win_indicator_mode_set(Eo *obj, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Indicato
if (sd->indimode == mode) return;
sd->indimode = mode;
if (sd->indimode == EFL_UI_WIN_INDICATOR_OFF)
if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_OFF)
{
_indicator_del(sd);
return;
@ -6804,20 +6864,20 @@ _efl_ui_win_indicator_mode_set(Eo *obj, Efl_Ui_Win_Data *sd, Efl_Ui_Win_Indicato
if (elm_widget_is_legacy(obj))
{
if (sd->indimode == EFL_UI_WIN_INDICATOR_BG_OPAQUE)
if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_BG_OPAQUE)
edje_object_signal_emit(sd->frame_obj, "elm,action,indicator,bg_opaque", "elm");
else if (sd->indimode == EFL_UI_WIN_INDICATOR_BG_TRANSPARENT)
else if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_BG_TRANSPARENT)
edje_object_signal_emit(sd->frame_obj, "elm,action,indicator,bg_transparent", "elm");
else if (sd->indimode == EFL_UI_WIN_INDICATOR_HIDDEN)
else if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_HIDDEN)
edje_object_signal_emit(sd->frame_obj, "elm,action,indicator,hidden", "elm");
}
else
{
if (sd->indimode == EFL_UI_WIN_INDICATOR_BG_OPAQUE)
if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_BG_OPAQUE)
edje_object_signal_emit(sd->frame_obj, "efl,action,indicator,bg_opaque", "efl");
else if (sd->indimode == EFL_UI_WIN_INDICATOR_BG_TRANSPARENT)
else if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_BG_TRANSPARENT)
edje_object_signal_emit(sd->frame_obj, "efl,action,indicator,bg_transparent", "efl");
else if (sd->indimode == EFL_UI_WIN_INDICATOR_HIDDEN)
else if (sd->indimode == EFL_UI_WIN_INDICATOR_MODE_HIDDEN)
edje_object_signal_emit(sd->frame_obj, "efl,action,indicator,hidden", "efl");
}
@ -8401,7 +8461,7 @@ elm_win_modal_set(Evas_Object *obj, Eina_Bool modal)
{
Efl_Ui_Win_Modal_Mode modality;
modality = modal ? EFL_UI_WIN_MODAL_MODAL : EFL_UI_WIN_MODAL_NONE;
modality = modal ? EFL_UI_WIN_MODAL_MODE_MODAL : EFL_UI_WIN_MODAL_MODE_NONE;
efl_ui_win_modal_set(obj, modality);
}
@ -8411,7 +8471,7 @@ elm_win_modal_get(const Evas_Object *obj)
Efl_Ui_Win_Modal_Mode modality;
modality = efl_ui_win_modal_get(obj);
return (modality != EFL_UI_WIN_MODAL_NONE);
return (modality != EFL_UI_WIN_MODAL_MODE_NONE);
}
EAPI void
@ -8781,7 +8841,7 @@ _elm_win_legacy_init(Efl_Ui_Win_Data *sd)
edje_object_part_swallow(sd->legacy.edje, "efl.contents", sd->legacy.box);
evas_object_geometry_set(sd->legacy.edje, 0, 0, 1, 1);
if (sd->type != ELM_WIN_FAKE)
if (sd->type != EFL_UI_WIN_TYPE_FAKE)
{
edje_object_update_hints_set(sd->legacy.edje, EINA_TRUE);
evas_object_event_callback_add(sd->legacy.edje, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
@ -8933,7 +8993,7 @@ EAPI void
elm_win_type_set(Evas_Object *obj, Elm_Win_Type type)
{
ERR("Calling deprecrated function '%s'", __FUNCTION__);
efl_ui_win_type_set(obj, type);
efl_ui_win_type_set(obj, _elm_win_type_to_efl_ui_win_type(type));
}
EAPI void
@ -8987,8 +9047,45 @@ _efl_ui_win_legacy_efl_object_finalize(Eo *obj, void *pd EINA_UNUSED)
return obj;
}
Efl_Object *_efl_ui_win_legacy_efl_object_finalize(Eo *obj, void *pd);
static Eina_Bool
_efl_ui_win_legacy_class_initializer(Efl_Class *klass)
{
const Efl_Object_Ops *opsp = NULL;
const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
#ifndef EFL_UI_WIN_LEGACY_EXTRA_OPS
#define EFL_UI_WIN_LEGACY_EXTRA_OPS
#endif
EFL_OPS_DEFINE(ops,
EFL_OBJECT_OP_FUNC(efl_finalize, _efl_ui_win_legacy_efl_object_finalize),
EFL_UI_WIN_LEGACY_EXTRA_OPS
);
opsp = &ops;
return efl_class_functions_set(klass, opsp, ropsp);
}
static const Efl_Class_Description _efl_ui_win_legacy_class_desc = {
EO_VERSION,
"Efl.Ui.Win_Legacy",
EFL_CLASS_TYPE_REGULAR,
0,
_efl_ui_win_legacy_class_initializer,
_efl_ui_win_legacy_class_constructor,
NULL
};
EFL_DEFINE_CLASS(efl_ui_win_legacy_class_get, &_efl_ui_win_legacy_class_desc, EFL_UI_WIN_CLASS, EFL_UI_LEGACY_INTERFACE, NULL);
EAPI Evas_Object *
elm_win_add(Evas_Object *parent, const char *name, Efl_Ui_Win_Type type)
elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
{
const Efl_Class *klass = EFL_UI_WIN_LEGACY_CLASS;
@ -9011,7 +9108,7 @@ elm_win_fake_add(Ecore_Evas *ee)
return elm_legacy_add(EFL_UI_WIN_LEGACY_CLASS, NULL,
_fake_canvas_set(efl_added, ee),
efl_ui_win_name_set(efl_added, NULL),
efl_ui_win_type_set(efl_added, ELM_WIN_FAKE));
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_FAKE));
}
EAPI Evas_Object *
@ -9022,7 +9119,7 @@ elm_win_util_standard_add(const char *name, const char *title)
win = elm_legacy_add(EFL_UI_WIN_LEGACY_CLASS, NULL,
efl_text_set(efl_added, title),
efl_ui_win_name_set(efl_added, name),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC));
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC));
if (!win) return NULL;
_elm_win_standard_init(win);
@ -9037,11 +9134,244 @@ elm_win_util_dialog_add(Evas_Object *parent, const char *name, const char *title
win = elm_legacy_add(EFL_UI_WIN_LEGACY_CLASS, parent,
efl_text_set(efl_added, title),
efl_ui_win_name_set(efl_added, name),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_DIALOG_BASIC));
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_DIALOG_BASIC));
if (!win) return NULL;
_elm_win_standard_init(win);
return win;
}
#include "efl_ui_win_legacy.eo.c"
EAPI void
elm_win_keyboard_mode_set(Evas_Object *obj, Elm_Win_Keyboard_Mode mode)
{
efl_ui_win_keyboard_mode_set(obj, mode);
}
EAPI Elm_Win_Keyboard_Mode
elm_win_keyboard_mode_get(const Evas_Object *obj)
{
return efl_ui_win_keyboard_mode_get(obj);
}
EAPI void
elm_win_screen_constrain_set(Evas_Object *obj, Eina_Bool constrain)
{
efl_ui_win_screen_constrain_set(obj, constrain);
}
EAPI Eina_Bool
elm_win_screen_constrain_get(const Evas_Object *obj)
{
return efl_ui_win_screen_constrain_get(obj);
}
EAPI void
elm_win_prop_focus_skip_set(Evas_Object *obj, Eina_Bool skip)
{
efl_ui_win_prop_focus_skip_set(obj, skip);
}
EAPI void
elm_win_autohide_set(Evas_Object *obj, Eina_Bool autohide)
{
efl_ui_win_autohide_set(obj, autohide);
}
EAPI Eina_Bool
elm_win_autohide_get(const Evas_Object *obj)
{
return efl_ui_win_autohide_get(obj);
}
EAPI void
elm_win_exit_on_close_set(Evas_Object *obj, const Eina_Value *exit_code)
{
efl_ui_win_exit_on_close_set(obj, exit_code);
}
EAPI const Eina_Value *
elm_win_exit_on_close_get(const Evas_Object *obj)
{
return efl_ui_win_exit_on_close_get(obj);
}
EAPI void
elm_win_icon_object_set(Evas_Object *obj, Evas_Object *icon)
{
efl_ui_win_icon_object_set(obj, icon);
}
EAPI const Evas_Object *
elm_win_icon_object_get(const Evas_Object *obj)
{
return efl_ui_win_icon_object_get(obj);
}
EAPI void
elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified)
{
efl_ui_win_minimized_set(obj, iconified);
}
EAPI Eina_Bool
elm_win_iconified_get(const Evas_Object *obj)
{
return efl_ui_win_minimized_get(obj);
}
EAPI void
elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized)
{
efl_ui_win_maximized_set(obj, maximized);
}
EAPI Eina_Bool
elm_win_maximized_get(const Evas_Object *obj)
{
return efl_ui_win_maximized_get(obj);
}
EAPI void
elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen)
{
efl_ui_win_fullscreen_set(obj, fullscreen);
}
EAPI Eina_Bool
elm_win_fullscreen_get(const Evas_Object *obj)
{
return efl_ui_win_fullscreen_get(obj);
}
EAPI void
elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky)
{
efl_ui_win_sticky_set(obj, sticky);
}
EAPI Eina_Bool
elm_win_sticky_get(const Evas_Object *obj)
{
return efl_ui_win_sticky_get(obj);
}
EAPI void
elm_win_noblank_set(Evas_Object *obj, Eina_Bool noblank)
{
efl_ui_win_noblank_set(obj, noblank);
}
EAPI Eina_Bool
elm_win_noblank_get(const Evas_Object *obj)
{
return efl_ui_win_noblank_get(obj);
}
EAPI void
elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless)
{
efl_ui_win_borderless_set(obj, borderless);
}
EAPI Eina_Bool
elm_win_borderless_get(const Evas_Object *obj)
{
return efl_ui_win_borderless_get(obj);
}
EAPI void
elm_win_role_set(Evas_Object *obj, const char *role)
{
efl_ui_win_role_set(obj, role);
}
EAPI const char *
elm_win_role_get(const Evas_Object *obj)
{
return efl_ui_win_role_get(obj);
}
EAPI const char *
elm_win_name_get(const Evas_Object *obj)
{
return efl_ui_win_name_get(obj);
}
EAPI Elm_Win_Type
elm_win_type_get(const Evas_Object *obj)
{
return _efl_ui_win_type_to_elm_win_type(efl_ui_win_type_get(obj));
}
EAPI const char *
elm_win_accel_preference_get(const Evas_Object *obj)
{
return efl_ui_win_accel_preference_get(obj);
}
EAPI void
elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha)
{
efl_ui_win_alpha_set(obj, alpha);
}
EAPI Eina_Bool
elm_win_alpha_get(const Evas_Object *obj)
{
return efl_ui_win_alpha_get(obj);
}
EAPI void
elm_win_activate(Evas_Object *obj)
{
efl_ui_win_activate(obj);
}
EAPI void
elm_win_center(Evas_Object *obj, Eina_Bool h, Eina_Bool v)
{
efl_ui_win_center(obj, h, v);
}
EAPI Eina_Bool
elm_win_move_resize_start(Evas_Object *obj, Elm_Win_Move_Resize_Mode mode)
{
return efl_ui_win_move_resize_start(obj, mode);
}
EAPI void
elm_win_focus_highlight_animate_set(Efl_Ui_Win *obj, Eina_Bool animate)
{
efl_ui_win_focus_highlight_animate_set(obj, animate);
}
EAPI Eina_Bool
elm_win_focus_highlight_animate_get(const Efl_Ui_Win *obj)
{
return efl_ui_win_focus_highlight_animate_get(obj);
}
EAPI void
elm_win_focus_highlight_enabled_set(Efl_Ui_Win *obj, Eina_Bool enabled)
{
efl_ui_win_focus_highlight_enabled_set(obj, enabled);
}
EAPI Eina_Bool
elm_win_focus_highlight_enabled_get(const Efl_Ui_Win *obj)
{
return efl_ui_win_focus_highlight_enabled_get(obj);
}
EAPI Eina_Bool
elm_win_focus_highlight_style_set(Efl_Ui_Win *obj, const char *style)
{
return efl_ui_win_focus_highlight_style_set(obj, style);
}
EAPI const char *
elm_win_focus_highlight_style_get(const Efl_Ui_Win *obj)
{
return efl_ui_win_focus_highlight_style_get(obj);
}

View File

@ -10,7 +10,6 @@ enum Efl.Ui.Win_Type
Currently, only the X11 backed engines use them.
]]
legacy: efl_ui_win;
unknown = -1, [[Default, unknown, type]]
basic, [[A normal window. Indicates a normal, top-level window. Almost every
@ -38,6 +37,10 @@ enum Efl.Ui.Win_Type
a new E-Mail received.]]
combo, [[A window holding the contents of a combo box. Not usually used in
the EFL.]]
dnd,
inlined_image,
socket_image,
fake,
/* Some types have been removed from EO. Skipping to 17. */
naviframe_basic = 17 [[Used for naviframe style replacement with a back
button instead of a close button.
@ -52,7 +55,6 @@ enum Efl.Ui.Win_Keyboard_Mode
When the application window is being managed by Illume it may request
any of the following layouts for the virtual keyboard.
]]
legacy: efl_ui_win_keyboard;
unknown, [[Unknown keyboard state]]
off, [[Request to deactivate the keyboard]]
@ -75,7 +77,6 @@ enum Efl.Ui.Win_Keyboard_Mode
enum Efl.Ui.Win_Indicator_Mode
{
[[Defines the type indicator that can be shown]]
legacy: efl_ui_win_indicator;
off, [[Request to deactivate the indicator]]
bg_opaque, [[The indicator icon is opaque, as is the indicator background.
@ -93,7 +94,6 @@ enum Efl.Ui.Win_Keygrab_Mode
[[Define the keygrab modes of window. A window may send commands to the
Keyrouter according this mode, and perform different actions.]]
legacy: efl_ui_win_keygrab;
unknown = 0, [[Unknown keygrab mode]]
shared = (1 << 8), [[Get the grabbed-key together with the other client
windows]]
@ -110,7 +110,6 @@ enum Efl.Ui.Win_Keygrab_Mode
enum Efl.Ui.Win_Modal_Mode
{
[[Defines the mode of a modal window]]
legacy: efl_ui_win_modal;
none, [[The window is not modal window.]]
modal [[The window is modal window.]]
@ -119,7 +118,6 @@ enum Efl.Ui.Win_Modal_Mode
enum Efl.Ui.Win_Urgent_Mode
{
[[Defines the mode of a urgent window.]]
legacy: efl_ui_win_urgent;
none, [[The window is not a urgent window.]]
urgent [[The window is a urgent window.]]
@ -147,7 +145,6 @@ enum Efl.Ui.Win_Move_Resize_Mode
@since 1.19
]]
legacy: efl_ui_win_move_resize;
move = 1, [[Start moving window]]
top = (1 << 1), [[Start resizing window to the top]]
@ -163,7 +160,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
Efl.Ui.Widget_Focus_Manager, Efl.Ui.Focus.Manager_Window_Root
{
[[Efl UI window class]]
legacy_prefix: elm_win;
methods {
@property indicator_mode {
[[In some environments you may have an indicator that
@ -178,10 +174,8 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@since 1.18
]]
set {
legacy: null;
}
get {
legacy: null;
}
values {
type: Efl.Ui.Win_Indicator_Mode; [[The mype, one of @Efl.Ui.Win_Indicator_Mode.]]
@ -211,10 +205,8 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
allow_270: bool; [[Rotated 270 degrees CCW (i.e. 90 CW).]]
}
set {
legacy: null;
}
get {
legacy: null;
return: bool; [[Returns $false if available rotations were
not specified.]]
}
@ -222,10 +214,8 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@property wm_available_profiles {
[[Available profiles on a window.]]
set {
legacy: null;
}
get {
legacy: null;
}
values {
profiles: const(array<string>); [[A list of profiles.]]
@ -347,11 +337,9 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@property minimized {
set {
[[Set the minimized state of a window.]]
legacy: elm_win_iconified_set;
}
get {
[[Get the minimized state of a window.]]
legacy: elm_win_iconified_get;
}
values {
state: bool; [[If $true, the window is minimized.]]
@ -398,11 +386,9 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@property urgent {
set {
[[Set the urgent state of a window.]]
legacy: null;
}
get {
[[Get the urgent state of a window.]]
legacy: null;
}
values {
urgent: Efl.Ui.Win_Urgent_Mode;
@ -412,11 +398,9 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@property modal {
set {
[[Set the modal state of a window.]]
legacy: null;
}
get {
[[Get the modal state of a window.]]
legacy: null;
}
values {
modal: Efl.Ui.Win_Modal_Mode; [[The mode of a window, one of @Efl.Ui.Win_Modal_Mode.]]
@ -471,7 +455,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
]]
set {
[[Set the role of the window.]]
legacy: elm_win_role_set;
}
get {
[[Get the role of the window.
@ -480,7 +463,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
freed or modified. It will also be invalid if a new role
is set or if the window is destroyed.
]]
legacy: elm_win_role_get;
}
values {
role: string; [[The role to set.]]
@ -498,11 +480,9 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
]]
set {
[[Name can only be set before finalize.]]
legacy: null;
}
get {
[[ @since 1.18 ]]
legacy: elm_win_name_get;
}
values {
name: string @nullable; [[Window name]]
@ -520,11 +500,9 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
]]
set {
[[Type can on be set before finalize.]]
legacy: null;
}
get {
[[If the object is not window object, returns $unknown.]]
legacy: elm_win_type_get;
}
values {
type: Efl.Ui.Win_Type(Efl.Ui.Win_Type.unknown); [[Window type]]
@ -579,7 +557,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
accel: string; [[Acceleration]]
}
set {
legacy: null;
}
get {
[[This will return the value of "accel_preference" when the window
@ -730,7 +707,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@in grab_mode: Efl.Ui.Win_Keygrab_Mode; [[Describes how the key should
be grabbed, wrt. focus and stacking.]]
}
legacy: null;
}
keygrab_unset {
[[Unset keygrab value of the window
@ -745,7 +721,6 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
@in not_modifiers: Efl.Input.Modifier; [[A combination of modifier keys
that must not be present to trigger the event. Not supported yet.]]
}
legacy: null;
}
move_resize_start {
[[Start moving or resizing the window.
@ -855,10 +830,8 @@ class @beta Efl.Ui.Win extends Efl.Ui.Widget implements Efl.Canvas.Scene, Efl.Ac
The value will automatically change when the WM of this window changes its rotation. This rotation is automatically applied to all @Efl.Ui.Layout objects.
]]
set {
legacy: null;
}
get {
legacy: null;
}
values {
rotation : Efl.Orient; [[The rotation of the window]]

View File

@ -36,7 +36,7 @@ _efl_ui_win_inlined_inlined_parent_get(const Eo *obj EINA_UNUSED, Efl_Ui_Win_Inl
EOLIAN static Efl_Object *
_efl_ui_win_inlined_efl_object_finalize(Eo *obj, Efl_Ui_Win_Inlined_Data *pd EINA_UNUSED)
{
efl_ui_win_type_set(obj, ELM_WIN_INLINED_IMAGE);
efl_ui_win_type_set(obj, EFL_UI_WIN_TYPE_INLINED_IMAGE);
obj = efl_finalize(efl_super(obj, MY_CLASS));
return obj;

View File

@ -21,7 +21,7 @@ typedef struct
EOLIAN static Efl_Object *
_efl_ui_win_socket_efl_object_finalize(Eo *obj, Efl_Ui_Win_Socket_Data *pd EINA_UNUSED)
{
efl_ui_win_type_set(obj, ELM_WIN_SOCKET_IMAGE);
efl_ui_win_type_set(obj, EFL_UI_WIN_TYPE_SOCKET_IMAGE);
obj = efl_finalize(efl_super(obj, MY_CLASS));
return obj;

View File

@ -1,5 +1,3 @@
#include "efl_ui_win.eo.legacy.h"
/**
* @brief In some environments, like phones, you may have an indicator that
* shows battery status, reception, time etc. This is the indicator.
@ -50,59 +48,145 @@ typedef enum
ELM_ILLUME_COMMAND_CLOSE /** Closes the currently active window */
} Elm_Illume_Command;
typedef Efl_Ui_Win_Type Elm_Win_Type;
#define ELM_WIN_UNKNOWN EFL_UI_WIN_UNKNOWN
#define ELM_WIN_BASIC EFL_UI_WIN_BASIC
#define ELM_WIN_DIALOG_BASIC EFL_UI_WIN_DIALOG_BASIC
#define ELM_WIN_DESKTOP EFL_UI_WIN_DESKTOP
#define ELM_WIN_DOCK EFL_UI_WIN_DOCK
#define ELM_WIN_TOOLBAR EFL_UI_WIN_TOOLBAR
#define ELM_WIN_MENU EFL_UI_WIN_MENU
#define ELM_WIN_UTILITY EFL_UI_WIN_UTILITY
#define ELM_WIN_SPLASH EFL_UI_WIN_SPLASH
#define ELM_WIN_DROPDOWN_MENU EFL_UI_WIN_DROPDOWN_MENU
#define ELM_WIN_POPUP_MENU EFL_UI_WIN_POPUP_MENU
#define ELM_WIN_TOOLTIP EFL_UI_WIN_TOOLTIP
#define ELM_WIN_NOTIFICATION EFL_UI_WIN_NOTIFICATION
#define ELM_WIN_COMBO EFL_UI_WIN_COMBO
/**
* Used to indicate the window is a representation of an object being
* dragged across different windows, or even applications. Typically
* used with elm_win_override_set().
* @brief Defines the types of window that can be created
*
* These are hints set on a window so that a running Window Manager knows how
* the window should be handled and/or what kind of decorations it should have.
*
* Currently, only the X11 backed engines use them.
*
* @ingroup Elm_Win
*/
#define ELM_WIN_DND 13
#define ELM_WIN_INLINED_IMAGE 14
#define ELM_WIN_SOCKET_IMAGE 15
#define ELM_WIN_FAKE 16 /**< See elm_win_fake_add(). @since 1.13 */
#define ELM_WIN_NAVIFRAME_BASIC EFL_UI_WIN_NAVIFRAME_BASIC
typedef enum
{
ELM_WIN_UNKNOWN = -1 /* +1 */, /**< Default, unknown, type */
ELM_WIN_BASIC, /**< A normal window. Indicates a normal, top-level window.
* Almost every window will be created with this type. */
ELM_WIN_DIALOG_BASIC, /**< Used for simple dialog windows. */
ELM_WIN_DESKTOP, /**< For special desktop windows, like a background window
* holding desktop icons. */
ELM_WIN_DOCK, /**< The window is used as a dock or panel. Usually would be
* kept on top of any other window by the Window Manager. */
ELM_WIN_TOOLBAR, /**< The window is used to hold a floating toolbar, or
* similar. */
ELM_WIN_MENU, /**< Similar to @.toolbar. */
ELM_WIN_UTILITY, /**< A persistent utility window, like a toolbox or
* palette. */
ELM_WIN_SPLASH, /**< Splash window for a starting up application. */
ELM_WIN_DROPDOWN_MENU, /**< The window is a dropdown menu, as when an
* entry in a menubar is clicked. This hint exists
* for completion only, as the EFL way of
* implementing a menu would not normally use a
* separate window for its contents. */
ELM_WIN_POPUP_MENU, /**< Like @.dropdown_menu, but for the menu triggered
* by right-clicking an object. */
ELM_WIN_TOOLTIP, /**< The window is a tooltip. A short piece of explanatory
* text that typically appear after the mouse cursor
* hovers over an object for a while. Typically not very
* commonly used in the EFL. */
ELM_WIN_NOTIFICATION, /**< A notification window, like a warning about
* battery life or a new E-Mail received. */
ELM_WIN_COMBO, /**< A window holding the contents of a combo box. Not
* usually used in the EFL. */
typedef Efl_Ui_Win_Keyboard_Mode Elm_Win_Keyboard_Mode;
/**
* Used to indicate the window is a representation of an object being
* dragged across different windows, or even applications. Typically
* used with elm_win_override_set().
*/
ELM_WIN_DND,
ELM_WIN_INLINED_IMAGE,
ELM_WIN_SOCKET_IMAGE,
ELM_WIN_FAKE, /**< See elm_win_fake_add(). @since 1.13 */
#define ELM_WIN_KEYBOARD_UNKNOWN EFL_UI_WIN_KEYBOARD_UNKNOWN
#define ELM_WIN_KEYBOARD_OFF EFL_UI_WIN_KEYBOARD_OFF
#define ELM_WIN_KEYBOARD_ON EFL_UI_WIN_KEYBOARD_ON
#define ELM_WIN_KEYBOARD_ALPHA EFL_UI_WIN_KEYBOARD_ALPHA
#define ELM_WIN_KEYBOARD_NUMERIC EFL_UI_WIN_KEYBOARD_NUMERIC
#define ELM_WIN_KEYBOARD_PIN EFL_UI_WIN_KEYBOARD_PIN
#define ELM_WIN_KEYBOARD_PHONE_NUMBER EFL_UI_WIN_KEYBOARD_PHONE_NUMBER
#define ELM_WIN_KEYBOARD_HEX EFL_UI_WIN_KEYBOARD_HEX
#define ELM_WIN_KEYBOARD_TERMINAL EFL_UI_WIN_KEYBOARD_TERMINAL
#define ELM_WIN_KEYBOARD_PASSWORD EFL_UI_WIN_KEYBOARD_PASSWORD
#define ELM_WIN_KEYBOARD_IP EFL_UI_WIN_KEYBOARD_IP
#define ELM_WIN_KEYBOARD_HOST EFL_UI_WIN_KEYBOARD_HOST
#define ELM_WIN_KEYBOARD_FILE EFL_UI_WIN_KEYBOARD_FILE
#define ELM_WIN_KEYBOARD_URL EFL_UI_WIN_KEYBOARD_URL
#define ELM_WIN_KEYBOARD_KEYPAD EFL_UI_WIN_KEYBOARD_KEYPAD
#define ELM_WIN_KEYBOARD_J2ME EFL_UI_WIN_KEYBOARD_J2ME
ELM_WIN_NAVIFRAME_BASIC, /**< Used for naviframe style replacement with
* a back button instead of a close button.
*
* @since 1.19 */
} Elm_Win_Type;
typedef Efl_Ui_Win_Keygrab_Mode Elm_Win_Keygrab_Mode;
/**
* @brief The different layouts that can be requested for the virtual keyboard.
*
* When the application window is being managed by Illume it may request any of
* the following layouts for the virtual keyboard.
*
* @ingroup Elm_Win
*/
typedef enum
{
ELM_WIN_KEYBOARD_UNKNOWN = 0, /**< Unknown keyboard state */
ELM_WIN_KEYBOARD_OFF, /**< Request to deactivate the keyboard */
ELM_WIN_KEYBOARD_ON, /**< Enable keyboard with default layout */
ELM_WIN_KEYBOARD_ALPHA, /**< Alpha (a-z) keyboard layout */
ELM_WIN_KEYBOARD_NUMERIC, /**< Numeric keyboard layout */
ELM_WIN_KEYBOARD_PIN, /**< PIN keyboard layout */
ELM_WIN_KEYBOARD_PHONE_NUMBER, /**< Phone keyboard layout */
ELM_WIN_KEYBOARD_HEX, /**< Hexadecimal numeric keyboard layout */
ELM_WIN_KEYBOARD_TERMINAL, /**< Full (QWERTY) keyboard layout */
ELM_WIN_KEYBOARD_PASSWORD, /**< Password keyboard layout */
ELM_WIN_KEYBOARD_IP, /**< IP keyboard layout */
ELM_WIN_KEYBOARD_HOST, /**< Host keyboard layout */
ELM_WIN_KEYBOARD_FILE, /**< File keyboard layout */
ELM_WIN_KEYBOARD_URL, /**< URL keyboard layout */
ELM_WIN_KEYBOARD_KEYPAD, /**< Keypad layout */
ELM_WIN_KEYBOARD_J2ME /**< J2ME keyboard layout */
} Elm_Win_Keyboard_Mode;
/** Define the keygrab modes of window. A window may send commands to the
* Keyrouter according this mode, and perform different actions.
*
* @ingroup Elm_Win
*/
typedef enum
{
ELM_WIN_KEYGRAB_UNKNOWN = 0, /**< Unknown keygrab mode */
ELM_WIN_KEYGRAB_SHARED = 256 /* 1 >> 8 */, /**< Get the grabbed-key
* together with the other
* client windows */
ELM_WIN_KEYGRAB_TOPMOST = 512 /* 1 >> 9 */, /**< Get the grabbed-key only
* when window is top of the
* stack */
ELM_WIN_KEYGRAB_EXCLUSIVE = 1024 /* 1 >> 10 */, /**< Get the grabbed-key
* exclusively regardless
* of window's position */
ELM_WIN_KEYGRAB_OVERRIDE_EXCLUSIVE = 2048 /* 1 >> 11 */ /**< Get the grabbed-key exclusively
* regardless of window's position.
* This is overrided by grabs from the
* other client window */
} Elm_Win_Keygrab_Mode;
/**
* @brief Define the move or resize mode of window.
*
* The user can request the display server to start moving or resizing the
* window by combining these modes. However only limited combinations are
* allowed.
*
* Currently, only the following 9 combinations are permitted. More
* combinations may be added in future: 1. move, 2. top, 3. bottom, 4. left, 5.
* right, 6. top | left, 7. top | right, 8. bottom | left, 9. bottom | right.
*
* @since 1.19
*
* @ingroup Elm_Win
*/
typedef enum
{
ELM_WIN_MOVE_RESIZE_MOVE = 1, /**< Start moving window */
ELM_WIN_MOVE_RESIZE_TOP = 2 /* 1 >> 1 */, /**< Start resizing window to the
* top */
ELM_WIN_MOVE_RESIZE_BOTTOM = 4 /* 1 >> 2 */, /**< Start resizing window to
* the bottom */
ELM_WIN_MOVE_RESIZE_LEFT = 8 /* 1 >> 3 */, /**< Start resizing window to
* the left */
ELM_WIN_MOVE_RESIZE_RIGHT = 16 /* 1 >> 4 */ /**< Start resizing window to
* the right */
} Elm_Win_Move_Resize_Mode;
#define ELM_WIN_KEYGRAB_UNKNOWN EFL_UI_WIN_KEYGRAB_UNKNOWN
#define ELM_WIN_KEYGRAB_SHARED EFL_UI_WIN_KEYGRAB_SHARED
#define ELM_WIN_KEYGRAB_TOPMOST EFL_UI_WIN_KEYGRAB_TOPMOST
#define ELM_WIN_KEYGRAB_EXCLUSIVE EFL_UI_WIN_KEYGRAB_EXCLUSIVE
#define ELM_WIN_KEYGRAB_OVERRIDE_EXCLUSIVE EFL_UI_WIN_KEYGRAB_OVERRIDE_EXCLUSIVE
/**
* Adds a window object. If this is the first window created, pass NULL as
@ -1264,3 +1348,602 @@ EAPI void elm_win_wm_rotation_available_rotations_set(Elm_Win *obj, const int *r
* @ingroup Efl_Ui_Win
*/
EAPI Eina_Bool elm_win_wm_rotation_available_rotations_get(const Elm_Win *obj, int **rotations, unsigned int *count);
/**
* @brief Constrain the maximum width and height of a window to the width and
* height of the screen.
*
* When @c constrain is @c true, @c obj will never resize larger than the
* screen.
*
* @param[in] obj The object.
* @param[in] constrain @c true to restrict the window's maximum size.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_screen_constrain_set(Evas_Object *obj, Eina_Bool constrain);
/**
* @brief Get the constraints on the maximum width and height of a window
* relative to the width and height of the screen.
*
* When this function returns @c true, @c obj will never resize larger than the
* screen.
*
* @param[in] obj The object.
*
* @return @c true to restrict the window's maximum size.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_screen_constrain_get(const Evas_Object *obj);
/**
* @brief 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 not to 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 touchscreen, never for typing. This may have
* side-effects like making the window non-accessible in some cases unless the
* window is specially handled. Use this with care.
*
* @param[in] obj The object.
* @param[in] skip The skip flag state ($true if it is to be skipped).
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_prop_focus_skip_set(Evas_Object *obj, Eina_Bool skip);
/**
* @brief Window's autohide 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 this property is set to @c true, the window will be automatically
* hidden when this event occurs, after the signal is emitted. If this property
* is @c false nothing will happen, beyond the event emission.
*
* C applications can use this option along with the quit policy
* @c ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN which allows exiting EFL's main loop
* when all the windows are hidden.
*
* @note @c autodel and @c autohide are not mutually exclusive. The window will
* be deleted if both are set to @c true.
*
* @param[in] obj The object.
* @param[in] autohide If @c true, the window will automatically hide itself
* when closed.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_autohide_set(Evas_Object *obj, Eina_Bool autohide);
/**
* @brief Window's autohide 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 this property is set to @c true, the window will be automatically
* hidden when this event occurs, after the signal is emitted. If this property
* is @c false nothing will happen, beyond the event emission.
*
* C applications can use this option along with the quit policy
* @c ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN which allows exiting EFL's main loop
* when all the windows are hidden.
*
* @note @c autodel and @c autohide are not mutually exclusive. The window will
* be deleted if both are set to @c true.
*
* @param[in] obj The object.
*
* @return If @c true, the window will automatically hide itself when closed.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_autohide_get(const Evas_Object *obj);
/**
* @brief 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 place them in the
* window's icon. Note that only objects of type @ref Efl_Canvas_Image or
* @ref Efl_Ui_Image are allowed.
*
* @param[in] obj The object.
* @param[in] icon The image object to use for an icon.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_icon_object_set(Evas_Object *obj, Evas_Object *icon);
/**
* @brief Get the icon object used for the window.
*
* The object returns is the one marked by @ref elm_win_icon_object_set as the
* object to use for the window icon.
*
* @param[in] obj The object.
*
* @return The Evas image object to use for an icon.
*
* @ingroup Elm_Win_Group
*/
EAPI const Evas_Object *elm_win_icon_object_get(const Evas_Object *obj);
/**
* @brief Set the iconified state of a window.
*
* @param[in] obj The object.
* @param[in] iconified If @c true, the window is iconified.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified);
/**
* @brief Get the iconified state of a window.
*
* @param[in] obj The object.
*
* @return If @c true, the window is iconified.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_iconified_get(const Evas_Object *obj);
/**
* @brief Set the maximized state of a window.
*
* @param[in] obj The object.
* @param[in] maximized If @c true, the window is maximized.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized);
/**
* @brief Get the maximized state of a window.
*
* @param[in] obj The object.
*
* @return If @c true, the window is maximized.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_maximized_get(const Evas_Object *obj);
/**
* @brief Set the fullscreen state of a window.
*
* @param[in] obj The object.
* @param[in] fullscreen If @c true, the window is fullscreen.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen);
/**
* @brief Get the fullscreen state of a window.
*
* @param[in] obj The object.
*
* @return If @c true, the window is fullscreen.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_fullscreen_get(const Evas_Object *obj);
/**
* @brief Set the sticky state of the window.
*
* Hints the Window Manager that the window in @c obj should be left fixed at
* its position even when the virtual desktop it's on moves or changes.
*
* @param[in] obj The object.
* @param[in] sticky If @c true, the window's sticky state is enabled.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky);
/**
* @brief Get the sticky state of the window.
*
* @param[in] obj The object.
*
* @return If @c true, the window's sticky state is enabled.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_sticky_get(const Evas_Object *obj);
/**
* @brief Set the noblank property of a window.
*
* The "noblank" property is a way to request the display on which the window
* is shown does not blank, go to screensaver or otherwise hide or obscure the
* window. It is intended for uses such as media playback on a television where
* a user may not want to be interrupted by an idle screen. The noblank
* property may have no effect if the window is iconified/minimized or hidden.
*
* @param[in] obj The object.
* @param[in] noblank If @c true, the window is set to noblank.
*
* @since 1.11
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_noblank_set(Evas_Object *obj, Eina_Bool noblank);
/**
* @brief Get the noblank property of a window.
*
* @param[in] obj The object.
*
* @return If @c true, the window is set to noblank.
*
* @since 1.11
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_noblank_get(const Evas_Object *obj);
/**
* @brief Set the borderless state of a window.
*
* This function requests the Window Manager not to draw any decoration around
* the window.
*
* @param[in] obj The object.
* @param[in] borderless If @c true, the window is borderless.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless);
/**
* @brief Get the borderless state of a window.
*
* @param[in] obj The object.
*
* @return If @c true, the window is borderless.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_borderless_get(const Evas_Object *obj);
/**
* @brief The role of the window.
*
* It is a hint of how the Window Manager should handle it. Unlike
* @ref elm_win_type_get and @ref elm_win_name_get this can be changed at
* runtime.
*
* Set the role of the window.
*
* @param[in] obj The object.
* @param[in] role The role to set.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_role_set(Evas_Object *obj, const char *role);
/**
* @brief The role of the window.
*
* It is a hint of how the Window Manager should handle it. Unlike
* @ref elm_win_type_get and @ref elm_win_name_get this can be changed at
* runtime.
*
* 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.
*
* @param[in] obj The object.
*
* @return The role to set.
*
* @ingroup Elm_Win_Group
*/
EAPI const char *elm_win_role_get(const Evas_Object *obj);
/**
* @brief The window name.
*
* The meaning of name depends on the underlying windowing system.
*
* The window name is a construction property that can only be set at creation
* time, before finalize. In C this means inside @c efl_add().
*
* @note Once set, it cannot be modified afterwards.
*
* No description supplied.
*
* @param[in] obj The object.
*
* @return Window name
*
* @since 1.18
*
* @ingroup Elm_Win_Group
*/
EAPI const char *elm_win_name_get(const Evas_Object *obj);
/**
* @brief The type of the window.
*
* It is a hint of how the Window Manager should handle it.
*
* The window type is a construction property that can only be set at creation
* time, before finalize. In C this means inside @c efl_add().
*
* @note Once set, it cannot be modified afterward.
*
* If the object is not window object, returns @c unknown.
*
* @param[in] obj The object.
*
* @return Window type
*
* @ingroup Elm_Win_Group
*/
EAPI Elm_Win_Type elm_win_type_get(const Evas_Object *obj);
/**
* @brief The hardware acceleration preference for this window.
*
* This is a constructor function and can only be called before
* @ref Efl.Object.finalize.
*
* This property overrides the global EFL configuration option
* "accel_preference" for this single window, and accepts the same syntax.
*
* The @c accel string is a freeform C string that indicates what kind of
* acceleration is preferred. Here "acceleration" generally refers to rendering
* and the hardware with which the unit application renders GUIs. This may or
* may not be honored but a best attempt will be made. Known strings are as
* follows:
*
* "gl", "opengl" - try use OpenGL. "3d" - try to use a 3d acceleration unit.
* "hw", "hardware", "accel" - try any acceleration unit (best possible) "none"
* - use no acceleration but software instead (since 1.16)
*
* Since 1.14, it is also possible to specify some GL properties for the GL
* window surface. This allows applications to use GLView with depth, stencil
* and MSAA buffers with direct rendering. The new accel preference string
* format is thus "{HW Accel}[:depth{value}[:stencil{value}[:msaa{str}$]$]$]".
*
* Accepted values for depth are for instance "depth", "depth16", "depth24".
* Accepted values for stencil are "stencil", "stencil1", "stencil8". For MSAA,
* only predefined strings are accepted: "msaa", "msaa_low", "msaa_mid" and
* "msaa_high". The selected configuration is not guaranteed and is only valid
* in case of GL acceleration. Only the base acceleration string will be saved
* (e.g. "gl" or "hw").
*
* Full examples include:
*
* "gl", - try to use OpenGL "hw:depth:stencil", - use HW acceleration with
* default depth and stencil buffers "opengl:depth24:stencil8:msaa_mid" - use
* OpenGL with 24-bit depth, 8-bit stencil and a medium number of MSAA samples
* in the backbuffer.
*
* Note that this option may be overriden by environment variables or the
* configuration option "accel_preference_override".
*
* This will return the value of "accel_preference" when the window was
* created.
*
* @param[in] obj The object.
*
* @return Acceleration
*
* @since 1.18
*
* @ingroup Elm_Win_Group
*/
EAPI const char *elm_win_accel_preference_get(const Evas_Object *obj);
/**
* @brief Set the alpha channel state of a window.
*
* If @c alpha is 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, for example a
* system using a compositing manager.
*
* @note Alpha window can be enabled automatically by window theme style's
* property. If "alpha" data.item is "1" or "true" in window style(eg.
* elm/win/base/default), the window is switched to alpha automatically without
* the explicit api call.
*
* @param[in] obj The object.
* @param[in] alpha @c true if the window alpha channel is enabled, @c false
* otherwise.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha);
/**
* @brief Get the alpha channel state of a window.
*
* @param[in] obj The object.
*
* @return @c true if the window alpha channel is enabled, @c false otherwise.
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_alpha_get(const Evas_Object *obj);
/**
* @brief Activate a window object.
*
* This function sends a request to the Window Manager to activate the window
* pointed by @c 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 afterwards.
* @param[in] obj The object.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_activate(Evas_Object *obj);
/**
* @brief Center a window on the screen.
*
* This function centers window @c obj horizontally and/or vertically based on
* the values of @c h and @c v.
*
* @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 centered
* afterwards.
*
* @param[in] obj The object.
* @param[in] h If @c true, center horizontally. If @c false, do not change
* horizontal location.
* @param[in] v If @c true, center vertically. If @c false, do not change
* vertical location.
*
* @ingroup Elm_Win_Group
*/
EAPI void elm_win_center(Evas_Object *obj, Eina_Bool h, Eina_Bool v);
/**
* @brief Start moving or resizing the window.
*
* The user can request the display server to start moving or resizing the
* window by combining modes from @ref Efl_Ui_Win_Move_Resize_Mode. This API
* can only be called if none of the following conditions is true:
*
* 1. Called in the absence of a pointer down event, 2. Called more than once
* before a pointer up event, 3. Called when the window is already being
* resized or moved, 4. Called with an unsupported combination of modes.
*
* Right usage: 1. Pointer (mouse or touch) down event, 2.
* @ref elm_win_move_resize_start called only once with a supported mode, 3.
* Pointer (mouse or touch) up event.
*
* If a pointer up event occurs after calling the function, it automatically
* ends the window move and resize operation.
*
* Currently, only the following 9 combinations are allowed, and possibly more
* combinations may be added in the future: 1. @ref ELM_WIN_MOVE_RESIZE_MOVE
* 2. @ref ELM_WIN_MOVE_RESIZE_TOP 3. @ref ELM_WIN_MOVE_RESIZE_BOTTOM 4.
* @ref ELM_WIN_MOVE_RESIZE_LEFT 5. @ref ELM_WIN_MOVE_RESIZE_RIGHT 6.
* @ref ELM_WIN_MOVE_RESIZE_TOP | @ref ELM_WIN_MOVE_RESIZE_LEFT 7.
* @ref ELM_WIN_MOVE_RESIZE_TOP | @ref ELM_WIN_MOVE_RESIZE_RIGHT 8.
* @ref ELM_WIN_MOVE_RESIZE_BOTTOM | @ref ELM_WIN_MOVE_RESIZE_LEFT 9.
* @ref ELM_WIN_MOVE_RESIZE_BOTTOM | @ref ELM_WIN_MOVE_RESIZE_RIGHT
*
* In particular move and resize cannot happen simultaneously.
*
* @note the result of this API can only guarantee that the request has been
* forwarded to the server, but there is no guarantee that the request can be
* processed by the display server.
*
* @param[in] obj The object.
* @param[in] mode The requested move or resize mode.
*
* @return @c true if the request was successfully sent to the display server,
* @c false in case of error.
*
* @since 1.19
*
* @ingroup Elm_Win_Group
*/
EAPI Eina_Bool elm_win_move_resize_start(Evas_Object *obj, Elm_Win_Move_Resize_Mode mode);
/**
* @brief 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.
*
* @param[in] animate The enabled value for the highlight animation.
*
* @ingroup Elm_Win
*/
EAPI void elm_win_focus_highlight_animate_set(Elm_Win *obj, Eina_Bool animate);
/**
* @brief Get the animate value of the focus highlight for this window.
*
* @return The enabled value for the highlight animation.
*
* @ingroup Elm_Win
*/
EAPI Eina_Bool elm_win_focus_highlight_animate_get(const Elm_Win *obj);
/**
* @brief 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.
*
* @param[in] enabled The enabled value for the highlight.
*
* @ingroup Elm_Win
*/
EAPI void elm_win_focus_highlight_enabled_set(Elm_Win *obj, Eina_Bool enabled);
/**
* @brief Get the enabled value of the focus highlight for this window.
*
* @return The enabled value for the highlight.
*
* @ingroup Elm_Win
*/
EAPI Eina_Bool elm_win_focus_highlight_enabled_get(const Elm_Win *obj);
/**
* @brief 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 @c style is NULL, the default will be used.
*
* @param[in] style The style or @c null if none.
*
* @ingroup Elm_Win
*/
EAPI Eina_Bool elm_win_focus_highlight_style_set(Elm_Win *obj, const char *style);
/**
* @brief Get the style set for the focus highlight object.
*
* @return The style or @c null if none.
*
* @ingroup Elm_Win
*/
EAPI const char *elm_win_focus_highlight_style_get(const Elm_Win *obj);

View File

@ -13,7 +13,7 @@ EFL_START_TEST(efl_ui_image_test_icon)
Eina_Bool ok;
const char *icon_name;
win = win_add(NULL, "image", EFL_UI_WIN_BASIC);
win = win_add(NULL, "image", EFL_UI_WIN_TYPE_BASIC);
image = efl_add(EFL_UI_IMAGE_CLASS, win);
efl_gfx_entity_visible_set(image, EINA_TRUE);

View File

@ -13,7 +13,7 @@ EFL_START_TEST(efl_ui_test_image_zoomable_icon)
Eina_Bool ok;
const char *icon_name;
win = win_add(NULL, "photocam", EFL_UI_WIN_BASIC);
win = win_add(NULL, "photocam", EFL_UI_WIN_TYPE_BASIC);
img_zoomable = efl_add(EFL_UI_IMAGE_ZOOMABLE_CLASS, win);
efl_gfx_entity_visible_set(img_zoomable, EINA_TRUE);

View File

@ -28,7 +28,7 @@ EFL_START_TEST(efl_ui_layout_test_property_bind)
const char *part_text;
const char text_value[] = "A random string for elm_layout_property_bind test";
win = win_add(NULL, "layout", EFL_UI_WIN_BASIC);
win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC);
ly = efl_add(EFL_UI_LAYOUT_CLASS, win);
snprintf(buf, sizeof(buf), "%s/objects/test.edj", ELM_TEST_DATA_DIR);
@ -58,7 +58,7 @@ EFL_START_TEST(efl_ui_layout_test_layout_api_size_min)
Evas_Object *win;
Eina_Size2D res;
win = win_add(NULL, "layout", EFL_UI_WIN_BASIC);
win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC);
/* this is just a test to not get segfaults in those calls */
Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win);
res = efl_layout_calc_size_min(layout, EINA_SIZE2D(2, 2));
@ -71,7 +71,7 @@ EFL_START_TEST(efl_ui_layout_test_layout_api_update_hints)
{
Evas_Object *win;
win = win_add(NULL, "layout", EFL_UI_WIN_BASIC);
win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC);
/* this is just a test to not get segfaults in those calls */
Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win);
efl_layout_calc_auto_update_hints_set(layout, EINA_TRUE);
@ -83,7 +83,7 @@ EFL_START_TEST(efl_ui_layout_test_layout_force)
{
Evas_Object *win;
win = win_add(NULL, "layout", EFL_UI_WIN_BASIC);
win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC);
/* this is just a test to not get segfaults in those calls */
Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win);
efl_layout_calc_force(layout);
@ -95,7 +95,7 @@ EFL_START_TEST(efl_ui_layout_test_layout_theme)
Evas_Object *win;
const char *klass, *group, *style;
win = win_add(NULL, "layout", EFL_UI_WIN_BASIC);
win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC);
Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win,
efl_ui_layout_theme_set(efl_added, "win", "background", NULL)
);

View File

@ -209,7 +209,7 @@ static void
layout_setup()
{
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC));
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC));
layout = efl_add(EFL_UI_RELATIVE_LAYOUT_CLASS, win,
efl_gfx_entity_size_set(efl_added, EINA_SIZE2D(200, 200)));

View File

@ -18,7 +18,7 @@ static void
_small_ui(State *s)
{
s->win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC),
efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC),
efl_text_set(efl_added, "Hello World"));
s->ic = efl_add(EFL_UI_IMAGE_CLASS, s->win,

View File

@ -181,7 +181,7 @@ _elm_suite_win_create()
if (legacy_mode)
win = elm_win_add(NULL, "elm_suite", ELM_WIN_BASIC);
else
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(), efl_ui_win_type_set(efl_added, EFL_UI_WIN_BASIC));
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(), efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC));
if (!buffer) return win;
loop = efl_add(efl_loop_realized_class_get(), win);
timer = efl_add(EFL_LOOP_TIMER_CLASS, loop,