Awesomeness!! I like this change. Now clouseau is much more usable like before. Thanks.
Daniel Juyung Seo (SeoZ) On Tue, Feb 26, 2013 at 3:29 PM, Enlightenment SVN <no-re...@enlightenment.org> wrote: > Log: > Clouseau: Merge list elements into one line > > This change only affects the clouseau_client appearance. > The merge is done if there are only basic types into the list (i.e no > other lists). > This has been done to be backward compatible with the previous client > displaying way. > > Signed-off-by: Daniel Zaoui <daniel.za...@samsung.com> > > Author: jackdanielz > Date: 2013-02-25 22:29:30 -0800 (Mon, 25 Feb 2013) > New Revision: 84373 > Trac: http://trac.enlightenment.org/e/changeset/84373 > > Modified: > trunk/clouseau/src/bin/clouseau_client.c > > Modified: trunk/clouseau/src/bin/clouseau_client.c > =================================================================== > --- trunk/clouseau/src/bin/clouseau_client.c 2013-02-26 01:23:40 UTC (rev > 84372) > +++ trunk/clouseau/src/bin/clouseau_client.c 2013-02-26 06:29:30 UTC (rev > 84373) > @@ -1759,6 +1759,39 @@ > } > > static void > +_obj_info_compactable_list_to_buffer(Eo_Dbg_Info *root_eo, char* buffer, > unsigned int buffer_size) > +{ > + Eina_List *l; // Iterator > + Eina_Value_List list; // list of the elements in root_eo > + eina_value_pget(&(root_eo->value), &list); > + Eo_Dbg_Info *eo; // List element > + buffer += snprintf(buffer, buffer_size, "%s:", root_eo->name); > + EINA_LIST_FOREACH(list.list, l, eo) > + { > + char *strval = eina_value_to_string(&(eo->value)); > + buffer += snprintf(buffer, buffer_size, " %s: %s", eo->name, > strval); > + free(strval); > + } > +} > + > +static Eina_Bool > +_obj_info_can_list_be_compacted(Eo_Dbg_Info *root_eo) > +{ > + Eina_List *l; // Iterator > + Eina_Value_List list; // list of the elements in root_eo > + Eo_Dbg_Info *eo; // List element > + eina_value_pget(&(root_eo->value), &list); > + // We check that there is no list into this list. If such list exists, > + // we can't compact the list. > + EINA_LIST_FOREACH(list.list, l, eo) > + { > + if (eina_value_type_get(&(eo->value)) == EINA_VALUE_TYPE_LIST) > + return EINA_FALSE; > + } > + return EINA_TRUE; > +} > + > +static void > _obj_info_gl_selected(void *data EINA_UNUSED, Evas_Object *pobj EINA_UNUSED, > void *event_info EINA_UNUSED) > { > @@ -1780,8 +1813,12 @@ > > EINA_LIST_FOREACH(eo_list.list, l, eo) > { > - Elm_Genlist_Item_Type iflag = > (eina_value_type_get(&(eo->value)) == EINA_VALUE_TYPE_LIST) ? > - ELM_GENLIST_ITEM_TREE : ELM_GENLIST_ITEM_NONE; > + Elm_Genlist_Item_Type iflag = ELM_GENLIST_ITEM_NONE; > + if (eina_value_type_get(&(eo->value)) == EINA_VALUE_TYPE_LIST) > + { > + if (!_obj_info_can_list_be_compacted(eo)) > + iflag = ELM_GENLIST_ITEM_TREE; > + } > elm_genlist_item_append(prop_list, &_obj_info_itc, eo, glit, > iflag, _obj_info_gl_selected, NULL); > } > @@ -1824,7 +1861,10 @@ > char buf[1024] = ""; > if (eina_value_type_get(&(eo->value)) == EINA_VALUE_TYPE_LIST) > { > - return strdup(eo->name); > + if (_obj_info_can_list_be_compacted(eo)) > + _obj_info_compactable_list_to_buffer(eo, buf, sizeof(buf)); > + else > + snprintf(buf, sizeof(buf), "%s", eo->name); > } > else > { > > > ------------------------------------------------------------------------------ > Everyone hates slow websites. So do we. > Make your web apps faster with AppDynamics > Download AppDynamics Lite for free today: > http://p.sf.net/sfu/appdyn_d2d_feb > _______________________________________________ > enlightenment-svn mailing list > enlightenment-...@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-svn ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel