[elm_popup]: Replaced label by text block.
authorshilpa singh <shilpa.singh@samsung.com>
Wed, 13 Oct 2010 10:31:07 +0000 (19:31 +0900)
committershilpa singh <shilpa.singh@samsung.com>
Wed, 13 Oct 2010 10:31:07 +0000 (19:31 +0900)
src/lib/elm_popup.c

index 28f6c68..33ad345 100644 (file)
@@ -17,7 +17,7 @@ struct _Widget_Data
    Evas_Object *notify;\r
    Evas_Object *layout;\r
    Evas_Object *parent;\r
-   Evas_Object *title_area;\r
+   const char *title_area;\r
    Evas_Object *title_icon;\r
    Evas_Object *content_area;\r
    Evas_Object *desc_label;\r
@@ -46,7 +46,7 @@ static void _action_area_clicked(void *data, Evas_Object *obj, void *event_info)
 static void _block_clicked_cb(void *data, Evas_Object *obj, void *event_info);\r
 static void _show(void *data, Evas *e, Evas_Object *obj, void *event_info);\r
 static void _hide(void *data, Evas *e, Evas_Object *obj, void *event_info);\r
-static void _resize_parent(void *data, Evas *e, Evas_Object *obj, void *event_info);\r
+\r
 \r
 static void\r
 _del_parent(void *data, Evas *e, Evas_Object *obj, void *evet_info)\r
@@ -117,11 +117,7 @@ _theme_hook(Evas_Object *obj)
    elm_layout_theme_set(wd->layout, "popup", "base", elm_widget_style_get(obj));\r
    elm_notify_orient_set(wd->notify, wd->notify_orient);\r
    edje_object_message_signal_process(elm_layout_edje_get(wd->layout));\r
-   if (wd->title_area)\r
-     {\r
-         snprintf(buf, sizeof(buf), "popup_title/%s", elm_widget_style_get(obj));\r
-         elm_object_style_set(wd->title_area, buf);\r
-     }\r
+  \r
    if (wd->action_area)\r
      {\r
        EINA_LIST_FOREACH(wd->button_list, list, action_data)\r
@@ -354,7 +350,7 @@ elm_popup_add(Evas_Object *parent_app)
        evas_object_move(parent, x, y);\r
        if (rotation != -1) \r
          elm_win_rotation_with_resize_set(parent, rotation);     \r
-       evas_object_event_callback_add(parent, EVAS_CALLBACK_DEL, _del_parent, obj);\r
+       \r
      }\r
    else\r
      parent = parent_app;\r
@@ -392,6 +388,7 @@ elm_popup_add(Evas_Object *parent_app)
      {\r
                wd->parent = parent;\r
                elm_object_style_set(wd->notify, "popup");\r
+               evas_object_event_callback_add(parent, EVAS_CALLBACK_DEL, _del_parent, obj);\r
      }\r
 \r
    ecore_x_netwm_window_type_get(elm_win_xwindow_get(parent), &type);   \r
@@ -525,21 +522,10 @@ elm_popup_title_label_set(Evas_Object *obj, const char *text)
 {\r
    ELM_CHECK_WIDTYPE(obj, widtype);\r
    Widget_Data *wd = elm_widget_data_get(obj);\r
-   char buf[4096];\r
    \r
    if (!wd) return;\r
-   if (wd->title_area)\r
-     {\r
-       evas_object_del(wd->title_area);\r
-       wd->title_area = NULL;\r
-     }   \r
-   wd->title_area = elm_label_add(obj); \r
-   snprintf(buf, sizeof(buf), "popup_title/%s", elm_widget_style_get(obj));\r
-   elm_object_style_set(wd->title_area, buf);\r
-   elm_label_label_set(wd->title_area, text);\r
-   evas_object_size_hint_weight_set(wd->title_area, EVAS_HINT_EXPAND, 0.0);\r
-   evas_object_size_hint_align_set(wd->title_area, EVAS_HINT_FILL, EVAS_HINT_FILL);\r
-   elm_layout_content_set(wd->layout, "elm.swallow.title", wd->title_area);      \r
+   eina_stringshare_replace(&wd->title_area, text);\r
+   edje_object_part_text_set(elm_layout_edje_get(wd->layout), "elm.swallow.title", text);\r
    edje_object_signal_emit(elm_layout_edje_get(wd->layout), "elm,state,title,visible", "elm");\r
    if (wd->action_area)\r
      {\r
@@ -568,7 +554,7 @@ elm_popup_title_label_get(Evas_Object *obj)
    Widget_Data *wd = elm_widget_data_get(obj);\r
    \r
    if (!wd) return NULL;\r
-   return elm_label_label_get(wd->title_area);\r
+   return wd->title_area;\r
 }\r
 \r
 /**\r