Enlightenment CVS committal Author : devilhorns Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_ilist.h e_ilist.c e_widget_ilist.h e_widget_ilist.c e_int_config_theme.c e_int_border_border.c e_int_config_background.c Log Message: Rename e_ilist_select_* functions to be e_ilist_selected_* as this seems more intuitive. Update e_int_config_theme.c for this change. Update e_int_config_background.c for this change. Update e_int_border_border.c for this change. Added e_ilist_remove_num to remove entries by number. Added e_widget_ilist_remove_num. Added e_ilist_remove_label to remove entries by label. Added e_widget_ilist_remove_label. Added e_ilist_selected_label_get to retrieve the selected items label. Added e_widget_ilist_selected_label_get. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_ilist.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_ilist.h 12 Nov 2005 05:27:58 -0000 1.4 +++ e_ilist.h 22 Dec 2005 21:08:34 -0000 1.5 @@ -9,14 +9,17 @@ 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 *data, void *data2); -EAPI void e_ilist_select_set (Evas_Object *obj, int n); -EAPI int e_ilist_select_get (Evas_Object *obj); -EAPI void *e_ilist_select_data_get (Evas_Object *obj); -EAPI void *e_ilist_select_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); #endif #endif =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_ilist.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- e_ilist.c 12 Nov 2005 05:27:58 -0000 1.5 +++ e_ilist.c 22 Dec 2005 21:08:34 -0000 1.6 @@ -134,7 +134,7 @@ } void -e_ilist_select_set(Evas_Object *obj, int n) +e_ilist_selected_set(Evas_Object *obj, int n) { E_Smart_Item *si; @@ -159,15 +159,30 @@ } int -e_ilist_select_get(Evas_Object *obj) +e_ilist_selected_get(Evas_Object *obj) { API_ENTRY return -1; if (!sd->items) return -1; return sd->selected; } +const char * +e_ilist_selected_label_get(Evas_Object *obj) +{ + E_Smart_Item *si; + + API_ENTRY return NULL; + if (!sd->items) return NULL; + si = evas_list_nth(sd->items, sd->selected); + if (si) + { + return edje_object_part_text_get(si->base_obj, "label"); + } + return NULL; +} + void * -e_ilist_select_data_get(Evas_Object *obj) +e_ilist_selected_data_get(Evas_Object *obj) { E_Smart_Item *si; @@ -179,7 +194,7 @@ } void * -e_ilist_select_data2_get(Evas_Object *obj) +e_ilist_selected_data2_get(Evas_Object *obj) { E_Smart_Item *si; @@ -226,6 +241,50 @@ return sd->selector; } +void +e_ilist_remove_num(Evas_Object *obj, int n) +{ + E_Smart_Item *si; + + API_ENTRY return; + if (!sd->items) return; + si = evas_list_nth(sd->items, n); + if (si) + { + sd->items = evas_list_remove(sd->items, si); + if (si->icon_obj) evas_object_del(si->icon_obj); + evas_object_del(si->base_obj); + free(si); + } +} + +void +e_ilist_remove_label(Evas_Object *obj, char *label) +{ + E_Smart_Item *si; + char *t; + + API_ENTRY return; + if (!sd->items) return; + if (!label) return; + while (sd->items) + { + si = sd->items->data; + if (si) + { + t = edje_object_part_text_get(si->base_obj, "label"); + if (!strcmp(t, label)) + { + sd->items = evas_list_remove(sd->items, si); + if (si->icon_obj) evas_object_del(si->icon_obj); + evas_object_del(si->base_obj); + free(si); + break; + } + } + } +} + /* local subsystem functions */ static void _e_smart_event_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info) @@ -241,7 +300,7 @@ { if (l->data == si) { - e_ilist_select_set(si->sd->smart_obj, i); + e_ilist_selected_set(si->sd->smart_obj, i); break; } } @@ -277,15 +336,15 @@ { int n; - n = e_ilist_select_get(sd->smart_obj); - e_ilist_select_set(sd->smart_obj, n - 1); + n = e_ilist_selected_get(sd->smart_obj); + e_ilist_selected_set(sd->smart_obj, n - 1); } else if (!strcmp(ev->keyname, "Down")) { int n; - n = e_ilist_select_get(sd->smart_obj); - e_ilist_select_set(sd->smart_obj, n + 1); + n = e_ilist_selected_get(sd->smart_obj); + e_ilist_selected_set(sd->smart_obj, n + 1); } else if ((!strcmp(ev->keyname, "Return")) || (!strcmp(ev->keyname, "space"))) =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_widget_ilist.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_widget_ilist.h 12 Nov 2005 05:27:58 -0000 1.3 +++ e_widget_ilist.h 22 Dec 2005 21:08:34 -0000 1.4 @@ -8,9 +8,13 @@ EAPI Evas_Object *e_widget_ilist_add(Evas *evas, int icon_w, int icon_h, char **value); EAPI void e_widget_ilist_append(Evas_Object *obj, Evas_Object *icon, char *label, void (*func) (void *data), void *data, char *val); -EAPI void e_widget_ilist_select_set(Evas_Object *obj, int n); +EAPI void e_widget_ilist_selected_set(Evas_Object *obj, int n); EAPI void e_widget_ilist_selector_set(Evas_Object *obj, int selector); EAPI void e_widget_ilist_go(Evas_Object *obj); - +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); + #endif #endif =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_widget_ilist.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_widget_ilist.c 12 Nov 2005 05:27:58 -0000 1.4 +++ e_widget_ilist.c 22 Dec 2005 21:08:34 -0000 1.5 @@ -90,12 +90,30 @@ } void -e_widget_ilist_select_set(Evas_Object *obj, int n) +e_widget_ilist_selected_set(Evas_Object *obj, int n) { E_Widget_Data *wd; wd = e_widget_data_get(obj); - e_ilist_select_set(wd->o_ilist, n); + e_ilist_selected_set(wd->o_ilist, n); +} + +int +e_widget_ilist_selected_get(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + return e_ilist_selected_get(wd->o_ilist); +} + +const char * +e_widget_ilist_selected_label_get(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + return e_ilist_selected_label_get(wd->o_ilist); } void @@ -116,6 +134,24 @@ wd->o_widget = obj; } +void +e_widget_ilist_remove_num(Evas_Object *obj, int n) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + e_ilist_remove_num(wd->o_ilist, n); +} + +void +e_widget_ilist_remove_label(Evas_Object *obj, char *label) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + e_ilist_remove_label(wd->o_ilist, label); +} + static void _e_wid_del_hook(Evas_Object *obj) { =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_config_theme.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- e_int_config_theme.c 19 Dec 2005 14:42:43 -0000 1.1 +++ e_int_config_theme.c 22 Dec 2005 21:08:34 -0000 1.2 @@ -206,7 +206,7 @@ if (!(strcmp(themefile, cfdata->current_theme))) { - e_widget_ilist_select_set(il, i); + e_widget_ilist_selected_set(il, i); im = e_widget_image_add_from_object(evas, theme, 320, 240); e_widget_image_object_set(im, e_thumb_evas_object_get(fulltheme, evas, 160, 120, 1)); } =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_border_border.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_int_border_border.c 4 Dec 2005 12:03:58 -0000 1.4 +++ e_int_border_border.c 22 Dec 2005 21:08:34 -0000 1.5 @@ -184,7 +184,7 @@ if (!strcmp(cfdata->border->client.border.name, (char *)l->data)) sel = n; } - e_widget_ilist_select_set(oi, sel); + e_widget_ilist_selected_set(oi, sel); e_widget_min_size_get(oi, &wmw, &wmh); e_widget_min_size_set(oi, wmw, 250); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_config_background.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_int_config_background.c 19 Dec 2005 14:42:43 -0000 1.4 +++ e_int_config_background.c 22 Dec 2005 21:08:34 -0000 1.5 @@ -196,7 +196,7 @@ if ((e_config->desktop_default_background) && !(strcmp(e_config->desktop_default_background, fullbg))) { - e_widget_ilist_select_set(il, i); + e_widget_ilist_selected_set(il, i); bg = edje_object_add(evas); edje_object_file_set(bg, e_config->desktop_default_background, "desktop/background"); im = e_widget_image_add_from_object(evas, bg, 160, 120); ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs