diff --git a/data/edc/menu.edc b/data/edc/menu.edc index 3b1fcee..17633a4 100644 --- a/data/edc/menu.edc +++ b/data/edc/menu.edc @@ -787,18 +787,6 @@ group { name: "setting_layout"; } } } - part { name: "preference_bg"; - type: RECT; - scale: 1; - description { - rel1.to_x: "preference_guide"; - rel1.to_y: "preference_guide"; - rel1.offset: 0 5; - rel1.relative: 0 1; - rel2.to: "preference_frame"; - color: 170 170 170 170; - } - } part { name: "elm.swallow.preference"; type: SWALLOW; scale: 1; diff --git a/include/config_data.h b/include/config_data.h index 541f2b8..2ab99c2 100644 --- a/include/config_data.h +++ b/include/config_data.h @@ -22,4 +22,7 @@ void option_view_size_get(option_data *od, Evas_Coord *w, Evas_Coord *h); void option_view_size_set(option_data *od, Evas_Coord w, Evas_Coord h); Eina_Bool option_part_highlight_get(option_data *od); void option_part_highlight_set(option_data *od, Eina_Bool highlight); +Eina_Bool option_dummy_swallow_get(option_data *od); +void option_dummy_swallow_set(option_data *od, Eina_Bool dummy_swallow); + diff --git a/src/config_data.c b/src/config_data.c index 3d91492..7a5c6a4 100644 --- a/src/config_data.c +++ b/src/config_data.c @@ -18,6 +18,7 @@ struct config_s Eina_Bool stats_bar : 1; Eina_Bool linenumber : 1; Eina_Bool part_highlight : 1; + Eina_Bool dummy_swallow : 1; }; void @@ -72,6 +73,7 @@ option_init(const char *edc_path, const char *edc_img_path, od->linenumber = EINA_TRUE; od->part_highlight = EINA_TRUE; + od->dummy_swallow = EINA_TRUE; return od; } @@ -272,3 +274,15 @@ option_part_highlight_set(option_data *od, Eina_Bool highlight) { od->part_highlight = highlight; } + +Eina_Bool +option_dummy_swallow_get(option_data *od) +{ + return od->dummy_swallow; +} + +void +option_dummy_swallow_set(option_data *od, Eina_Bool dummy_swallow) +{ + od->dummy_swallow = dummy_swallow; +} diff --git a/src/main.c b/src/main.c index 45f0cfb..69fcd26 100644 --- a/src/main.c +++ b/src/main.c @@ -310,6 +310,8 @@ option_update_cb(void *data, option_data *od) statusbar_toggle(ad); part_highlight_toggle(ad); + //FIXME: implement dummy object update. + //previous build was failed, Need to rebuild then reload the edj. if (view_reload_need_get(ad->vd)) { diff --git a/src/menu.c b/src/menu.c index 2b8f5b5..bacc787 100644 --- a/src/menu.c +++ b/src/menu.c @@ -13,6 +13,8 @@ struct menu_s Evas_Object *toggle_stats; Evas_Object *toggle_linenumber; Evas_Object *toggle_highlight; + Evas_Object *dummy_swallow; + Evas_Object *ctxpopup; void (*close_cb)(void *data); @@ -177,6 +179,7 @@ setting_apply_btn_cb(void *data, Evas_Object *obj EINA_UNUSED, option_stats_bar_set(od, elm_check_state_get(md->toggle_stats)); option_linenumber_set(od, elm_check_state_get(md->toggle_linenumber)); option_part_highlight_set(od, elm_check_state_get(md->toggle_highlight)); + option_dummy_swallow_set(od, elm_check_state_get(md->dummy_swallow)); option_apply(od); setting_close(md); @@ -263,10 +266,16 @@ setting_open(menu_data *md) snd_path_entry); //Preference - Evas_Object *box = elm_box_add(layout); + Evas_Object *scroller = elm_scroller_add(layout); + elm_object_part_content_set(layout, "elm.swallow.preference", scroller); + evas_object_show(scroller); + + Evas_Object *box = elm_box_add(scroller); + evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_show(box); - elm_object_part_content_set(layout, "elm.swallow.preference", box); + elm_object_content_set(scroller, box); Evas_Object *toggle; @@ -331,6 +340,19 @@ setting_open(menu_data *md) elm_box_pack_end(box, toggle_highlight); + //Toggle (Dummy Swallow) + Evas_Object *dummy_swallow = elm_check_add(box); + elm_object_style_set(dummy_swallow, "toggle"); + elm_check_state_set(dummy_swallow, option_dummy_swallow_get(md->od)); + evas_object_size_hint_weight_set(dummy_swallow, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(dummy_swallow, EVAS_HINT_FILL, + EVAS_HINT_FILL); + elm_object_text_set(dummy_swallow, "Dummy Swallow"); + evas_object_show(dummy_swallow); + + elm_box_pack_end(box, dummy_swallow); + //Toggle (Auto Indentation) toggle = elm_check_add(box); elm_object_style_set(toggle, "toggle"); @@ -381,6 +403,7 @@ setting_open(menu_data *md) md->toggle_stats = toggle_stats; md->toggle_linenumber = toggle_linenumber; md->toggle_highlight = toggle_highlight; + md->dummy_swallow = dummy_swallow; } static void