From 69bedeed5cafc8b2b4f5ea284c4351d73e024fa4 Mon Sep 17 00:00:00 2001 From: Goun Lee Date: Tue, 6 Sep 2011 18:47:41 +0900 Subject: [PATCH] [elm_multibuttonentry]Changed edc's TEXT part to TEXTBLOCK to support ellipsis --- src/lib/elm_multibuttonentry.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/lib/elm_multibuttonentry.c b/src/lib/elm_multibuttonentry.c index b4c38cb..0c1b989 100644 --- a/src/lib/elm_multibuttonentry.c +++ b/src/lib/elm_multibuttonentry.c @@ -737,10 +737,13 @@ _resize_button(Evas_Object *btn, Evas_Coord *realw, Evas_Coord *vieww) Evas_Coord w_text, h_btn, padding_outer, padding_inner; Evas_Coord w_btn = 0, button_max_width = 0; const char *size_str; + const char *ellipsis = ""; size_str = edje_object_data_get(btn, "button_max_size"); if (size_str) button_max_width = (Evas_Coord)atoi(size_str); + const char *button_text = edje_object_part_text_get(btn, "elm.btn.text"); + // decide the size of button edje_object_part_geometry_get(btn, "elm.base", NULL, NULL, NULL, &h_btn); edje_object_part_geometry_get(btn, "elm.btn.text", NULL, NULL, &w_text, NULL); @@ -749,7 +752,15 @@ _resize_button(Evas_Object *btn, Evas_Coord *realw, Evas_Coord *vieww) w_btn = w_text + 2*padding_outer + 2*padding_inner; rw = w_btn; - vw = (button_max_width < w_btn) ? button_max_width : w_btn; + + if (button_max_width < w_btn) + { + vw = button_max_width; + edje_object_part_text_set(btn, "elm.btn.text", ellipsis); + edje_object_part_text_append(btn, "elm.btn.text", button_text); + } + else + vw = w_btn; //resize btn evas_object_resize(btn, vw, h_btn); -- 2.7.4