forked from enlightenment/terminology
options_elm: add scale slider
This commit is contained in:
parent
b8af21128e
commit
2b43b9bab2
|
@ -15,10 +15,37 @@ launch_elm_config(void *_data EINA_UNUSED,
|
||||||
ecore_exe_free(exe);
|
ecore_exe_free(exe);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_scale_round(void *data EINA_UNUSED,
|
||||||
|
Evas_Object *obj,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
|
{
|
||||||
|
double val = elm_slider_value_get(obj);
|
||||||
|
double v;
|
||||||
|
|
||||||
|
v = ((double)((int)(val * 10.0))) / 10.0;
|
||||||
|
if (v != val) elm_slider_value_set(obj, v);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_scale_change(void *data EINA_UNUSED,
|
||||||
|
Evas_Object *obj,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
|
{
|
||||||
|
double scale = elm_config_scale_get();
|
||||||
|
double val = elm_slider_value_get(obj);
|
||||||
|
|
||||||
|
if (scale == val)
|
||||||
|
return;
|
||||||
|
elm_config_scale_set(val);
|
||||||
|
elm_config_all_flush();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
options_elm(Evas_Object *opbox, Evas_Object *_term EINA_UNUSED)
|
options_elm(Evas_Object *opbox, Evas_Object *_term EINA_UNUSED)
|
||||||
{
|
{
|
||||||
Evas_Object *o, *fr, *bx, *bt, *en;
|
Evas_Object *o, *fr, *bx, *bt, *en, *lbl, *sl, *sp;
|
||||||
|
const char *txt;
|
||||||
|
|
||||||
fr = o = elm_frame_add(opbox);
|
fr = o = elm_frame_add(opbox);
|
||||||
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
@ -48,4 +75,47 @@ options_elm(Evas_Object *opbox, Evas_Object *_term EINA_UNUSED)
|
||||||
elm_layout_text_set(bt, NULL, _("Launch elementary_config"));
|
elm_layout_text_set(bt, NULL, _("Launch elementary_config"));
|
||||||
elm_box_pack_end(bx, bt);
|
elm_box_pack_end(bx, bt);
|
||||||
evas_object_show(bt);
|
evas_object_show(bt);
|
||||||
|
|
||||||
|
sp = elm_separator_add(opbox);
|
||||||
|
evas_object_size_hint_weight_set(sp, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5);
|
||||||
|
elm_separator_horizontal_set(sp, EINA_TRUE);
|
||||||
|
elm_box_pack_end(bx, sp);
|
||||||
|
evas_object_show(sp);
|
||||||
|
|
||||||
|
lbl = elm_label_add(opbox);
|
||||||
|
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
|
||||||
|
txt = eina_stringshare_printf("<hilight>%s</>",_("Scale"));
|
||||||
|
elm_object_text_set(lbl, txt);
|
||||||
|
eina_stringshare_del(txt);
|
||||||
|
elm_box_pack_end(bx, lbl);
|
||||||
|
evas_object_show(lbl);
|
||||||
|
|
||||||
|
sl = elm_slider_add(opbox);
|
||||||
|
evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, 0.5);
|
||||||
|
elm_slider_span_size_set(sl, 120);
|
||||||
|
elm_slider_unit_format_set(sl, "%1.2f");
|
||||||
|
elm_slider_indicator_format_set(sl, "%1.2f");
|
||||||
|
elm_slider_min_max_set(sl, 0.25, 5.0);
|
||||||
|
elm_slider_value_set(sl, elm_config_scale_get());
|
||||||
|
elm_box_pack_end(bx, sl);
|
||||||
|
evas_object_show(sl);
|
||||||
|
evas_object_smart_callback_add(sl, "changed", _scale_round, NULL);
|
||||||
|
evas_object_smart_callback_add(sl, "delay,changed", _scale_change, NULL);
|
||||||
|
|
||||||
|
lbl = elm_label_add(opbox);
|
||||||
|
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_align_set(lbl, 0.0, 0.0);
|
||||||
|
elm_object_text_set(lbl, _("Select prefered size so that this text is readable."));
|
||||||
|
elm_box_pack_end(bx, lbl);
|
||||||
|
evas_object_show(lbl);
|
||||||
|
|
||||||
|
lbl = elm_label_add(opbox);
|
||||||
|
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_align_set(lbl, 0.0, 0.0);
|
||||||
|
elm_object_text_set(lbl, _("The scale configuration can also be changed through <hilight>elementary</hilight>'s configuration panel."));
|
||||||
|
elm_box_pack_end(bx, lbl);
|
||||||
|
evas_object_show(lbl);
|
||||||
}
|
}
|
||||||
|
|
|
@ -322,14 +322,14 @@ win_scale_wizard(Evas_Object *win, Term *term)
|
||||||
lbl = elm_label_add(win);
|
lbl = elm_label_add(win);
|
||||||
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
||||||
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
|
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
|
||||||
elm_object_text_set(lbl, _("Select prefered size so that is text is readable"));
|
elm_object_text_set(lbl, _("Select prefered size so that this text is readable."));
|
||||||
elm_box_pack_end(bx, lbl);
|
elm_box_pack_end(bx, lbl);
|
||||||
evas_object_show(lbl);
|
evas_object_show(lbl);
|
||||||
|
|
||||||
lbl = elm_label_add(win);
|
lbl = elm_label_add(win);
|
||||||
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0.0);
|
||||||
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
|
evas_object_size_hint_align_set(lbl, EVAS_HINT_FILL, 0.5);
|
||||||
elm_object_text_set(lbl, _("The scale configuration can be changed in the Settings (right click on the terminal) → Toolkit, or by starting the command <keyword>elementary_config</keyword>"));
|
elm_object_text_set(lbl, _("The scale configuration can be changed in the Settings (right click on the terminal) → Toolkit, or by starting the command <keyword>elementary_config</keyword>."));
|
||||||
elm_box_pack_end(bx, lbl);
|
elm_box_pack_end(bx, lbl);
|
||||||
evas_object_show(lbl);
|
evas_object_show(lbl);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue