On Mon, Apr 07, 2014 at 10:55:40AM +0200, Michaël Bouchaud wrote: > Really ??? > You break one more time settings of background. You get the main One more time ?? > background not user background ...
Okay, I will fix that ! > I really think a revert of all your patch could be a better solution. None > have a good quality, I really think you are coding without understanding of > what you are doing. Why ?? There where a few misstakes okay, if you tell me the misstakes I can fix them. I am understanding what I am doing !! (we had this once again, remember the thing with char*[] eh ? eh ?). > > > 2014-04-02 17:55 GMT+02:00 Marcel Hollerbach <marcel.hollerb...@stzedn.de>: > > > bu5hm4n pushed a commit to branch master. > > > > > > http://git.enlightenment.org/misc/entrance.git/commit/?id=573efe360070018b1a1a91c394f78a1410f58ba5 > > > > commit 573efe360070018b1a1a91c394f78a1410f58ba5 > > Author: Marcel Hollerbach <marcel.hollerb...@stzedn.de> > > Date: Wed Apr 2 12:24:43 2014 +0200 > > > > entrance: Updated the user settings > > > > - A User can now set a Background and a Icon file ! > > > > - Images are displayed from pools > > --- > > src/bin/entrance_conf_user.c | 181 > > +++++++++++++++++++++++++++++++++---------- > > 1 file changed, 140 insertions(+), 41 deletions(-) > > > > diff --git a/src/bin/entrance_conf_user.c b/src/bin/entrance_conf_user.c > > index 97ed8d8..6cc4553 100644 > > --- a/src/bin/entrance_conf_user.c > > +++ b/src/bin/entrance_conf_user.c > > @@ -5,7 +5,6 @@ typedef struct Entrance_Int_Conf_User_ > > Entrance_Login *orig; > > struct > > { > > - Evas_Object *preview; > > const char *path; > > const char *group; > > } bg; > > @@ -39,17 +38,21 @@ _entrance_conf_user_bg_sel(void *data EINA_UNUSED, > > Evas_Object *obj EINA_UNUSED, > > { > > Entrance_Conf_Background *cbg; > > cbg = elm_object_item_data_get(event_info); > > - if (!elm_layout_file_set(_entrance_int_conf_user->bg.preview, > > - cbg->path, cbg->group)) > > - { > > - PT("Error on loading "); > > - fprintf(stderr, "%s %s\n", cbg->path, cbg->group); > > - } > > _entrance_int_conf_user->bg.path = cbg->path; > > _entrance_int_conf_user->bg.group = cbg->group; > > entrance_conf_changed(); > > } > > > > +static void > > +_entrance_conf_user_icon_sel(void *data EINA_UNUSED, Evas_Object *obj > > EINA_UNUSED, void *event_info) > > +{ > > + Entrance_Conf_Background *cbg; > > + cbg = elm_object_item_data_get(event_info); > > + _entrance_int_conf_user->image.path = cbg->path; > > + _entrance_int_conf_user->image.group = cbg->group; > > + entrance_conf_changed(); > > +} > > + > > static Eina_Bool > > _entrance_conf_user_bg_fill_cb(void *data, Elm_Object_Item *it) > > { > > @@ -57,17 +60,41 @@ _entrance_conf_user_bg_fill_cb(void *data, > > Elm_Object_Item *it) > > const char *bg_path, *bg_group; > > cbg = data; > > > > - bg_path = _entrance_int_conf_user->orig->bg.path; > > - bg_group = _entrance_int_conf_user->orig->bg.group; > > - if ((cbg->path) > > - && (cbg->group) > > - && (bg_path) > > - && (bg_group) > > - && (!strcmp(cbg->path, bg_path)) > > - && (!strcmp(cbg->group, bg_group))) > > + entrance_gui_background_get(&bg_path, &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; > > +} > > + > > +static Eina_Bool > > +_entrance_conf_user_icon_fill_cb(void *data, Elm_Object_Item *it) > > +{ > > + Entrance_Conf_Background *cbg; > > + const char *bg_path, *bg_group; > > + cbg = data; > > + bg_path = _entrance_int_conf_user->orig->image.path; > > + bg_group = _entrance_int_conf_user->orig->image.group; > > + if (((cbg->path) && (bg_path) > > + && (!strcmp(cbg->path, bg_path))) || > > + ((!cbg->path) && (!bg_path))) > > + { > > + 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; > > } > > @@ -179,51 +206,120 @@ static void > > _entrance_conf_user_build_cb(Evas_Object *t, Entrance_Login *eu) > > { > > Evas_Object *o, *gl, *bx, *hbx; > > - Eina_List *l; > > + Eina_List *l = NULL, *tmp = NULL, *node = NULL; > > + Entrance_Conf_Background *img; > > int j = 0; > > > > + hbx = elm_box_add(t); > > + 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); > > + elm_box_horizontal_set(hbx, EINA_TRUE); > > + elm_table_pack(t, hbx, 0, j, 2, 1); > > + evas_object_show(hbx); > > + ++j; > > + > > /* Background */ > > + bx = elm_box_add(t); > > + evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, > > EVAS_HINT_EXPAND); > > + evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL); > > + elm_box_pack_end(hbx, bx); > > + evas_object_show(bx); > > + > > 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); > > + elm_box_pack_end(bx, o); > > 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, 1); > > - ++j; > > - 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); > > + > > + gl = elm_gengrid_add(t); > > 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(bx, gl); > > + elm_gengrid_item_size_set(gl, > > + elm_config_scale_get() * 150, > > + elm_config_scale_get() * 150); > > + elm_gengrid_group_item_size_set(gl, > > + elm_config_scale_get() * 31, > > + elm_config_scale_get() * 31); > > + img = calloc(1, sizeof(Entrance_Conf_Background)); > > + img->group = NULL; > > + img->path = NULL; > > + img->name = eina_stringshare_add("None"); > > + > > + l = eina_list_append(l, img); > > + > > +#define LIST_FILL(list) \ > > + tmp = NULL; \ > > + IMG_LIST_FORK(list, tmp); \ > > + entrance_fill(gl, entrance_conf_background_fill_get(),\ > > + tmp, _entrance_conf_user_bg_fill_cb,\ > > + _entrance_conf_user_bg_sel, o); > > + > > + entrance_fill(gl, entrance_conf_background_fill_get(), > > + l, _entrance_conf_user_bg_fill_cb, > > + _entrance_conf_user_bg_sel, o); > > + > > + > > + LIST_FILL(entrance_gui_background_pool_get()); > > + LIST_FILL(entrance_gui_theme_backgrounds()); > > + LIST_FILL(eu->background_pool); > > + > > +#undef LIST_FILL > > + > > + /* Icon */ > > + bx = elm_box_add(t); > > + evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, > > EVAS_HINT_EXPAND); > > + evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL); > > elm_box_pack_end(hbx, bx); > > evas_object_show(bx); > > - o = elm_layout_add(hbx); > > - _entrance_int_conf_user->bg.preview = o; > > - elm_box_pack_end(bx, o); > > - evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, > > EVAS_HINT_EXPAND); > > + > > + o = elm_label_add(t); > > + elm_object_text_set(o, "Icon"); > > + evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, 0); > > 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); > > - l = entrance_conf_backgrounds_get(o, eu->login); > > + > > + gl = elm_gengrid_add(t); > > + 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); > > + evas_object_show(gl); > > + elm_box_pack_end(bx, gl); > > + elm_gengrid_item_size_set(gl, > > + elm_config_scale_get() * 150, > > + elm_config_scale_get() * 150); > > + elm_gengrid_group_item_size_set(gl, > > + elm_config_scale_get() * 31, > > + elm_config_scale_get() * 31); > > + > > + img = calloc(1, sizeof(Entrance_Conf_Background)); > > + img->group = NULL; > > + img->path = NULL; > > + img->name = eina_stringshare_add("Random"); > > + > > + l = NULL; > > + l = eina_list_append(l, img); > > + > > +#define LIST_FILL(list) \ > > + tmp = NULL; \ > > + IMG_LIST_FORK(list, tmp); \ > > + entrance_fill(gl, entrance_conf_background_fill_get(),\ > > + tmp, _entrance_conf_user_icon_fill_cb,\ > > + _entrance_conf_user_icon_sel, o); > > + > > entrance_fill(gl, entrance_conf_background_fill_get(), > > l, _entrance_conf_user_bg_fill_cb, > > _entrance_conf_user_bg_sel, o); > > - eina_list_free(l); > > > > - /* Icon */ > > + LIST_FILL(entrance_gui_icon_pool_get()); > > + LIST_FILL(entrance_gui_theme_icons()); > > + LIST_FILL(eu->icon_pool); > > + > > +#undef LIST_FILL > > > > /* Session to autoselect */ > > o = elm_label_add(t); > > @@ -233,6 +329,7 @@ _entrance_conf_user_build_cb(Evas_Object *t, > > Entrance_Login *eu) > > elm_table_pack(t, o, 0, j, 1, 1); > > evas_object_show(o); > > o = elm_hoversel_add(t); > > + 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_object_text_set(o, "Session"); > > elm_table_pack(t, o, 1, j, 1, 1); > > @@ -247,6 +344,7 @@ _entrance_conf_user_build_cb(Evas_Object *t, > > Entrance_Login *eu) > > elm_table_pack(t, o, 0, j, 1, 1); > > evas_object_show(o); > > o = elm_actionslider_add(t); > > + 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_object_part_text_set(o, "left", "Enabled"); > > elm_object_part_text_set(o, "right", "Disabled"); > > @@ -255,6 +353,7 @@ _entrance_conf_user_build_cb(Evas_Object *t, > > Entrance_Login *eu) > > ++j; > > > > evas_object_show(t); > > + #undef LIST_FILL > > } > > > > > > > > -- > > > > > > > > > -- > Michaël Bouchaud (yoz) <y...@efl.so> > ------------------------------------------------------------------------------ > 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 > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel ------------------------------------------------------------------------------ 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 enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel