diff --git a/legacy/elementary/src/bin/config.c b/legacy/elementary/src/bin/config.c index 90bd31a592..9c3946b5e5 100644 --- a/legacy/elementary/src/bin/config.c +++ b/legacy/elementary/src/bin/config.c @@ -55,6 +55,576 @@ fs_change(void *data, Evas_Object *obj, void *event_info) elm_finger_size_all_set(val); } +static void +_status_basic(Evas_Object *win, Evas_Object *bx0) +{ + Evas_Object *lb, *fr; + + fr = elm_frame_add(win); + evas_object_size_hint_weight_set(fr, 1.0, 1.0); + elm_frame_label_set(fr, "Information"); + elm_box_pack_end(bx0, fr); + evas_object_show(fr); + + lb = elm_label_add(win); + elm_label_label_set(lb, + "Applying configuration change" + ); + elm_frame_content_set(fr, lb); + evas_object_show(lb); +} + +static void +_status_config(Evas_Object *win, Evas_Object *bx0) +{ + Evas_Object *lb, *pd, *bx2, *fr, *sl, *sp; + + fr = elm_frame_add(win); + evas_object_size_hint_weight_set(fr, 1.0, 1.0); + evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_frame_label_set(fr, "Sizing"); + elm_box_pack_end(bx0, fr); + evas_object_show(fr); + + bx2 = elm_box_add(win); + evas_object_size_hint_weight_set(bx2, 1.0, 0.0); + evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, 0.5); + + pd = elm_frame_add(win); + evas_object_size_hint_weight_set(pd, 1.0, 0.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); + elm_object_style_set(pd, "pad_medium"); + elm_box_pack_end(bx2, pd); + evas_object_show(pd); + + lb = elm_label_add(win); + evas_object_size_hint_weight_set(lb, 1.0, 0.0); + evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); + elm_label_label_set(lb,"Scale"); + elm_frame_content_set(pd, lb); + evas_object_show(lb); + + sl = elm_slider_add(win); + evas_object_size_hint_weight_set(sl, 1.0, 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_scale_get()); + elm_box_pack_end(bx2, sl); + evas_object_show(sl); + + evas_object_smart_callback_add(sl, "changed", sc_round, NULL); + evas_object_smart_callback_add(sl, "delay,changed", sc_change, NULL); + + sp = elm_separator_add(win); + elm_separator_horizontal_set(sp, 1); + evas_object_size_hint_weight_set(sp, 1.0, 0.0); + evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5); + elm_box_pack_end(bx2, sp); + evas_object_show(sp); + + pd = elm_frame_add(win); + evas_object_size_hint_weight_set(pd, 1.0, 0.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); + elm_object_style_set(pd, "pad_medium"); + elm_box_pack_end(bx2, pd); + evas_object_show(pd); + + lb = elm_label_add(win); + evas_object_size_hint_weight_set(lb, 1.0, 0.0); + evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); + elm_label_label_set(lb, "Finger Size
"); + elm_frame_content_set(pd, lb); + evas_object_show(lb); + + sl = elm_slider_add(win); + evas_object_size_hint_weight_set(sl, 1.0, 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.0f"); + elm_slider_indicator_format_set(sl, "%1.0f"); + elm_slider_min_max_set(sl, 5, 200); + elm_slider_value_set(sl, elm_finger_size_get()); + elm_box_pack_end(bx2, sl); + evas_object_show(sl); + + evas_object_smart_callback_add(sl, "changed", fs_round, NULL); + evas_object_smart_callback_add(sl, "delay,changed", fs_change, NULL); + + // FIXME: add theme selector (basic mode and advanced for fallbacks) + // FIXME: save config + // FIXME: profile selector / creator etc. + // + elm_frame_content_set(fr, bx2); + evas_object_show(bx2); +} + +static void +_flip_to(Evas_Object *win, const char *name) +{ + Evas_Object *wid, *fl, *holder, *front, *back; + int front_vis; + wid = evas_object_data_get(win, name); + fl = evas_object_data_get(win, "flip"); + holder = evas_object_data_get(win, "holder"); + front_vis = elm_flip_front_get(fl); + if (front_vis) + { + front = elm_flip_content_front_get(fl); + back = elm_flip_content_back_get(fl); + elm_table_pack(holder, back, 0, 0, 1, 1); + evas_object_hide(back); +// elm_table_unpack(holder, wid); // this should NOT be needed - but in evas_table/elm_table + elm_flip_content_back_set(fl, wid); + } + else + { + front = elm_flip_content_front_get(fl); + back = elm_flip_content_back_get(fl); + elm_table_pack(holder, front, 0, 0, 1, 1); + evas_object_hide(front); +// elm_table_unpack(holder, wid); // this should NOT be needed - but in evas_table/elm_table + elm_flip_content_front_set(fl, wid); + } + + evas_object_show(wid); + elm_flip_go(fl, ELM_FLIP_ROTATE_Y_CENTER_AXIS); +} + +static void +_cf_sizing(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "sizing"); +} + +static void +_cf_themes(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "themes"); +} + +static void +_cf_fonts(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "fonts"); +} + +static void +_cf_profiles(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "profiles"); +} + +static void +_cf_scrolling(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "scrolling"); +} + +static void +_cf_rendering(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "rendering"); +} + +static void +_cf_caches(void *data, Evas_Object *obj, void *event_info) +{ + _flip_to(data, "caches"); +} + +static void +_theme_use(void *data, Evas_Object *obj, void *event_info) +{ + printf("not implemented\n"); +} + +static void +_theme_browse(void *data, Evas_Object *obj, void *event_info) +{ + printf("not implemented\n"); +} + +static void +_status_config_sizing(Evas_Object *win, Evas_Object *holder) +{ + Evas_Object *lb, *pd, *bx2, *sl, *sp; + + bx2 = elm_box_add(win); + evas_object_size_hint_weight_set(bx2, 1.0, 0.0); + evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, 0.5); + + pd = elm_frame_add(win); + evas_object_size_hint_weight_set(pd, 1.0, 0.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); + elm_object_style_set(pd, "pad_medium"); + elm_box_pack_end(bx2, pd); + evas_object_show(pd); + + lb = elm_label_add(win); + evas_object_size_hint_weight_set(lb, 1.0, 0.0); + evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); + elm_label_label_set(lb,"Scale"); + elm_frame_content_set(pd, lb); + evas_object_show(lb); + + sl = elm_slider_add(win); + evas_object_size_hint_weight_set(sl, 1.0, 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_scale_get()); + elm_box_pack_end(bx2, sl); + evas_object_show(sl); + + evas_object_smart_callback_add(sl, "changed", sc_round, NULL); + evas_object_smart_callback_add(sl, "delay,changed", sc_change, NULL); + + sp = elm_separator_add(win); + elm_separator_horizontal_set(sp, 1); + evas_object_size_hint_weight_set(sp, 1.0, 0.0); + evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5); + elm_box_pack_end(bx2, sp); + evas_object_show(sp); + + pd = elm_frame_add(win); + evas_object_size_hint_weight_set(pd, 1.0, 0.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); + elm_object_style_set(pd, "pad_medium"); + elm_box_pack_end(bx2, pd); + evas_object_show(pd); + + lb = elm_label_add(win); + evas_object_size_hint_weight_set(lb, 1.0, 0.0); + evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); + elm_label_label_set(lb, "Finger Size
"); + elm_frame_content_set(pd, lb); + evas_object_show(lb); + + sl = elm_slider_add(win); + evas_object_size_hint_weight_set(sl, 1.0, 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.0f"); + elm_slider_indicator_format_set(sl, "%1.0f"); + elm_slider_min_max_set(sl, 5, 200); + elm_slider_value_set(sl, elm_finger_size_get()); + elm_box_pack_end(bx2, sl); + evas_object_show(sl); + + evas_object_smart_callback_add(sl, "changed", fs_round, NULL); + evas_object_smart_callback_add(sl, "delay,changed", fs_change, NULL); + + evas_object_data_set(win, "sizing", bx2); + + elm_table_pack(holder, bx2, 0, 0, 1, 1); +} + +static Evas_Object * +_sample_theme_new(Evas_Object *win) +{ + Evas_Object *base, *bg, *bt, *ck, *rd, *rdg, *sl, *fr, *li, *rc, *sp; + + base = elm_table_add(win); + evas_object_size_hint_weight_set(base, 1.0, 1.0); + evas_object_size_hint_align_set(base, EVAS_HINT_FILL, EVAS_HINT_FILL); + + bg = elm_bg_add(win); + evas_object_size_hint_weight_set(bg, 1.0, 1.0); + evas_object_size_hint_align_set(bg, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(base, bg, 0, 0, 2, 4); + evas_object_show(bg); + + bt = elm_button_add(win); + elm_button_label_set(bt, "Button"); + elm_table_pack(base, bt, 0, 0, 1, 1); + evas_object_show(bt); + + ck = elm_check_add(win); + elm_check_label_set(ck, "Check"); + elm_table_pack(base, ck, 0, 1, 1, 1); + evas_object_show(ck); + + rd = elm_radio_add(win); + elm_radio_state_value_set(rd, 0); + elm_radio_label_set(rd, "Radio 1"); + elm_table_pack(base, rd, 1, 0, 1, 1); + evas_object_show(rd); + rdg = rd; + + rd = elm_radio_add(win); + elm_radio_state_value_set(rd, 1); + elm_radio_label_set(rd, "Radio 2"); + elm_radio_group_add(rd, rdg); + elm_table_pack(base, rd, 1, 1, 1, 1); + evas_object_show(rd); + + sp = elm_separator_add(win); + elm_separator_horizontal_set(sp, 1); + evas_object_size_hint_weight_set(sp, 1.0, 0.0); + evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5); + elm_table_pack(base, sl, 0, 2, 2, 1); + evas_object_show(sp); + + sl = elm_slider_add(win); + elm_slider_label_set(sl, "Slider"); + elm_slider_span_size_set(sl, 120); + elm_slider_min_max_set(sl, 1, 10); + elm_slider_value_set(sl, 4); + evas_object_size_hint_weight_set(sl, 1.0, 0.0); + evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(base, sl, 0, 3, 2, 1); + evas_object_show(sl); + + fr = elm_frame_add(win); + elm_frame_label_set(fr, "Frame"); + elm_table_pack(base, fr, 0, 4, 2, 1); + evas_object_size_hint_weight_set(fr, 1.0, 1.0); + evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_show(fr); + + li = elm_list_add(win); + evas_object_size_hint_weight_set(li, 1.0, 1.0); + evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_frame_content_set(fr, li); + evas_object_show(li); + + elm_list_item_append(li, "List Item 1", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "Second Item", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "Third Item", NULL, NULL, NULL, NULL); + elm_list_go(li); + + rc = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_size_hint_min_set(rc, 120, 120); + elm_table_pack(base, rc, 0, 4, 2, 1); + + return base; +} + +static void +_status_config_themes(Evas_Object *win, Evas_Object *holder) +{ + Evas_Object *tb, *rc, *sc, *sp, *li, *pd, *fr, *bt, *sample; + + tb = elm_table_add(win); + evas_object_size_hint_weight_set(tb, 1.0, 1.0); + evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL); + + rc = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_size_hint_min_set(rc, 240, 120); + elm_table_pack(tb, rc, 0, 0, 1, 1); + + rc = evas_object_rectangle_add(evas_object_evas_get(win)); + evas_object_size_hint_min_set(rc, 240, 240); + elm_table_pack(tb, rc, 0, 1, 1, 1); + + ///////////////////////////////////////////// + + pd = elm_frame_add(win); + elm_object_style_set(pd, "pad_medium"); + evas_object_size_hint_weight_set(pd, 1.0, 1.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tb, pd, 0, 0, 1, 1); + evas_object_show(pd); + + li = elm_list_add(win); + evas_object_size_hint_weight_set(li, 1.0, 1.0); + evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_frame_content_set(pd, li); + evas_object_show(li); + + // FIXME: list all themes: + // ~/.elementary/themes/*.edj + // $PREFIX/datadir/themes/*.edj + + elm_list_item_append(li, "theme 1", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 2", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 3", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 4", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 5", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 6", NULL, NULL, NULL, NULL); + elm_list_item_append(li, "theme 7", NULL, NULL, NULL, NULL); + + elm_list_go(li); + + pd = elm_frame_add(win); + elm_object_style_set(pd, "pad_medium"); + evas_object_size_hint_weight_set(pd, 1.0, 1.0); + evas_object_size_hint_align_set(pd, 0.9, 0.9); + elm_table_pack(tb, pd, 0, 0, 1, 1); + evas_object_show(pd); + + bt = elm_button_add(win); + evas_object_smart_callback_add(bt, "clicked", _theme_browse, win); + elm_button_label_set(bt, "Browse..."); + evas_object_size_hint_weight_set(bt, 1.0, 1.0); + evas_object_size_hint_align_set(bt, 0.9, 0.9); + elm_frame_content_set(pd, bt); + evas_object_show(bt); + + pd = elm_frame_add(win); + elm_object_style_set(pd, "pad_medium"); + evas_object_size_hint_weight_set(pd, 1.0, 0.0); + evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_table_pack(tb, pd, 0, 1, 1, 1); + evas_object_show(pd); + + fr = elm_frame_add(win); + elm_frame_label_set(fr, "Preview"); + evas_object_size_hint_weight_set(fr, 1.0, 1.0); + evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_frame_content_set(pd, fr); + evas_object_show(fr); + + sc = elm_scroller_add(win); + elm_scroller_bounce_set(sc, 0, 0); + evas_object_size_hint_weight_set(sc, 1.0, 1.0); + evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_frame_content_set(fr, sc); + evas_object_show(sc); + + sample = _sample_theme_new(win); + elm_scroller_content_set(sc, sample); + evas_object_show(sample); + evas_object_data_set(win, "sample", sample); + + ///////////////////////////////////////////// + sp = elm_separator_add(win); + elm_separator_horizontal_set(sp, 1); + evas_object_size_hint_weight_set(sp, 1.0, 0.0); + evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5); + elm_table_pack(tb, sp, 0, 2, 1, 1); + evas_object_show(sp); + + pd = elm_frame_add(win); + elm_object_style_set(pd, "pad_medium"); + evas_object_size_hint_weight_set(pd, 0.0, 0.0); + evas_object_size_hint_align_set(pd, 0.5, 0.5); + elm_table_pack(tb, pd, 0, 3, 1, 1); + evas_object_show(pd); + + bt = elm_button_add(win); + evas_object_smart_callback_add(bt, "clicked", _theme_use, win); + elm_button_label_set(bt, "Use Theme"); + evas_object_size_hint_weight_set(bt, 0.0, 0.0); + evas_object_size_hint_align_set(bt, 0.5, 0.5); + elm_frame_content_set(pd, bt); + evas_object_show(bt); + + evas_object_data_set(win, "themes", tb); + + elm_table_pack(holder, tb, 0, 0, 1, 1); +} + +static void +_unimplemented(Evas_Object *win, Evas_Object *holder, const char *name) +{ + Evas_Object *lb, *pd, *bx2; + + bx2 = elm_box_add(win); + evas_object_size_hint_weight_set(bx2, 1.0, 0.0); + evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, 0.5); + + pd = elm_frame_add(win); + evas_object_size_hint_weight_set(pd, 0.0, 0.0); + evas_object_size_hint_align_set(pd, 0.5, 0.5); + elm_object_style_set(pd, "pad_medium"); + elm_box_pack_end(bx2, pd); + evas_object_show(pd); + + lb = elm_label_add(win); + evas_object_size_hint_weight_set(lb, 0.0, 0.0); + evas_object_size_hint_align_set(lb, 0.5, 0.5); + elm_label_label_set(lb,"Not implemented yet"); + elm_frame_content_set(pd, lb); + evas_object_show(lb); + + evas_object_data_set(win, name, bx2); + + elm_table_pack(holder, bx2, 0, 0, 1, 1); +} + +static void +_status_config_fonts(Evas_Object *win, Evas_Object *holder) +{ + _unimplemented(win, holder, "fonts"); +} + +static void +_status_config_profiles(Evas_Object *win, Evas_Object *holder) +{ + _unimplemented(win, holder, "profiles"); +} + +static void +_status_config_scrolling(Evas_Object *win, Evas_Object *holder) +{ + _unimplemented(win, holder, "scrolling"); +} + +static void +_status_config_rendering(Evas_Object *win, Evas_Object *holder) +{ + _unimplemented(win, holder, "rendering"); +} + +static void +_status_config_caches(Evas_Object *win, Evas_Object *holder) +{ + _unimplemented(win, holder, "caches"); +} + +static void +_status_config_full(Evas_Object *win, Evas_Object *bx0) +{ + Evas_Object *tb, *holder, *fl; + Elm_Toolbar_Item *it; + + tb = elm_toolbar_add(win); + elm_toolbar_homogenous_set(tb, 0); + evas_object_size_hint_weight_set(tb, 1.0, 0.0); + evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL); + + it = elm_toolbar_item_add(tb, NULL, "Sizing", _cf_sizing, win); + elm_toolbar_item_add(tb, NULL, "Theme", _cf_themes, win); + + elm_toolbar_item_add(tb, NULL, "Fonts", _cf_fonts, win); + elm_toolbar_item_add(tb, NULL, "Profiles", _cf_profiles, win); + elm_toolbar_item_add(tb, NULL, "Scrolling", _cf_scrolling, win); + elm_toolbar_item_add(tb, NULL, "Rendering", _cf_rendering, win); + elm_toolbar_item_add(tb, NULL, "Caches", _cf_caches, win); + elm_box_pack_end(bx0, tb); + evas_object_show(tb); + + holder = elm_table_add(win); + evas_object_size_hint_align_set(holder, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_size_hint_weight_set(holder, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_box_pack_end(bx0, holder); + evas_object_show(holder); + evas_object_data_set(win, "holder", holder); + + _status_config_sizing(win, holder); + _status_config_themes(win, holder); + _status_config_fonts(win, holder); + _status_config_profiles(win, holder); + _status_config_rendering(win, holder); + _status_config_scrolling(win, holder); + _status_config_caches(win, holder); + + fl = elm_flip_add(win); + evas_object_size_hint_align_set(fl, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_size_hint_weight_set(fl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_table_pack(holder, fl, 0, 0, 1, 1); + evas_object_show(fl); + evas_object_data_set(win, "flip", fl); + + elm_toolbar_item_select(it); +} + static void status_win(void) { @@ -74,109 +644,10 @@ status_win(void) elm_win_resize_object_add(win, bx0); evas_object_show(bx0); - if (!interactive) - { - Evas_Object *lb, *fr; - - fr = elm_frame_add(win); - evas_object_size_hint_weight_set(fr, 1.0, 1.0); - elm_frame_label_set(fr, "Information"); - elm_box_pack_end(bx0, fr); - evas_object_show(fr); - - lb = elm_label_add(win); - elm_label_label_set(lb, - "Applying configuration change" - ); - elm_frame_content_set(fr, lb); - evas_object_show(lb); - } - else - { - Evas_Object *lb, *pd, *bx2, *fr, *sl, *sp; - - fr = elm_frame_add(win); - evas_object_size_hint_weight_set(fr, 1.0, 1.0); - evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL); - elm_frame_label_set(fr, "Sizing"); - elm_box_pack_end(bx0, fr); - evas_object_show(fr); - - bx2 = elm_box_add(win); - evas_object_size_hint_weight_set(bx2, 1.0, 0.0); - evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, 0.5); - - pd = elm_frame_add(win); - evas_object_size_hint_weight_set(pd, 1.0, 0.0); - evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); - elm_object_style_set(pd, "pad_medium"); - elm_box_pack_end(bx2, pd); - evas_object_show(pd); - - lb = elm_label_add(win); - evas_object_size_hint_weight_set(lb, 1.0, 0.0); - evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); - elm_label_label_set(lb,"Scale"); - elm_frame_content_set(pd, lb); - evas_object_show(lb); - - sl = elm_slider_add(win); - evas_object_size_hint_weight_set(sl, 1.0, 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_scale_get()); - elm_box_pack_end(bx2, sl); - evas_object_show(sl); - - evas_object_smart_callback_add(sl, "changed", sc_round, NULL); - evas_object_smart_callback_add(sl, "delay,changed", sc_change, NULL); - - sp = elm_separator_add(win); - elm_separator_horizontal_set(sp, 1); - evas_object_size_hint_weight_set(sp, 1.0, 0.0); - evas_object_size_hint_align_set(sp, EVAS_HINT_FILL, 0.5); - elm_box_pack_end(bx2, sp); - evas_object_show(sp); - - pd = elm_frame_add(win); - evas_object_size_hint_weight_set(pd, 1.0, 0.0); - evas_object_size_hint_align_set(pd, EVAS_HINT_FILL, 0.5); - elm_object_style_set(pd, "pad_medium"); - elm_box_pack_end(bx2, pd); - evas_object_show(pd); - - lb = elm_label_add(win); - evas_object_size_hint_weight_set(lb, 1.0, 0.0); - evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5); - elm_label_label_set(lb, "Finger Size
"); - elm_frame_content_set(pd, lb); - evas_object_show(lb); - - sl = elm_slider_add(win); - evas_object_size_hint_weight_set(sl, 1.0, 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.0f"); - elm_slider_indicator_format_set(sl, "%1.0f"); - elm_slider_min_max_set(sl, 5, 200); - elm_slider_value_set(sl, elm_finger_size_get()); - elm_box_pack_end(bx2, sl); - evas_object_show(sl); - - evas_object_smart_callback_add(sl, "changed", fs_round, NULL); - evas_object_smart_callback_add(sl, "delay,changed", fs_change, NULL); - - // FIXME: add theme selector (basic mode and advanced for fallbacks) - // FIXME: save config - // FIXME: profile selector / creator etc. - - elm_frame_content_set(fr, bx2); - evas_object_show(bx2); - } - + if (!interactive) _status_basic(win, bx0); +// else _status_config(win, bx0); + else _status_config_full(win, bx0); + evas_object_show(win); } diff --git a/legacy/elementary/src/lib/Elementary.h.in b/legacy/elementary/src/lib/Elementary.h.in index 29a1d0ed3a..4683ae2858 100644 --- a/legacy/elementary/src/lib/Elementary.h.in +++ b/legacy/elementary/src/lib/Elementary.h.in @@ -273,7 +273,7 @@ extern "C" { EAPI void elm_coords_finger_size_adjust(int times_w, Evas_Coord *w, int times_h, Evas_Coord *h); EAPI Elm_Theme *elm_theme_new(void); - EAPI void elm_theme_free(Elm_Theme *th); + EAPI void elm_theme_free(Elm_Theme *th); EAPI void elm_theme_overlay_add(Elm_Theme *th, const char *item); EAPI void elm_theme_overlay_del(Elm_Theme *th, const char *item); EAPI void elm_theme_extension_add(Elm_Theme *th, const char *item); @@ -543,9 +543,11 @@ extern "C" { EAPI Evas_Object *elm_table_add(Evas_Object *parent); EAPI void elm_table_homogenous_set(Evas_Object *obj, Eina_Bool homogenous); - EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h); EAPI void elm_table_padding_set(Evas_Object *obj, Evas_Coord horizontal, Evas_Coord vertical); - + EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h); + EAPI void elm_table_unpack(Evas_Object *obj, Evas_Object *subobj); + EAPI void elm_table_clear(Evas_Object *obj, Eina_Bool clear); + typedef struct _Elm_Grid_Cell_Class Elm_Grid_Cell_Class; typedef struct _Elm_Grid_Cell_Class_Func Elm_Grid_Cell_Class_Func; typedef struct _Elm_Grid_Cell Elm_Grid_Cell; @@ -1427,30 +1429,10 @@ extern "C" { EAPI void elm_panel_orient_set(Evas_Object *obj, Elm_Panel_Orient orient); EAPI Elm_Panel_Orient elm_panel_orient_get(Evas_Object *obj); EAPI void elm_panel_content_set(Evas_Object *obj, Evas_Object *content); -EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden); -EAPI Eina_Bool elm_panel_hidden_get(Evas_Object *obj); -EAPI void elm_panel_toggle(Evas_Object *obj); + EAPI void elm_panel_hidden_set(Evas_Object *obj, Eina_Bool hidden); + EAPI Eina_Bool elm_panel_hidden_get(Evas_Object *obj); + EAPI void elm_panel_toggle(Evas_Object *obj); - -#if 1 // working on it - // flip types: - // rotate around y axis 180 degrees - // rotate around x axis 180 degrees - // - // properties - // perspective focal dist, x, y - // - // FIXME: - // custom value - // map 1/0 - // - // center x, y, z - // angle x, y, z - // - // light 1/0 - // light rgb - // light ambient rgb - // light x, y, z typedef enum _Elm_Flip_Mode { ELM_FLIP_ROTATE_Y_CENTER_AXIS, @@ -1462,13 +1444,14 @@ EAPI void elm_panel_toggle(Evas_Object *obj); EAPI Evas_Object *elm_flip_add(Evas_Object *parent); EAPI void elm_flip_content_front_set(Evas_Object *obj, Evas_Object *content); EAPI void elm_flip_content_back_set(Evas_Object *obj, Evas_Object *content); + EAPI Evas_Object *elm_flip_content_front_get(const Evas_Object *obj); + EAPI Evas_Object *elm_flip_content_back_get(const Evas_Object *obj); EAPI Eina_Bool elm_flip_front_get(const Evas_Object *obj); EAPI void elm_flip_perspective_set(Evas_Object *obj, Evas_Coord foc, Evas_Coord x, Evas_Coord y); EAPI void elm_flip_go(Evas_Object *obj, Elm_Flip_Mode mode); /* smart callbacks called: * "animate,done" - when a flip animation is finished */ -#endif EAPI Evas_Object *elm_scrolled_entry_add(Evas_Object *parent); EAPI void elm_scrolled_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line); diff --git a/legacy/elementary/src/lib/elm_flip.c b/legacy/elementary/src/lib/elm_flip.c index 4a591ba6bc..4d875d3ac9 100644 --- a/legacy/elementary/src/lib/elm_flip.c +++ b/legacy/elementary/src/lib/elm_flip.c @@ -400,6 +400,22 @@ elm_flip_content_back_set(Evas_Object *obj, Evas_Object *content) _configure(obj); } +EAPI Evas_Object * +elm_flip_content_front_get(const Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) NULL; + Widget_Data *wd = elm_widget_data_get(obj); + return wd->front.content; +} + +EAPI Evas_Object * +elm_flip_content_back_get(const Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) NULL; + Widget_Data *wd = elm_widget_data_get(obj); + return wd->back.content; +} + /** * Get flip front visibility state *