From 72b6266d7c315ddc1e99b61288e2466565b65a16 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Thu, 28 Jun 2012 10:19:30 +0000 Subject: [PATCH] tom - can u take thgis textblock fit code and run with it and polish it to be nice and try and "fit" as best as possible? entries dont do it. SVN revision: 72992 --- legacy/edje/src/lib/edje_calc.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/legacy/edje/src/lib/edje_calc.c b/legacy/edje/src/lib/edje_calc.c index dd79b9d569..3e1b1aebb6 100644 --- a/legacy/edje/src/lib/edje_calc.c +++ b/legacy/edje/src/lib/edje_calc.c @@ -1252,6 +1252,32 @@ _edje_part_recalc_single_textblock(FLOAT_T sc, if (*maxh < *minh) *maxh = *minh; } } + if ((chosen_desc->text.fit_x) || (chosen_desc->text.fit_y)) + { + double s = 1.0; + + if (ep->part->scale) s = TO_DOUBLE(sc); + evas_object_scale_set(ep->object, s); + evas_object_textblock_size_formatted_get(ep->object, &tw, &th); + if (chosen_desc->text.fit_x) + { + if ((tw > 0) && (tw > params->w)) + { + s = (s * params->w) / (double)tw; + evas_object_scale_set(ep->object, s); + evas_object_textblock_size_formatted_get(ep->object, &tw, &th); + } + } + if (chosen_desc->text.fit_y) + { + if ((th > 0) && (th > params->h)) + { + s = (s * params->h) / (double)th; + evas_object_scale_set(ep->object, s); + evas_object_textblock_size_formatted_get(ep->object, &tw, &th); + } + } + } evas_object_textblock_valign_set(ep->object, TO_DOUBLE(chosen_desc->text.align.y)); } }