Like before, Split your patch. Here you remove all the modularity of conf panel. This is really bad !!!!
2014-04-02 17:55 GMT+02:00 Marcel Hollerbach <[email protected]>: > bu5hm4n pushed a commit to branch master. > > > http://git.enlightenment.org/misc/entrance.git/commit/?id=bd7d06b2c4f58d3fb1d420d0c0a93d96118a4501 > > commit bd7d06b2c4f58d3fb1d420d0c0a93d96118a4501 > Author: Marcel Hollerbach <[email protected]> > Date: Wed Apr 2 12:22:50 2014 +0200 > > entrance: Updated the general Settings > > - There is a toolbar on the left side > > - Added placeholder for themeselector and graphical log > > - Backgrounds are displayed from the pools ! > --- > src/bin/entrance_conf_main.c | 248 > ++++++++++++++++++++++++++++--------------- > 1 file changed, 164 insertions(+), 84 deletions(-) > > diff --git a/src/bin/entrance_conf_main.c b/src/bin/entrance_conf_main.c > index cf295d3..9cf2efb 100644 > --- a/src/bin/entrance_conf_main.c > +++ b/src/bin/entrance_conf_main.c > @@ -8,6 +8,7 @@ typedef struct Entrance_Int_Conf_Main_ > const char *path; > const char *group; > } bg; > + Evas_Object *display_area; > const char *theme; > const char *elm_profile; > Eina_Bool vkbd_enabled : 1; > @@ -55,15 +56,17 @@ _entrance_conf_bg_fill_cb(void *data, Elm_Object_Item > *it) > cbg = data; > > entrance_gui_background_get(&bg_path, &bg_group); > - if ((cbg->path) > - && (cbg->group) > - && (bg_path) > - && (bg_group) > - && (!strcmp(cbg->path, bg_path)) > - && (!strcmp(cbg->group, bg_group))) > + if (((cbg->path) && (bg_path) > + && (!strcmp(cbg->path, bg_path))) || > + ((!cbg->path) && (!bg_path))) > { > - elm_genlist_item_selected_set(it, EINA_TRUE); > - return EINA_TRUE; > + if (((cbg->group) && (bg_group) > + && (!strcmp(cbg->group, bg_group))) || > + ((!cbg->group) && (!bg_group))) > + { > + elm_gengrid_item_selected_set(it, EINA_TRUE); > + return EINA_TRUE; > + } > } > return EINA_FALSE; > } > @@ -73,12 +76,6 @@ _entrance_conf_bg_sel(void *data EINA_UNUSED, > Evas_Object *obj EINA_UNUSED, void > { > Entrance_Conf_Background *cbg; > cbg = elm_object_item_data_get(event_info); > - if (!elm_layout_file_set(_entrance_int_conf_main->bg.preview, > - cbg->path, cbg->group)) > - { > - PT("Error on loading "); > - fprintf(stderr, "%s %s\n", cbg->path, cbg->group); > - } > _entrance_int_conf_main->bg.path = cbg->path; > _entrance_int_conf_main->bg.group = cbg->group; > entrance_conf_changed(); > @@ -105,68 +102,43 @@ _entrance_conf_scale_changed(void *data EINA_UNUSED, > Evas_Object *obj, void *eve > entrance_conf_changed(); > } > > +static void > +_entrance_conf_toolbar_click(void *data, Evas_Object *obj EINA_UNUSED, > void *event_info EINA_UNUSED) > +{ > + Evas_Object *o = data, *old; > > -static Evas_Object * > -_entrance_conf_main_build(Evas_Object *obj) > + Eina_List *childs = > elm_box_children_get(_entrance_int_conf_main->display_area); > + old = eina_list_data_get(childs); > + elm_box_unpack(_entrance_int_conf_main->display_area, old); > + > + evas_object_hide(old); > + > + elm_box_pack_end(_entrance_int_conf_main->display_area, o); > + evas_object_show(o); > +} > + > +static Evas_Object* > +_entrance_conf_main_general(Evas_Object *obj) > { > - Evas_Object *t, *bx, *hbx, *o, *gl; > - Eina_List *l; > - int j = 0; > + Evas_Object *t, *o; > > + /* General */ > t = elm_table_add(obj); > - elm_table_padding_set(t, 5 , 5); > + elm_table_padding_set(t, 0, 0); > evas_object_size_hint_weight_set(t, EVAS_HINT_EXPAND, > EVAS_HINT_EXPAND); > - > - /* Background */ > - o = elm_label_add(t); > - elm_object_text_set(o, "Background"); > - evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > - evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_table_pack(t, o, 0, j, 1, 1); > - evas_object_show(o); > - ++j; > - > - hbx = elm_box_add(t); > - elm_box_horizontal_set(hbx, EINA_TRUE); > - elm_table_pack(t, hbx, 0, j, 2, 3); > - evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, > EVAS_HINT_EXPAND); > - evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, EVAS_HINT_FILL); > - gl = elm_genlist_add(hbx); > - elm_scroller_bounce_set(gl, EINA_FALSE, EINA_TRUE); > - evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, > EVAS_HINT_EXPAND); > - evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_box_pack_end(hbx, gl); > - evas_object_show(gl); > - bx = elm_box_add(hbx); > - elm_box_pack_end(hbx, bx); > - evas_object_show(bx); > - o = elm_layout_add(hbx); > - _entrance_int_conf_main->bg.preview = o; > - elm_box_pack_end(bx, o); > - 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); > - evas_object_show(o); > - o = evas_object_rectangle_add(hbx); > - evas_object_color_set(o, 0, 0, 0, 0); > - evas_object_size_hint_min_set(o, 256, 0); > - elm_box_pack_end(bx, o); > - evas_object_show(o); > - evas_object_show(hbx); > - j += 3; > - l = entrance_conf_backgrounds_get(gl, NULL); > - entrance_fill(gl, entrance_conf_background_fill_get(), > - l, _entrance_conf_bg_fill_cb, _entrance_conf_bg_sel, o); > - eina_list_free(l); > + evas_object_size_hint_align_set(t, EVAS_HINT_FILL, EVAS_HINT_FILL); > > /* Touch Screen */ > - o = elm_label_add(t); > + o = elm_label_add(obj); > elm_object_text_set(o, "Use a virtual keyboard"); > - evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > + evas_object_size_hint_weight_set(o, 1, 0); > evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_table_pack(t, o, 0, j, 1, 1); > + elm_table_pack(t, o, 0, 0, 1, 1); > evas_object_show(o); > - o = elm_actionslider_add(t); > + > + o = elm_actionslider_add(obj); > elm_object_style_set(o, "bar"); > + evas_object_size_hint_weight_set(o, 1, 0); > evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > elm_object_part_text_set(o, "left", "Disabled"); > elm_object_part_text_set(o, "right", "Enabled"); > @@ -175,36 +147,35 @@ _entrance_conf_main_build(Evas_Object *obj) > elm_actionslider_enabled_pos_set(o, ELM_ACTIONSLIDER_LEFT | > ELM_ACTIONSLIDER_RIGHT); > evas_object_smart_callback_add(o, "selected", > - _entrance_conf_vkbd_changed, NULL); > + _entrance_conf_vkbd_changed, obj); > if (_entrance_int_conf_main->vkbd_enabled) > elm_actionslider_indicator_pos_set(o, ELM_ACTIONSLIDER_RIGHT); > else > elm_actionslider_indicator_pos_set(o, ELM_ACTIONSLIDER_LEFT); > - elm_table_pack(t, o, 1, j, 1, 1); > + elm_table_pack(t, o, 1, 0, 1, 1); > evas_object_show(o); > - ++j; > > /* Elementary Profile */ > - o = elm_label_add(t); > - elm_object_text_set(o, "elementary profile"); > - evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > + o = elm_label_add(obj); > + elm_object_text_set(o, "elementary profile - NOT WORKING"); > + evas_object_size_hint_weight_set(o, 1, 0); > evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_table_pack(t, o, 0, j, 1, 1); > + elm_table_pack(t, o, 0, 1, 1, 1); > evas_object_show(o); > - o = elm_hoversel_add(t); > + > + o = elm_hoversel_add(obj); > elm_object_text_set(o, _entrance_int_conf_main->elm_profile); > evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_table_pack(t, o, 1, j, 1, 1); > + elm_table_pack(t, o, 1, 1, 1, 1); > evas_object_show(o); > - ++j; > > /* Scaling */ > o = elm_label_add(t); > elm_object_text_set(o, "Scaling"); > evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > - elm_table_pack(t, o, 0, j, 1, 1); > + elm_table_pack(t, o, 0, 2, 1, 1); > evas_object_show(o); > o = elm_spinner_add(t); > evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > @@ -216,17 +187,124 @@ _entrance_conf_main_build(Evas_Object *obj) > elm_spinner_step_set(o, 0.15); > elm_spinner_label_format_set(o, "%.2f"); > > - elm_table_pack(t, o, 1, j, 1, 1); > + elm_table_pack(t, o, 1, 2, 1, 1); > evas_object_show(o); > - ++j; > + return t; > +} > > - o = evas_object_rectangle_add(o); > - evas_object_color_set(o, 0, 0, 0, 0); > - evas_object_size_hint_min_set(o, 128, 0); > - elm_table_pack(t, o, 1, j, 1, 1); > +static Evas_Object* > +_entrance_conf_main_background(Evas_Object *obj) > +{ > + Evas_Object *o, *bx; > + Eina_List *s_bg, *t_bg, *tmp = NULL, *node = NULL; > > - evas_object_show(t); > - return t; > + o = bx = elm_box_add(obj); > + elm_box_horizontal_set(o, EINA_FALSE); > + 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); > + > + o = elm_label_add(obj); > + elm_object_text_set(o, "Background"); > + evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > + evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > + elm_box_pack_end(bx, o); > + evas_object_show(o); > + > + o = elm_gengrid_add(obj); > + elm_gengrid_item_size_set(o, > + elm_config_scale_get() * 150, > + elm_config_scale_get() * 150); > + elm_gengrid_group_item_size_set(o, > + elm_config_scale_get() * 31, > + elm_config_scale_get() * 31); > + 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); > + elm_box_pack_end(bx, o); > + evas_object_show(o); > + > + s_bg = entrance_gui_background_pool_get(); > + t_bg = entrance_gui_theme_backgrounds(); > + > +#define LIST_FILL(list) \ > + tmp = NULL; \ > + IMG_LIST_FORK(list, tmp); \ > + entrance_fill(o, entrance_conf_background_fill_get(),\ > + tmp, _entrance_conf_bg_fill_cb,\ > + _entrance_conf_bg_sel, o); > + > + LIST_FILL(s_bg); > + LIST_FILL(t_bg); > + > +#undef LIST_FILL > + > + return bx; > +} > + > +static Evas_Object* > +_entrance_conf_main_themesel(Evas_Object *obj) > +{ > + Evas_Object *o; > + /* Theme selector */ > + o = elm_label_add(obj); > + elm_object_text_set(o, "TODO Implement theme selector!"); > + evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > + evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > + return o; > +} > + > +static Evas_Object* > +_entrance_conf_main_graph_log(Evas_Object *obj) > +{ > + Evas_Object *o; > + /* Graphical Log */ > + o = elm_label_add(obj); > + elm_object_text_set(o, "TODO Implement Graphical Log !"); > + evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > + evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > + return o; > +} > + > +static Evas_Object * > +_entrance_conf_main_build(Evas_Object *obj) > +{ > + Evas_Object *tb, *bx_over, *o, *bx; > + > + /*Main Frame*/ > + o = bx_over = elm_box_add(obj); > + elm_box_horizontal_set(o, EINA_TRUE); > + 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); > + evas_object_show(o); > + > + o = tb = elm_toolbar_add(obj); > + evas_object_size_hint_weight_set(o, 0, EVAS_HINT_EXPAND); > + evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); > + elm_toolbar_horizontal_set(o, EINA_FALSE); > + elm_toolbar_select_mode_set(o, ELM_OBJECT_SELECT_MODE_ALWAYS); > + elm_toolbar_shrink_mode_set(o, ELM_TOOLBAR_SHRINK_SCROLL); > + elm_toolbar_homogeneous_set(o, EINA_FALSE); > + elm_box_pack_end(bx_over, o); > + evas_object_show(o); > + > + o = bx = elm_box_add(obj); > + elm_box_horizontal_set(o, EINA_TRUE); > + 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); > + elm_box_pack_end(bx_over, o); > + evas_object_show(o); > + > + _entrance_int_conf_main->display_area = o; > + > + elm_toolbar_item_append(tb, NULL, "General", > + _entrance_conf_toolbar_click, _entrance_conf_main_general(obj)); > + elm_toolbar_item_append(tb, NULL, "Background", > + _entrance_conf_toolbar_click, _entrance_conf_main_background(obj)); > + elm_toolbar_item_append(tb, NULL, "Theme", > + _entrance_conf_toolbar_click, _entrance_conf_main_themesel(obj)); > + elm_toolbar_item_append(tb, NULL, "Log", > + _entrance_conf_toolbar_click, _entrance_conf_main_graph_log(obj)); > + > + return bx_over; > } > > static Eina_Bool > @@ -251,6 +329,8 @@ _entrance_conf_main_apply(void) > > conf.bg.path = _entrance_int_conf_main->bg.path; > conf.bg.group = _entrance_int_conf_main->bg.group; > + conf.background_pool = NULL; > + conf.icon_pool = NULL; > conf.vkbd_enabled = _entrance_int_conf_main->vkbd_enabled; > > if (_entrance_int_conf_main->scale != elm_config_scale_get()) > > -- > > > -- Michaël Bouchaud (yoz) <[email protected]> ------------------------------------------------------------------------------ Put Bad Developers to Shame Dominate Development with Jenkins Continuous Integration Continuously Automate Build, Test & Deployment Start a new project now. Try Jenkins in the cloud. http://p.sf.net/sfu/13600_Cloudbees_APR _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
