Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_ilist.c e_ilist.h e_int_config_mime.c e_widget_ilist.c e_widget_ilist.h Log Message: add freeze/thaw for ilist - makes the mime config dialog much better :) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_ilist.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- e_ilist.c 28 Oct 2006 03:53:22 -0000 1.26 +++ e_ilist.c 27 Nov 2006 14:23:06 -0000 1.27 @@ -127,6 +127,7 @@ si->header = header; sd->items = evas_list_append(sd->items, si); edje_object_size_min_calc(si->base_obj, &mw, &mh); + e_box_freeze(sd->box_obj); e_box_pack_end(sd->box_obj, si->base_obj); e_box_pack_options_set(si->base_obj, 1, 1, /* fill */ @@ -135,6 +136,7 @@ mw, mh, /* min */ 99999, 99999 /* max */ ); + e_box_thaw(sd->box_obj); evas_object_lower(si->base_obj); evas_object_event_callback_add(si->base_obj, EVAS_CALLBACK_MOUSE_DOWN, _e_smart_event_mouse_down, si); evas_object_event_callback_add(si->base_obj, EVAS_CALLBACK_MOUSE_UP, _e_smart_event_mouse_up, si); @@ -392,7 +394,7 @@ EAPI void e_ilist_clear(Evas_Object *obj) { - INTERNAL_ENTRY; + API_ENTRY return; while (sd->items) { E_Smart_Item *si; @@ -416,6 +418,20 @@ si = evas_list_nth(sd->items, n); if (si) return si->header; return 0; +} + +EAPI void +e_ilist_freeze(Evas_Object *obj) +{ + API_ENTRY return; + e_box_freeze(sd->box_obj); +} + +EAPI void +e_ilist_thaw(Evas_Object *obj) +{ + API_ENTRY return; + e_box_thaw(sd->box_obj); } /* local subsystem functions */ =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_ilist.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- e_ilist.h 3 Sep 2006 08:51:31 -0000 1.14 +++ e_ilist.h 27 Nov 2006 14:23:07 -0000 1.15 @@ -29,6 +29,8 @@ EAPI int e_ilist_count (Evas_Object *obj); EAPI void e_ilist_clear (Evas_Object *obj); EAPI int e_ilist_nth_is_header (Evas_Object *obj, int n); +EAPI void e_ilist_freeze (Evas_Object *obj); +EAPI void e_ilist_thaw (Evas_Object *obj); #endif #endif =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_mime.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- e_int_config_mime.c 25 Nov 2006 20:03:13 -0000 1.17 +++ e_int_config_mime.c 27 Nov 2006 14:23:07 -0000 1.18 @@ -213,12 +213,15 @@ Evas_Coord w, h; Evas *evas; + evas_event_freeze(evas_object_evas_get(cfdata->gui.list)); + edje_freeze(); + e_widget_ilist_freeze(cfdata->gui.list); evas = evas_object_evas_get(cfdata->gui.list); e_widget_ilist_clear(cfdata->gui.list); for (l = cfdata->mimes; l; l = l->next) { Config_Mime *m; - Evas_Object *icon; + Evas_Object *icon = NULL; const char *tmp; char buf[4096]; int edj = 0, img = 0; @@ -226,7 +229,6 @@ m = l->data; if (!m) return; if (!strstr(m->mime, mtype)) continue; - tmp = e_fm_mime_icon_get(m->mime); if (!tmp) snprintf(buf, sizeof(buf), "e/icons/fileman/file"); @@ -263,6 +265,9 @@ e_widget_ilist_go(cfdata->gui.list); e_widget_min_size_get(cfdata->gui.list, &w, &h); e_widget_min_size_set(cfdata->gui.list, w, 200); + e_widget_ilist_thaw(cfdata->gui.list); + edje_thaw(); + evas_event_thaw(evas_object_evas_get(cfdata->gui.list)); } static void @@ -271,6 +276,9 @@ Evas_List *l; Evas_Coord w, h; + evas_event_freeze(evas_object_evas_get(cfdata->gui.tlist)); + edje_freeze(); + e_widget_ilist_freeze(cfdata->gui.tlist); e_widget_ilist_clear(cfdata->gui.tlist); for (l = types; l; l = l->next) { @@ -293,6 +301,9 @@ e_widget_ilist_go(cfdata->gui.tlist); e_widget_min_size_get(cfdata->gui.tlist, &w, &h); e_widget_min_size_set(cfdata->gui.tlist, w, 225); + e_widget_ilist_thaw(cfdata->gui.tlist); + edje_thaw(); + evas_event_thaw(evas_object_evas_get(cfdata->gui.tlist)); } static void =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_ilist.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- e_widget_ilist.c 27 Nov 2006 10:33:03 -0000 1.23 +++ e_widget_ilist.c 27 Nov 2006 14:23:07 -0000 1.24 @@ -266,6 +266,24 @@ return e_ilist_nth_is_header(wd->o_ilist, n); } +EAPI void +e_widget_ilist_freeze(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + e_ilist_freeze(wd->o_ilist); +} + +EAPI void +e_widget_ilist_thaw(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + e_ilist_thaw(wd->o_ilist); +} + static void _e_wid_del_hook(Evas_Object *obj) { =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_ilist.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- e_widget_ilist.h 3 Sep 2006 08:51:32 -0000 1.13 +++ e_widget_ilist.h 27 Nov 2006 14:23:07 -0000 1.14 @@ -25,6 +25,8 @@ EAPI int e_widget_ilist_count(Evas_Object *obj); EAPI void e_widget_ilist_clear(Evas_Object *obj); EAPI int e_widget_ilist_nth_is_header(Evas_Object *obj, int n); - +EAPI void e_widget_ilist_freeze(Evas_Object *obj); +EAPI void e_widget_ilist_thaw(Evas_Object *obj); + #endif #endif ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs