Devilhorns wanted a count function added while I was playing in this.

And formatting.


SVN revision: 19998
This commit is contained in:
David Walter Seikel 2006-01-23 18:47:10 +00:00
parent e46bd5deef
commit c220a4beba
4 changed files with 29 additions and 9 deletions

View File

@ -19,7 +19,7 @@ struct _E_Smart_Data
int selected;
Evas_Coord icon_w, icon_h;
unsigned char selector : 1;
};
};
struct _E_Smart_Item
{
@ -101,11 +101,12 @@ e_ilist_append(Evas_Object *obj, Evas_Object *icon, char *label, void (*func) (v
si = E_NEW(E_Smart_Item, 1);
si->sd = sd;
si->base_obj = edje_object_add(evas_object_evas_get(sd->smart_obj));
if (evas_list_count(sd->items) & 0x1)
e_theme_edje_object_set(si->base_obj, "base/theme/widgets",
e_theme_edje_object_set(si->base_obj, "base/theme/widgets",
"widgets/ilist_odd");
else
e_theme_edje_object_set(si->base_obj, "base/theme/widgets",
e_theme_edje_object_set(si->base_obj, "base/theme/widgets",
"widgets/ilist");
edje_object_part_text_set(si->base_obj, "label", label);
si->icon_obj = icon;
@ -288,6 +289,14 @@ e_ilist_remove_label(Evas_Object *obj, char *label)
}
}
EAPI int
e_ilist_count(Evas_Object *obj)
{
API_ENTRY return 0;
return evas_list_count(sd->items);
}
/* local subsystem functions */
static void
_e_smart_event_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info)

View File

@ -9,17 +9,18 @@
EAPI Evas_Object *e_ilist_add (Evas *evas);
EAPI void e_ilist_icon_size_set (Evas_Object *obj, Evas_Coord w, Evas_Coord h);
EAPI void e_ilist_append (Evas_Object *obj, Evas_Object *icon, char *label, void (*func) (void *data, void *data2), void (*func_hilight) (void *data, void *data2), void *data, void *data2);
EAPI void e_ilist_selected_set (Evas_Object *obj, int n);
EAPI int e_ilist_selected_get (Evas_Object *obj);
EAPI const char *e_ilist_selected_label_get (Evas_Object *obj);
EAPI void *e_ilist_selected_data_get (Evas_Object *obj);
EAPI void *e_ilist_selected_data2_get (Evas_Object *obj);
EAPI void e_ilist_selected_set (Evas_Object *obj, int n);
EAPI int e_ilist_selected_get (Evas_Object *obj);
EAPI const char *e_ilist_selected_label_get (Evas_Object *obj);
EAPI void *e_ilist_selected_data_get (Evas_Object *obj);
EAPI void *e_ilist_selected_data2_get (Evas_Object *obj);
EAPI void e_ilist_selected_geometry_get (Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
EAPI void e_ilist_min_size_get (Evas_Object *obj, Evas_Coord *w, Evas_Coord *h);
EAPI void e_ilist_selector_set (Evas_Object *obj, int selector);
EAPI int e_ilist_selector_get (Evas_Object *obj);
EAPI void e_ilist_remove_num (Evas_Object *obj, int n);
EAPI void e_ilist_remove_label (Evas_Object *obj, char *label);
EAPI int e_ilist_count (Evas_Object *obj);
#endif
#endif

View File

@ -152,6 +152,15 @@ e_widget_ilist_remove_label(Evas_Object *obj, char *label)
e_ilist_remove_label(wd->o_ilist, label);
}
EAPI int
e_widget_ilist_count(Evas_Object *obj)
{
E_Widget_Data *wd;
wd = e_widget_data_get(obj);
return e_ilist_count(wd->o_ilist);
}
static void
_e_wid_del_hook(Evas_Object *obj)
{

View File

@ -15,6 +15,7 @@ EAPI int e_widget_ilist_selected_get(Evas_Object *obj);
EAPI const char *e_widget_ilist_selected_label_get(Evas_Object *obj);
EAPI void e_widget_ilist_remove_num(Evas_Object *obj, int n);
EAPI void e_widget_ilist_remove_label(Evas_Object *obj, char *label);
EAPI int e_widget_ilist_count(Evas_Object *obj);
#endif
#endif