elementary/layout - deprecated elm_layout_content_set/get_unset
authorhermet <hermet@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 26 Oct 2011 00:46:16 +0000 (00:46 +0000)
committerMike McCormack <mj.mccormack@samsung.com>
Wed, 9 Nov 2011 00:48:33 +0000 (09:48 +0900)
git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@64403 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/bin/test_colorselector.c
src/bin/test_entry.c
src/bin/test_focus.c
src/bin/test_focus2.c
src/bin/test_gesture_layer.c
src/bin/test_launcher.c
src/bin/test_layout.c
src/bin/test_pager.c
src/bin/test_segment_control.c
src/lib/Elementary.h.in
src/lib/elm_layout.c

index a14463d..1498bd5 100644 (file)
@@ -60,7 +60,7 @@ test_colorselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *eve
 
    re = evas_object_rectangle_add(evas_object_evas_get(win));
    evas_object_show(re);
-   elm_layout_content_set(ly, "ColorPreview", re);
+   elm_object_content_part_set(ly, "ColorPreview", re);
 
    fr = elm_frame_add(win);
    evas_object_size_hint_weight_set(fr, 1.0, 0);
index 644fda7..0e1ec4c 100644 (file)
@@ -1305,7 +1305,7 @@ test_entry4(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_entry_scrollbar_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
    elm_entry_entry_set(en, "This is a single line");
    elm_entry_single_line_set(en, 1);
-   elm_layout_content_set(ly, "element1", en);
+   elm_object_content_part_set(ly, "element1", en);
    evas_object_show(en);
 
    en = elm_entry_add(win);
@@ -1318,7 +1318,7 @@ test_entry4(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
                       "use it more flexibly.");
    evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_layout_content_set(ly, "element2", en);
+   elm_object_content_part_set(ly, "element2", en);
    evas_object_show(en);
 
    en = elm_entry_add(win);
@@ -1339,7 +1339,7 @@ test_entry4(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
                                "good testing to see if entry widgets work as advertised."
                                 );
    evas_object_smart_callback_add(en, "anchor,clicked", scrolled_anchor_test, en);
-   elm_layout_content_set(ly, "element3", en);
+   elm_object_content_part_set(ly, "element3", en);
    evas_object_show(en);
 
    evas_object_show(win);
index 9862b88..cb331c6 100644 (file)
@@ -259,7 +259,7 @@ test_focus(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
              evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL,
                                              EVAS_HINT_FILL);
              evas_object_size_hint_weight_set(bx2, 0.0, 0.0);
-             elm_layout_content_set(ly, "element1", bx2);
+             elm_object_content_part_set(ly, "element1", bx2);
              my_show(bx2);
 
              for (i = 3; i; i--)
@@ -281,7 +281,7 @@ test_focus(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
              evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL,
                                              EVAS_HINT_FILL);
              evas_object_size_hint_weight_set(bx2, 0.0, 0.0);
-             elm_layout_content_set(ly, "element2", bx2);
+             elm_object_content_part_set(ly, "element2", bx2);
              my_show(bx2);
 
                {
index ba84227..af25e41 100644 (file)
@@ -102,7 +102,7 @@ test_focus2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
 
    bt1 = bt = elm_button_add(ly);
    elm_object_text_set(bt, "Button 1");
-   elm_layout_content_set(ly, "element1", bt);
+   elm_object_content_part_set(ly, "element1", bt);
 
    en = elm_entry_add(ly);
    elm_entry_scrollable_set(en, EINA_TRUE);
@@ -111,11 +111,11 @@ test_focus2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_entry_scrollbar_policy_set(en, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
    elm_entry_entry_set(en, "Scrolled Entry that should get focus");
    elm_entry_single_line_set(en, 1);
-   elm_layout_content_set(ly, "element2", en);
+   elm_object_content_part_set(ly, "element2", en);
 
    bt = elm_button_add(ly);
    elm_object_text_set(bt, "Button 2");
-   elm_layout_content_set(ly, "element3", bt);
+   elm_object_content_part_set(ly, "element3", bt);
 
    bt = elm_button_add(PARENT);
    elm_object_text_set(bt, "Give focus to layout");
index 2b6cf78..a4dea4c 100644 (file)
@@ -332,7 +332,7 @@ test_gesture_layer(void *data __UNUSED__, Evas_Object *obj __UNUSED__,
    Evas_Object *postit = elm_layout_add(win);
    snprintf(buf, sizeof(buf), "%s/objects/postit_ent.edj", elm_app_data_dir_get());
    elm_layout_file_set(postit, buf, "main");
-   elm_layout_content_set(postit, "ent", en);
+   elm_object_content_part_set(postit, "ent", en);
 
    photo_object_add(win, postit, NULL, 50, 50, 382, 400, 355);
 
index a58075a..1a96a4c 100644 (file)
@@ -408,17 +408,17 @@ test_launcher2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
 
         bt = elm_button_add(win);
         elm_object_text_set(bt, "Button 1");
-        elm_layout_content_set(ly, "element1", bt);
+        elm_object_content_part_set(ly, "element1", bt);
         evas_object_show(bt);
 
         bt = elm_button_add(win);
         elm_object_text_set(bt, "Button 2");
-        elm_layout_content_set(ly, "element2", bt);
+        elm_object_content_part_set(ly, "element2", bt);
         evas_object_show(bt);
 
         bt = elm_button_add(win);
         elm_object_text_set(bt, "Button 3");
-        elm_layout_content_set(ly, "element3", bt);
+        elm_object_content_part_set(ly, "element3", bt);
         evas_object_show(bt);
 
         mb = elm_mapbuf_add(win);
@@ -595,7 +595,7 @@ l3_tim_cb(void *data)
    slx = (int)(long)evas_object_data_get(data, "slx");
    sly = (int)(long)evas_object_data_get(data, "sly");
    snprintf(buf, sizeof(buf), "slot.%i.%i", slx, sly);
-   elm_layout_content_unset(ly, buf);
+   elm_object_content_part_unset(ly, buf);
    edje_object_signal_emit(elm_layout_edje_get(ly2), "drag", "app");
    return EINA_FALSE;
 }
@@ -671,7 +671,7 @@ l3_ic_up_cb(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *e
         slx = (int)(long)evas_object_data_get(obj, "slx");
         sly = (int)(long)evas_object_data_get(obj, "sly");
         snprintf(buf, sizeof(buf), "slot.%i.%i", slx, sly);
-        elm_layout_content_set(ly, buf, ly2);
+        elm_object_content_part_set(ly, buf, ly2);
         list = (Eina_List *)evas_object_data_get
            (elm_object_top_widget_get(obj), "mbs");
         EINA_LIST_FOREACH(list, l, mb)
@@ -812,7 +812,7 @@ test_launcher3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
                   elm_icon_scale_set(ic, 0, 0);
                   evas_object_size_hint_weight_set(ic, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                   evas_object_size_hint_align_set(ic, 0.5, 0.5);
-                  elm_layout_content_set(ly2, "slot", ic);
+                  elm_object_content_part_set(ly2, "slot", ic);
                   evas_object_show(ic);
 
                   evas_object_event_callback_add(ic, EVAS_CALLBACK_DEL, l3_ic_del_cb, ic);
@@ -830,7 +830,7 @@ test_launcher3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
                   evas_object_data_set(ic, "sly", (void *)(long)(j));
 
                   snprintf(buf, sizeof(buf), "slot.%i.%i", i, j);
-                  elm_layout_content_set(ly, buf, ly2);
+                  elm_object_content_part_set(ly, buf, ly2);
                   evas_object_show(ly2);
 
                   n++; if (n > 23) n = 0;
index 9f47f3b..823f86e 100644 (file)
@@ -60,19 +60,19 @@ test_layout(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
 
    bt = elm_button_add(win);
    elm_object_text_set(bt, "Button 1");
-   elm_layout_content_set(ly, "element1", bt);
+   elm_object_content_part_set(ly, "element1", bt);
    evas_object_smart_callback_add(bt, "clicked", _clicked_cb, ly);
    evas_object_show(bt);
 
    bt = elm_button_add(win);
    elm_object_text_set(bt, "Button 2");
-   elm_layout_content_set(ly, "element2", bt);
+   elm_object_content_part_set(ly, "element2", bt);
    evas_object_smart_callback_add(bt, "clicked", _clicked_cb, ly);
    evas_object_show(bt);
 
    bt = elm_button_add(win);
    elm_object_text_set(bt, "Button 3");
-   elm_layout_content_set(ly, "element3", bt);
+   elm_object_content_part_set(ly, "element3", bt);
    evas_object_smart_callback_add(bt, "clicked", _clicked_cb, ly);
    evas_object_show(bt);
 
index 5676dd2..afd85e8 100644 (file)
@@ -221,16 +221,16 @@ test_pager(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    bt = elm_button_add(win);
    elm_object_text_set(bt, "Flip to 1");
    evas_object_smart_callback_add(bt, "clicked", my_pager_4, &info);
-   elm_layout_content_set(ly2, "element1", bt);
+   elm_object_content_part_set(ly2, "element1", bt);
    evas_object_show(bt);
 
    bt = elm_button_add(win);
    elm_object_text_set(bt, "Popme");
    evas_object_smart_callback_add(bt, "clicked", my_pager_pop, &info);
    evas_object_show(bt);
-   elm_layout_content_set(ly2, "element2", bt);
+   elm_object_content_part_set(ly2, "element2", bt);
 
-   elm_layout_content_set(ly, "swallow", ly2);
+   elm_object_content_part_set(ly, "swallow", ly2);
    evas_object_show(ly);
 
    elm_pager_content_push(pg, ly);
index 63ad4e3..e56f555 100644 (file)
@@ -93,10 +93,10 @@ test_segment_control(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *e
    it3 = elm_segment_control_item_add(segment4, NULL, "Disabled");
    elm_object_disabled_set(segment4, EINA_TRUE);
 
-   elm_layout_content_set(in_layout, "segment1", segment1);
-   elm_layout_content_set(in_layout, "segment2", segment2);
-   elm_layout_content_set(in_layout, "segment3", segment3);
-   elm_layout_content_set(in_layout, "segment4", segment4);
+   elm_object_content_part_set(in_layout, "segment1", segment1);
+   elm_object_content_part_set(in_layout, "segment2", segment2);
+   elm_object_content_part_set(in_layout, "segment3", segment3);
+   elm_object_content_part_set(in_layout, "segment4", segment4);
 
    evas_object_show(in_layout);
 
index 2c19486..258ca05 100644 (file)
@@ -9742,7 +9742,7 @@ extern "C" {
     *
     * @ingroup Layout
     */
-   EAPI void               elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI void               elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content) EINA_ARG_NONNULL(1);
    /**
     * Get the child object in the given content part.
     *
@@ -9755,7 +9755,7 @@ extern "C" {
     *
     * @ingroup Layout
     */
-   EAPI Evas_Object       *elm_layout_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object       *elm_layout_content_get(const Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
    /**
     * Unset the layout content.
     *
@@ -9769,7 +9769,7 @@ extern "C" {
     *
     * @ingroup Layout
     */
-   EAPI Evas_Object       *elm_layout_content_unset(Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object       *elm_layout_content_unset(Evas_Object *obj, const char *swallow) EINA_ARG_NONNULL(1);
    /**
     * Set the text of the given part
     *
@@ -10169,7 +10169,7 @@ extern "C" {
 #define elm_layout_icon_set(_ly, _obj) \
   do { \
     const char *sig; \
-    elm_layout_content_set((_ly), "elm.swallow.icon", (_obj)); \
+    elm_object_content_part_set((_ly), "elm.swallow.icon", (_obj)); \
     if ((_obj)) sig = "elm,state,icon,visible"; \
     else sig = "elm,state,icon,hidden"; \
     elm_object_signal_emit((_ly), sig, "elm"); \
@@ -10183,7 +10183,7 @@ extern "C" {
  * @ingroup Layout
  */
 #define elm_layout_icon_get(_ly) \
-  elm_layout_content_get((_ly), "elm.swallow.icon")
+  elm_object_content_part_get((_ly), "elm.swallow.icon")
 
 /**
  * @def elm_layout_end_set
@@ -10195,7 +10195,7 @@ extern "C" {
 #define elm_layout_end_set(_ly, _obj) \
   do { \
     const char *sig; \
-    elm_layout_content_set((_ly), "elm.swallow.end", (_obj)); \
+    elm_object_content_part_set((_ly), "elm.swallow.end", (_obj)); \
     if ((_obj)) sig = "elm,state,end,visible"; \
     else sig = "elm,state,end,hidden"; \
     elm_object_signal_emit((_ly), sig, "elm"); \
@@ -10209,7 +10209,7 @@ extern "C" {
  * @ingroup Layout
  */
 #define elm_layout_end_get(_ly) \
-  elm_layout_content_get((_ly), "elm.swallow.end")
+  elm_object_content_part_get((_ly), "elm.swallow.end")
 
 /**
  * @def elm_layout_label_set
index 2b7e2b6..461f976 100644 (file)
@@ -358,6 +358,79 @@ _elm_layout_label_get(const Evas_Object *obj, const char *part)
    return edje_object_part_text_get(wd->lay, part);
 }
 
+static void
+_content_set_hook(Evas_Object *obj, const char *part, Evas_Object *content)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Subinfo *si;
+   const Eina_List *l;
+   if (!wd) return;
+   EINA_LIST_FOREACH(wd->subs, l, si)
+     {
+        if ((si->type == SWALLOW) && (!strcmp(part, si->part)))
+          {
+             if (content == si->obj) return;
+             evas_object_del(si->obj);
+             break;
+          }
+     }
+   if (content)
+     {
+        elm_widget_sub_object_add(obj, content);
+        evas_object_event_callback_add(content,
+                                       EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+                                       _changed_size_hints, wd);
+        if (!edje_object_part_swallow(wd->lay, part, content))
+          WRN("could not swallow %p into part '%s'", content, part);
+        si = ELM_NEW(Subinfo);
+        si->type = SWALLOW;
+        si->part = eina_stringshare_add(part);
+        si->obj = content;
+        wd->subs = eina_list_append(wd->subs, si);
+     }
+   _request_sizing_eval(wd);
+}
+
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part)
+{
+   Widget_Data *wd = elm_widget_data_get(obj);
+   const Eina_List *l;
+   Subinfo *si;
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+
+   EINA_LIST_FOREACH(wd->subs, l, si)
+     {
+        if ((si->type == SWALLOW) && !strcmp(part, si->part))
+          return si->obj;
+     }
+   return NULL;
+}
+
+static Evas_Object *
+_content_unset_hook(Evas_Object *obj, const char *part)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Subinfo *si;
+   const Eina_List *l;
+   if (!wd) return NULL;
+   EINA_LIST_FOREACH(wd->subs, l, si)
+     {
+        if ((si->type == SWALLOW) && (!strcmp(part, si->part)))
+          {
+             Evas_Object *content;
+             if (!si->obj) return NULL;
+             content = si->obj; /* si will die in _sub_del due elm_widget_sub_object_del() */
+             elm_widget_sub_object_del(obj, content);
+             edje_object_part_unswallow(wd->lay, content);
+             return content;
+          }
+     }
+   return NULL;
+}
+
 EAPI Evas_Object *
 elm_layout_add(Evas_Object *parent)
 {
@@ -381,6 +454,9 @@ elm_layout_add(Evas_Object *parent)
    elm_widget_signal_callback_del_hook_set(obj, _signal_callback_del_hook);
    elm_widget_text_set_hook_set(obj, _elm_layout_label_set);
    elm_widget_text_get_hook_set(obj, _elm_layout_label_get);
+   elm_widget_content_set_hook_set(obj, _content_set_hook);
+   elm_widget_content_get_hook_set(obj, _content_get_hook);
+   elm_widget_content_unset_hook_set(obj, _content_unset_hook);
 
    wd->obj = obj;
    wd->lay = edje_object_add(e);
@@ -437,74 +513,20 @@ elm_layout_theme_set(Evas_Object *obj, const char *clas, const char *group, cons
 EAPI void
 elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype);
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Subinfo *si;
-   const Eina_List *l;
-   if (!wd) return;
-   EINA_LIST_FOREACH(wd->subs, l, si)
-     {
-        if ((si->type == SWALLOW) && (!strcmp(swallow, si->part)))
-          {
-             if (content == si->obj) return;
-             evas_object_del(si->obj);
-             break;
-          }
-     }
-   if (content)
-     {
-        elm_widget_sub_object_add(obj, content);
-        evas_object_event_callback_add(content,
-                                       EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                                       _changed_size_hints, wd);
-        if (!edje_object_part_swallow(wd->lay, swallow, content))
-          WRN("could not swallow %p into part '%s'", content, swallow);
-        si = ELM_NEW(Subinfo);
-        si->type = SWALLOW;
-        si->part = eina_stringshare_add(swallow);
-        si->obj = content;
-        wd->subs = eina_list_append(wd->subs, si);
-     }
-   _request_sizing_eval(wd);
+   _content_set_hook(obj, swallow, content);
 }
 
+
 EAPI Evas_Object *
 elm_layout_content_get(const Evas_Object *obj, const char *swallow)
 {
-   Widget_Data *wd = elm_widget_data_get(obj);
-   const Eina_List *l;
-   Subinfo *si;
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-
-   EINA_LIST_FOREACH(wd->subs, l, si)
-     {
-        if ((si->type == SWALLOW) && !strcmp(swallow, si->part))
-          return si->obj;
-     }
-   return NULL;
+   return _content_get_hook(obj, swallow);
 }
 
 EAPI Evas_Object *
 elm_layout_content_unset(Evas_Object *obj, const char *swallow)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Subinfo *si;
-   const Eina_List *l;
-   if (!wd) return NULL;
-   EINA_LIST_FOREACH(wd->subs, l, si)
-     {
-        if ((si->type == SWALLOW) && (!strcmp(swallow, si->part)))
-          {
-             Evas_Object *content;
-             if (!si->obj) return NULL;
-             content = si->obj; /* si will die in _sub_del due elm_widget_sub_object_del() */
-             elm_widget_sub_object_del(obj, content);
-             edje_object_part_unswallow(wd->lay, content);
-             return content;
-          }
-     }
-   return NULL;
+   return _content_unset_hook(obj, swallow);
 }
 
 EAPI void