use layout api in controls/options

This commit is contained in:
Boris Faure 2019-05-26 19:25:44 +02:00
parent b963622c5d
commit fff087bead
4 changed files with 46 additions and 56 deletions

View File

@ -61,10 +61,10 @@ _cb_hidden(void *data,
evas_object_del(frame);
o = edje_object_part_swallow_get(ctx->base, "terminology.controls");
o = elm_layout_content_get(ctx->base, "terminology.controls");
if (o)
{
edje_object_part_unswallow(ctx->base, o);
elm_layout_content_unset(ctx->base, "terminology.controls");
}
elm_cache_all_flush();
@ -286,7 +286,7 @@ controls_hide(Controls_Ctx *ctx, Eina_Bool call_cb)
if (ctx->term)
{
evas_object_event_callback_del(ctx->term, EVAS_CALLBACK_DEL, _cb_saved_del);
edje_object_signal_emit(ctx->base, "controls,hide", "terminology");
elm_layout_signal_emit(ctx->base, "controls,hide", "terminology");
}
if (ctx->over)
@ -311,7 +311,7 @@ controls_show(Evas_Object *win, Evas_Object *base, Evas_Object *bg,
Controls_Ctx *ctx;
if (eina_hash_find(controls, &win) ||
edje_object_part_swallow_get(base, "terminology.controls"))
elm_layout_content_get(base, "terminology.controls"))
{
donecb(donedata);
return;
@ -418,16 +418,16 @@ controls_show(Evas_Object *win, Evas_Object *base, Evas_Object *bg,
evas_object_smart_callback_add(win, "selection,off", _cb_sel_off,
ctx);
edje_object_part_swallow(base, "terminology.controls", ctx->frame);
elm_layout_content_set(base, "terminology.controls", ctx->frame);
evas_object_show(ctx->frame);
ctx->over = o = evas_object_rectangle_add(evas_object_evas_get(win));
evas_object_color_set(o, 0, 0, 0, 0);
edje_object_part_swallow(base, "terminology.dismiss", o);
elm_layout_content_set(base, "terminology.dismiss", o);
evas_object_show(o);
evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN,
_cb_mouse_down, ctx);
edje_object_signal_emit(base, "controls,show", "terminology");
elm_layout_signal_emit(base, "controls,show", "terminology");
elm_object_focus_set(ctx->frame, EINA_TRUE);
evas_object_event_callback_add(ctx->win, EVAS_CALLBACK_DEL, _cb_saved_del, ctx);
evas_object_event_callback_add(ctx->term, EVAS_CALLBACK_DEL, _cb_saved_del, ctx);

View File

@ -61,7 +61,7 @@ _cb_op(void *data,
ctx->mode = mode;
edje_object_signal_emit(ctx->base, "optdetails,hide", "terminology");
elm_layout_signal_emit(ctx->base, "optdetails,hide", "terminology");
}
static void
@ -96,7 +96,7 @@ _cb_opdt_hide_done(void *data,
case OPTION_ELM: options_elm(ctx->opbox, ctx->term); break;
case OPTIONS_MODE_NB: assert(0 && "should not occur");
}
edje_object_signal_emit(ctx->base, "optdetails,show", "terminology");
elm_layout_signal_emit(ctx->base, "optdetails,show", "terminology");
}
static void
@ -107,9 +107,8 @@ _cb_opdt_hide_done2(void *data,
{
Options_Ctx *ctx = data;
edje_object_signal_callback_del(ctx->base, "optdetails,hide,done",
"terminology",
_cb_opdt_hide_done2);
elm_layout_signal_callback_del(ctx->base, "optdetails,hide,done",
"terminology", _cb_opdt_hide_done2);
evas_object_del(ctx->opbox);
evas_object_del(ctx->frame);
@ -122,17 +121,15 @@ _cb_opdt_hide_done2(void *data,
static void
options_hide(Options_Ctx *ctx)
{
edje_object_part_swallow(ctx->base, "terminology.optdetails", ctx->opbox);
edje_object_part_swallow(ctx->base, "terminology.options", ctx->frame);
edje_object_signal_emit(ctx->base, "optdetails,show", "terminology");
edje_object_signal_emit(ctx->base, "options,show", "terminology");
elm_layout_content_set(ctx->base, "terminology.optdetails", ctx->opbox);
elm_layout_content_set(ctx->base, "terminology.options", ctx->frame);
elm_layout_signal_emit(ctx->base, "optdetails,show", "terminology");
elm_layout_signal_emit(ctx->base, "options,show", "terminology");
edje_object_signal_callback_del(ctx->base, "optdetails,hide,done",
"terminology",
_cb_opdt_hide_done);
edje_object_signal_callback_add(ctx->base, "optdetails,hide,done",
"terminology",
_cb_opdt_hide_done2, ctx);
elm_layout_signal_callback_del(ctx->base, "optdetails,hide,done",
"terminology", _cb_opdt_hide_done);
elm_layout_signal_callback_add(ctx->base, "optdetails,hide,done",
"terminology", _cb_opdt_hide_done2, ctx);
elm_object_focus_set(ctx->frame, EINA_FALSE);
elm_object_focus_set(ctx->opbox, EINA_FALSE);
elm_object_focus_set(ctx->toolbar, EINA_FALSE);
@ -140,8 +137,8 @@ options_hide(Options_Ctx *ctx)
evas_object_del(ctx->over);
ctx->over = NULL;
edje_object_signal_emit(ctx->base, "options,hide", "terminology");
edje_object_signal_emit(ctx->base, "optdetails,hide", "terminology");
elm_layout_signal_emit(ctx->base, "options,hide", "terminology");
elm_layout_signal_emit(ctx->base, "optdetails,hide", "terminology");
}
static void
@ -186,7 +183,7 @@ options_show(Evas_Object *win, Evas_Object *base, Evas_Object *bg, Evas_Object *
ctx->opbox = o = elm_box_add(win);
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL);
edje_object_part_swallow(ctx->base, "terminology.optdetails", o);
elm_layout_content_set(ctx->base, "terminology.optdetails", o);
evas_object_show(o);
ctx->frame = o = elm_frame_add(win);
@ -245,19 +242,18 @@ options_show(Evas_Object *win, Evas_Object *base, Evas_Object *bg, Evas_Object *
evas_object_show(o);
evas_object_smart_callback_add(o, "changed", _cb_op_tmp_chg, ctx);
edje_object_part_swallow(base, "terminology.options", ctx->frame);
elm_layout_content_set(base, "terminology.options", ctx->frame);
evas_object_show(ctx->frame);
edje_object_signal_callback_add(ctx->base, "optdetails,hide,done",
"terminology",
_cb_opdt_hide_done, ctx);
elm_layout_signal_callback_add(ctx->base, "optdetails,hide,done",
"terminology", _cb_opdt_hide_done, ctx);
ctx->over = o = evas_object_rectangle_add(evas_object_evas_get(win));
evas_object_color_set(o, 0, 0, 0, 0);
edje_object_part_swallow(ctx->base, "terminology.dismiss", o);
elm_layout_content_set(ctx->base, "terminology.dismiss", o);
evas_object_show(o);
evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN,
_cb_mouse_down, ctx);
edje_object_signal_emit(ctx->base, "options,show", "terminology");
elm_layout_signal_emit(ctx->base, "options,show", "terminology");
elm_object_focus_set(ctx->toolbar, EINA_TRUE);
}

View File

@ -224,16 +224,15 @@ _add_cursors_option(Evas_Object *bx,
elm_object_text_set(rd, _("Blinking Block"));
elm_radio_state_value_set(rd, 1);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor");
theme_apply_elm(layout, ctx->config, "terminology/cursor");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
/* Steady Block */
@ -244,16 +243,15 @@ _add_cursors_option(Evas_Object *bx,
elm_radio_state_value_set(rd, 2);
elm_radio_group_add(rd, rdg);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor");
theme_apply_elm(layout, ctx->config, "terminology/cursor");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in,noblink", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in,noblink", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
/* Blinking Underline */
@ -264,16 +262,15 @@ _add_cursors_option(Evas_Object *bx,
elm_radio_state_value_set(rd, 3);
elm_radio_group_add(rd, rdg);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor_underline");
theme_apply_elm(layout, ctx->config, "terminology/cursor_underline");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
/* Steady Underline */
@ -284,16 +281,15 @@ _add_cursors_option(Evas_Object *bx,
elm_radio_state_value_set(rd, 4);
elm_radio_group_add(rd, rdg);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor_underline");
theme_apply_elm(layout, ctx->config, "terminology/cursor_underline");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in,noblink", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in,noblink", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
/* Blinking Bar */
@ -304,16 +300,15 @@ _add_cursors_option(Evas_Object *bx,
elm_radio_state_value_set(rd, 5);
elm_radio_group_add(rd, rdg);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor_bar");
theme_apply_elm(layout, ctx->config, "terminology/cursor_bar");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
/* Steady Bar */
@ -324,16 +319,15 @@ _add_cursors_option(Evas_Object *bx,
elm_radio_state_value_set(rd, 6);
elm_radio_group_add(rd, rdg);
layout = elm_layout_add(rd);
oe = elm_layout_edje_get(layout);
theme_apply(oe, ctx->config, "terminology/cursor_bar");
theme_apply_elm(layout, ctx->config, "terminology/cursor_bar");
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_image_resizable_set(layout, EINA_FALSE, EINA_FALSE);
elm_object_part_content_set(rd, "icon", layout);
elm_box_pack_end(bx, rd);
evas_object_show(rd);
edje_object_signal_emit(oe, "focus,out", "terminology");
edje_object_signal_emit(oe, "focus,in,noblink", "terminology");
elm_layout_signal_emit(layout, "focus,out", "terminology");
elm_layout_signal_emit(layout, "focus,in,noblink", "terminology");
evas_object_smart_callback_add(rd, "changed", _cursors_changed_cb, ctx);
elm_radio_value_set(rdg,

View File

@ -263,7 +263,7 @@ _on_shortcut_add(void *data,
ctx->layout = elm_layout_add(bt);
evas_object_data_set(ctx->layout, "ctx", ctx);
oe = elm_layout_edje_get(ctx->layout);
theme_apply(oe, ctx->config, "terminology/keybinding");
theme_apply_elm(ctx->layout, ctx->config, "terminology/keybinding");
theme_auto_reload_enable(oe);
elm_layout_text_set(ctx->layout, "label", _("Please press key sequence"));
evas_object_show(ctx->layout);