Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_image.c Log Message: Use the minimum size of the edje group for the image widget preferred size. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_image.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- ewl_image.c 26 Mar 2005 05:54:33 -0000 1.4 +++ ewl_image.c 27 Mar 2005 03:41:13 -0000 1.5 @@ -48,6 +48,8 @@ ewl_widget_init(w, "image"); ewl_widget_inherit(w, "image"); + ewl_object_fill_policy_set(EWL_OBJECT(w), EWL_FLAG_FILL_NONE); + /* * Append necessary callbacks. */ @@ -282,6 +284,7 @@ { Ewl_Image *i; Ewl_Embed *emb; + int width, height; DENTER_FUNCTION(DLEVEL_STABLE); DCHECK_PARAM_PTR("w", w); @@ -300,7 +303,7 @@ if (i->path) edje_object_file_set(i->image, i->path, i->key); - + evas_object_image_size_get(i->image, &i->ow, &i->oh); } else { i->image = evas_object_image_add(emb->evas); if (!i->image) @@ -308,28 +311,31 @@ if (i->path) evas_object_image_file_set(i->image, i->path, i->key); + edje_object_size_min_get(i->image, &i->ow, &i->oh); } evas_object_layer_set(i->image, ewl_widget_layer_sum_get(w)); if (w->fx_clip_box) evas_object_clip_set(i->image, w->fx_clip_box); - evas_object_image_size_get(i->image, &i->ow, &i->oh); evas_object_pass_events_set(i->image, TRUE); evas_object_show(i->image); if (!i->ow) - i->ow = 256; + i->ow = 1; if (!i->oh) - i->oh = 256; + i->oh = 1; + + width = ewl_object_preferred_inner_w_get(EWL_OBJECT(i)); + height = ewl_object_preferred_inner_h_get(EWL_OBJECT(i)); - if (!ewl_object_preferred_inner_w_get(EWL_OBJECT(i))) { + if ((width > EWL_OBJECT_MIN_SIZE) && (height > EWL_OBJECT_MIN_SIZE)) { + ewl_image_scale_to(i, width, height); + } + else { ewl_object_preferred_inner_w_set(EWL_OBJECT(i), i->ow); ewl_object_preferred_inner_h_set(EWL_OBJECT(i), i->oh); ewl_image_scale(i, i->sw, i->sh); } - else - ewl_image_scale_to(i, ewl_object_preferred_inner_w_get(EWL_OBJECT(i)), - ewl_object_preferred_inner_h_get(EWL_OBJECT(i))); DLEAVE_FUNCTION(DLEVEL_STABLE); } ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs