2015-10-08 1:15 GMT+02:00 Cedric BAIL <[email protected]>: > Le 7 oct. 2015 21:11, "Davide Andreoli" <[email protected]> a écrit : > > > > 2015-10-04 16:02 GMT+02:00 Jee-Yong Um <[email protected]>: > > > > > cedric pushed a commit to branch master. > > > > > > > > > > > http://git.enlightenment.org/core/elementary.git/commit/?id=49ec1ec570561a260b94eb98c1a73a217822ba8d > > > > > > commit 49ec1ec570561a260b94eb98c1a73a217822ba8d > > > Author: Jee-Yong Um <[email protected]> > > > Date: Sun Oct 4 15:09:22 2015 +0200 > > > > > > elm_hoversel: add elm_hoversel_label_auto_changed_set/get() API > > > > > > > This new API name sound really bad to me. First of all the behaviour > change > > also the icon of the widget, thus the "label" in the name is wrong. > > Secondly "auto changed" seem quite wrong english (but I'm not sure as > > I'm not a native speaker) > > > > I suggest to change it to: elm_hoversel_auto_update_set/get() > > ... or something else if you have a better idea. > > Your suggestion is clearly better than current one. If no one purpose in > the coming day, we should apply this change before any release. >
10 days passed, no one complain...can you apply this name fix? thanks > > > > Summary: > > > Hoversel can be used like dropdown or pulldown menu. > > > In that case, changing hoversel label into selected item lable can > be > > > considered as common usage of hoversel. > > > This API automatizes changing label. > > > > > > Reviewers: SanghyeonLee, Hermet, cedric > > > > > > Reviewed By: cedric > > > > > > Subscribers: cedric > > > > > > Differential Revision: https://phab.enlightenment.org/D2963 > > > > > > Signed-off-by: Cedric BAIL <[email protected]> > > > --- > > > src/bin/test_hoversel.c | 1 + > > > src/lib/elc_hoversel.c | 37 > +++++++++++++++++++++++++++++++++++++ > > > src/lib/elm_hoversel.eo | 10 ++++++++++ > > > src/lib/elm_widget_hoversel.h | 1 + > > > 4 files changed, 49 insertions(+) > > > > > > diff --git a/src/bin/test_hoversel.c b/src/bin/test_hoversel.c > > > index 87f9e55..e65efd9 100644 > > > --- a/src/bin/test_hoversel.c > > > +++ b/src/bin/test_hoversel.c > > > @@ -182,6 +182,7 @@ test_hoversel(void *data EINA_UNUSED, Evas_Object > *obj > > > EINA_UNUSED, void *event_ > > > > > > hoversel = elm_hoversel_add(win); > > > elm_hoversel_scrollable_set(hoversel, EINA_TRUE); > > > + elm_hoversel_label_auto_changed_set(hoversel, EINA_TRUE); > > > elm_hoversel_hover_parent_set(hoversel, win); > > > elm_object_text_set(hoversel, "Some Icons"); > > > elm_hoversel_item_add(hoversel, "Item 1", NULL, ELM_ICON_NONE, > NULL, > > > NULL); > > > diff --git a/src/lib/elc_hoversel.c b/src/lib/elc_hoversel.c > > > index 5f7d0a8..6628bf5 100644 > > > --- a/src/lib/elc_hoversel.c > > > +++ b/src/lib/elc_hoversel.c > > > @@ -110,8 +110,33 @@ _on_item_clicked(void *data EINA_UNUSED, > > > Evas_Object *obj2 = WIDGET(item); > > > Elm_Object_Item *eo_it = EO_OBJ(item); > > > > > > + ELM_HOVERSEL_DATA_GET(obj2, sd); > > > + > > > if (item->func) item->func((void *)WIDGET_ITEM_DATA_GET(eo_it), > obj2, > > > eo_it); > > > eo_do(obj2, > > > eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, > eo_it)); > > > + > > > + if (sd->auto_changed) > > > + { > > > + Evas_Object *ic; > > > + > > > + ic = elm_object_part_content_unset(obj2, "icon"); > > > + ELM_SAFE_FREE(ic, evas_object_del); > > > + > > > + if (item->icon_file) > > > + { > > > + ic = elm_icon_add(obj2); > > > + elm_image_resizable_set(ic, EINA_FALSE, EINA_TRUE); > > > + if (item->icon_type == ELM_ICON_FILE) > > > + elm_image_file_set(ic, item->icon_file, > item->icon_group); > > > + else if (item->icon_type == ELM_ICON_STANDARD) > > > + elm_icon_standard_set(ic, item->icon_file); > > > + elm_object_part_content_set(obj2, "icon", ic); > > > + } > > > + > > > + if(item->label) > > > + elm_object_text_set(obj2, item->label); > > > + } > > > + > > > elm_hoversel_hover_end(obj2); > > > > > > return EINA_TRUE; > > > @@ -901,5 +926,17 @@ _elm_hoversel_scrollable_get(Eo *obj EINA_UNUSED, > > > Elm_Hoversel_Data *sd) > > > return sd->scroll_enabled; > > > } > > > > > > +EOLIAN void > > > +_elm_hoversel_label_auto_changed_set(Eo *obj EINA_UNUSED, > > > Elm_Hoversel_Data *sd, Eina_Bool auto_changed) > > > +{ > > > + sd->auto_changed = !!auto_changed; > > > +} > > > + > > > +EOLIAN Eina_Bool > > > +_elm_hoversel_label_auto_changed_get(Eo *obj EINA_UNUSED, > > > Elm_Hoversel_Data *sd) > > > +{ > > > + return sd->auto_changed; > > > +} > > > + > > > #include "elm_hoversel_item.eo.c" > > > #include "elm_hoversel.eo.c" > > > diff --git a/src/lib/elm_hoversel.eo b/src/lib/elm_hoversel.eo > > > index 878b454..ca24396 100644 > > > --- a/src/lib/elm_hoversel.eo > > > +++ b/src/lib/elm_hoversel.eo > > > @@ -57,6 +57,16 @@ class Elm.Hoversel (Elm.Button, > > > Evas.Selectable_Interface, > > > scrollable: bool; [[$true if scrollable $false > otherwise.]] > > > } > > > } > > > + @property label_auto_changed { > > > + [[Change the label of hoversel to that of selected item > > > automatically.]] > > > + get{ > > > + } > > > + set{ > > > + } > > > + values { > > > + auto_changed: bool; [[$true if the label is changed > > > automatically or $false otherwise]] > > > + } > > > + } > > > hover_begin { > > > [[This triggers the hoversel popup from code, the same as if > the > > > user had clicked the button.]] > > > } > > > diff --git a/src/lib/elm_widget_hoversel.h > b/src/lib/elm_widget_hoversel.h > > > index ff62512..2b97728 100644 > > > --- a/src/lib/elm_widget_hoversel.h > > > +++ b/src/lib/elm_widget_hoversel.h > > > @@ -42,6 +42,7 @@ struct _Elm_Hoversel_Data > > > Eina_Bool horizontal : 1; > > > Eina_Bool expanded : 1; > > > Eina_Bool scroll_enabled: 1; > > > + Eina_Bool auto_changed : 1; > > > }; > > > > > > typedef struct _Elm_Hoversel_Item_Data Elm_Hoversel_Item_Data; > > > > > > -- > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > Full-scale, agent-less Infrastructure Monitoring from a single dashboard > > Integrate with 40+ ManageEngine ITSM Solutions for complete visibility > > Physical-Virtual-Cloud Infrastructure monitoring from one console > > Real user monitoring with APM Insights and performance trend reports > > Learn More > http://pubads.g.doubleclick.net/gampad/clk?id=247754911&iu=/4140 > > _______________________________________________ > > enlightenment-devel mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > > ------------------------------------------------------------------------------ > Full-scale, agent-less Infrastructure Monitoring from a single dashboard > Integrate with 40+ ManageEngine ITSM Solutions for complete visibility > Physical-Virtual-Cloud Infrastructure monitoring from one console > Real user monitoring with APM Insights and performance trend reports > Learn More > http://pubads.g.doubleclick.net/gampad/clk?id=247754911&iu=/4140 > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
