elemetary - notify, factory, frame, panel, mapbuf
authorhermet <hermet@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 29 Oct 2011 04:32:24 +0000 (04:32 +0000)
committerMike McCormack <mj.mccormack@samsung.com>
Tue, 8 Nov 2011 09:46:03 +0000 (18:46 +0900)
applied content_set/get/unset.

do it later for the remainder.

git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@64502 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

22 files changed:
doc/widgets/widget_preview_frame.c [new file with mode: 0644]
doc/widgets/widget_preview_mapbuf.c [new file with mode: 0644]
doc/widgets/widget_preview_notify.c [new file with mode: 0644]
doc/widgets/widget_preview_panel.c [new file with mode: 0644]
src/bin/config.c
src/bin/test.c
src/bin/test_colorselector.c
src/bin/test_flip.c
src/bin/test_focus.c
src/bin/test_genlist.c
src/bin/test_launcher.c
src/bin/test_notify.c
src/bin/test_panel.c
src/bin/test_scaling.c
src/bin/test_slideshow.c
src/edje_externals/elm_notify.c
src/lib/Elementary.h.in
src/lib/elm_factory.c
src/lib/elm_frame.c
src/lib/elm_mapbuf.c
src/lib/elm_notify.c
src/lib/elm_panel.c

diff --git a/doc/widgets/widget_preview_frame.c b/doc/widgets/widget_preview_frame.c
new file mode 100644 (file)
index 0000000..0ef7e6a
--- /dev/null
@@ -0,0 +1,17 @@
+#include "widget_preview_tmpl_head.c"
+
+Evas_Object *o = elm_frame_add(win);
+evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(win, o);
+evas_object_show(o);
+
+elm_object_text_set(o, "Frame");
+
+Evas_Object *o2 = elm_label_add(win);
+evas_object_size_hint_weight_set(o2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_show(o2);
+elm_object_text_set(o2, "Frame content");
+
+elm_object_content_set(o, o2);
+
+#include "widget_preview_tmpl_foot.c"
diff --git a/doc/widgets/widget_preview_mapbuf.c b/doc/widgets/widget_preview_mapbuf.c
new file mode 100644 (file)
index 0000000..c43977c
--- /dev/null
@@ -0,0 +1,29 @@
+#include "widget_preview_tmpl_head.c"
+
+Evas_Object *o = elm_mapbuf_add(win);
+evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(win, o);
+evas_object_show(o);
+
+Evas_Object *tb = elm_table_add(win);
+evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+evas_object_size_hint_fill_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL);
+evas_object_show(tb);
+
+unsigned int i, j;
+for (i = 0; i < 8; i++)
+  {
+     for (j = 0; j < 8; j++)
+       {
+          Evas_Object *ic = elm_icon_add(win);
+          elm_icon_standard_set(ic, "home");
+          elm_icon_scale_set(ic, EINA_FALSE, EINA_FALSE);
+          evas_object_show(ic);
+          elm_table_pack(tb, ic, i, j, 1, 1);
+       }
+  }
+
+elm_object_content_set(o, tb);
+elm_mapbuf_enabled_set(o, EINA_TRUE);
+
+#include "widget_preview_tmpl_foot.c"
diff --git a/doc/widgets/widget_preview_notify.c b/doc/widgets/widget_preview_notify.c
new file mode 100644 (file)
index 0000000..ab8176b
--- /dev/null
@@ -0,0 +1,15 @@
+#include "widget_preview_tmpl_head.c"
+
+Evas_Object *o = elm_notify_add(win);
+evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(win, o);
+evas_object_show(o);
+
+Evas_Object *o2 = elm_label_add(win);
+elm_object_text_set(o2, "content");
+evas_object_show(o2);
+
+elm_object_content_set(o, o2);
+
+
+#include "widget_preview_tmpl_foot.c"
diff --git a/doc/widgets/widget_preview_panel.c b/doc/widgets/widget_preview_panel.c
new file mode 100644 (file)
index 0000000..f1cc4c2
--- /dev/null
@@ -0,0 +1,15 @@
+#include "widget_preview_tmpl_head.c"
+
+Evas_Object *o = elm_panel_add(win);
+evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+elm_win_resize_object_add(win, o);
+evas_object_show(o);
+
+Evas_Object *o2 = elm_label_add(win);
+elm_object_text_set(o2, "content");
+evas_object_show(o2);
+
+elm_object_content_set(o, o2);
+
+
+#include "widget_preview_tmpl_foot.c"
index a88cc64..f35a790 100644 (file)
@@ -81,7 +81,7 @@ struct _Fonts_Data
        evas_object_size_hint_weight_set(lb, EVAS_HINT_EXPAND, 0.0); \
        evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5);    \
        elm_object_text_set(lb, label);                              \
-       elm_frame_content_set(pd, lb);                               \
+       elm_object_content_set(pd, lb);                               \
        evas_object_show(lb);                                        \
     }                                                               \
   while (0)
@@ -582,7 +582,7 @@ _status_basic(Evas_Object *win,
    elm_object_text_set(lb,
                        "Applying configuration change"
                        );
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
 }
 
@@ -645,7 +645,7 @@ _status_config(Evas_Object *win,
    // FIXME: add theme selector (basic mode and advanced for fallbacks)
    // FIXME: save config
    // FIXME: profile selector / creator etc.
-   elm_frame_content_set(fr, bx);
+   elm_object_content_set(fr, bx);
    evas_object_show(bx);
 }
 
@@ -1283,7 +1283,7 @@ _sample_theme_new(Evas_Object *win)
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, 1.0, 1.0);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_show(li);
 
    elm_list_item_append(li, "List Item 1", NULL, NULL, NULL, NULL);
@@ -1333,7 +1333,7 @@ _status_config_themes(Evas_Object *win,
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, 1.0, 1.0);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(pd, li);
+   elm_object_content_set(pd, li);
    evas_object_show(li);
 
    list = elm_theme_name_available_list_new();
@@ -1395,7 +1395,7 @@ _status_config_themes(Evas_Object *win,
       elm_object_text_set(bt, "Browse...");
       evas_object_size_hint_weight_set(bt, 1.0, 1.0);
       evas_object_size_hint_align_set(bt, 0.9, 0.9);
-      elm_frame_content_set(pd, bt);
+      elm_object_content_set(pd, bt);
       evas_object_show(bt);
     */
    pd = elm_frame_add(win);
@@ -1409,14 +1409,14 @@ _status_config_themes(Evas_Object *win,
    elm_object_text_set(fr, "Preview");
    evas_object_size_hint_weight_set(fr, 1.0, 1.0);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(pd, fr);
+   elm_object_content_set(pd, fr);
    evas_object_show(fr);
 
    sc = elm_scroller_add(win);
    elm_scroller_bounce_set(sc, 0, 0);
    evas_object_size_hint_weight_set(sc, 1.0, 1.0);
    evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, sc);
+   elm_object_content_set(fr, sc);
    evas_object_show(sc);
 
    sample = _sample_theme_new(win);
@@ -1444,7 +1444,7 @@ _status_config_themes(Evas_Object *win,
    elm_object_text_set(bt, "Use Theme");
    evas_object_size_hint_weight_set(bt, 1.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
-   elm_frame_content_set(pd, bt);
+   elm_object_content_set(pd, bt);
    evas_object_show(bt);
 
    evas_object_data_set(win, "themes", tb);
@@ -1931,7 +1931,7 @@ _status_config_fonts(Evas_Object *win,
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_show(li);
 
    evas_object_data_set(win, "font_classes_list", li);
@@ -1947,7 +1947,7 @@ _status_config_fonts(Evas_Object *win,
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_show(li);
 
    evas_object_data_set(win, "font_names_list", li);
@@ -1971,7 +1971,7 @@ _status_config_fonts(Evas_Object *win,
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_show(li);
 
    evas_object_data_set(win, "font_styles_list", li);
@@ -1988,7 +1988,7 @@ _status_config_fonts(Evas_Object *win,
    li = elm_list_add(win);
    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_show(li);
 
    evas_object_data_set(win, "font_sizes_list", li);
@@ -2066,7 +2066,7 @@ _status_config_fonts(Evas_Object *win,
    elm_box_pack_end(bx, bt);
    evas_object_show(bt);
 
-   elm_frame_content_set(pd, bx);
+   elm_object_content_set(pd, bx);
 
    evas_object_data_set(win, "fonts", base);
 
@@ -2264,7 +2264,7 @@ _status_config_profiles(Evas_Object *win,
    elm_object_text_set(fr, "Available Profiles");
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, fr_bx1);
+   elm_object_content_set(fr, fr_bx1);
    elm_box_pack_end(bx, fr);
    evas_object_show(fr);
 
@@ -2359,7 +2359,7 @@ _status_config_profiles(Evas_Object *win,
    elm_box_pack_end(btn_bx, bt);
    evas_object_show(bt);
 
-   elm_frame_content_set(pd, btn_bx);
+   elm_object_content_set(pd, btn_bx);
 
    evas = evas_object_evas_get(li);
    evas_event_freeze(evas);
@@ -2728,7 +2728,7 @@ _status_config_rendering(Evas_Object *win,
    evas_object_show(fr);
 
    li = elm_list_add(win);
-   elm_frame_content_set(fr, li);
+   elm_object_content_set(fr, li);
    evas_object_size_hint_weight_set(li, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(li, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
@@ -2759,7 +2759,7 @@ _status_config_rendering(Evas_Object *win,
    elm_object_text_set(bt, "Use Engine");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
-   elm_frame_content_set(pd, bt);
+   elm_object_content_set(pd, bt);
    evas_object_show(bt);
 
    evas_object_data_set(win, "rendering", bx);
index dd41f57..1dd12c6 100644 (file)
@@ -255,7 +255,7 @@ my_win_main(char *autorun, Eina_Bool test_win_only)
                        "Please select a test from the list below<br>"
                        "by clicking the test button to show the<br>"
                        "test window.");
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
 
    tg = elm_toggle_add(win);
index 553cb79..3c3cf2e 100644 (file)
@@ -55,7 +55,7 @@ test_colorselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *eve
    elm_layout_file_set(ly, buf, "main");
    evas_object_size_hint_align_set(ly, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_frame_content_set(fr, ly);
+   elm_object_content_set(fr, ly);
    evas_object_show(ly);
 
    re = evas_object_rectangle_add(evas_object_evas_get(win));
@@ -79,7 +79,7 @@ test_colorselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *eve
    elm_colorselector_color_set(cp, r, g, b, a);
    evas_object_size_hint_weight_set(cp, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(cp, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_content_set(fr, cp);
+   elm_object_content_set(fr, cp);
    evas_object_show(cp);
    evas_object_smart_callback_add(cp, "changed", _colorselector_clicked_cb, re);
 
index 92556d4..a6497fd 100644 (file)
@@ -409,7 +409,7 @@ test_flip3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    fl_f = elm_flip_add(win);
    evas_object_size_hint_align_set(fl_f, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_size_hint_weight_set(fl_f, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_frame_content_set(fr, fl_f);
+   elm_object_content_set(fr, fl_f);
    evas_object_show(fl_f);
 
    o = elm_bg_add(win);
@@ -438,7 +438,7 @@ test_flip3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    fl_b = elm_flip_add(win);
    evas_object_size_hint_align_set(fl_b, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_size_hint_weight_set(fl_b, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_frame_content_set(fr, fl_b);
+   elm_object_content_set(fr, fl_b);
    evas_object_show(fl_b);
 
    o = elm_bg_add(win);
index 34bc94c..a78887d 100644 (file)
@@ -327,7 +327,7 @@ test_focus(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
                {
                   Evas_Object *tb = elm_table_add(win);
                   evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                  elm_frame_content_set(fr, tb);
+                  elm_object_content_set(fr, tb);
                   my_show(tb);
                   for (j = 0; j < 1; j++)
                     for (i = 0; i < 2; i++)
index 1f12acb..43130b7 100644 (file)
@@ -1722,7 +1722,7 @@ test_genlist10(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
    evas_object_show(fr);
 
    bx2 = elm_box_add(win);
-   elm_frame_content_set(fr, bx2);
+   elm_object_content_set(fr, bx2);
    evas_object_show(bx2);
 
    lb = elm_label_add(win);
@@ -1842,7 +1842,7 @@ test_genlist11(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
    elm_object_text_set(lb,
                        "Enable reorder mode if you want to move item.<br>"
                        "Then long press and drag item.");
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
 
    gl = elm_genlist_add(win);
index 58af41a..0036ec9 100644 (file)
@@ -254,7 +254,7 @@ test_launcher(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
         elm_table_pack(tb, pad, 6, 1, 1, 10);
 
         mb = elm_mapbuf_add(win);
-        elm_mapbuf_content_set(mb, tb);
+        elm_object_content_set(mb, tb);
         evas_object_show(tb);
 
         for (j = 0; j < 5; j++)
@@ -422,7 +422,7 @@ test_launcher2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
         evas_object_show(bt);
 
         mb = elm_mapbuf_add(win);
-        elm_mapbuf_content_set(mb, ly);
+        elm_object_content_set(mb, ly);
         evas_object_show(ly);
 
         elm_box_pack_end(bx, mb);
@@ -781,7 +781,7 @@ test_launcher3(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
         mb = elm_mapbuf_add(win);
         mbs = eina_list_append(mbs, mb);
 
-        elm_mapbuf_content_set(mb, tb);
+        elm_object_content_set(mb, tb);
         evas_object_show(tb);
         elm_box_pack_end(bx, mb);
         evas_object_show(mb);
index 71c1b22..7cf50e3 100644 (file)
@@ -60,7 +60,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_size_hint_weight_set(notify, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -90,7 +90,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_smart_callback_add(notify, "block,clicked", _notify_block, NULL);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -119,7 +119,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_smart_callback_add(notify, "timeout", _notify_timeout, NULL);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -147,7 +147,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_smart_callback_add(notify, "timeout", _notify_timeout, NULL);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -173,7 +173,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_RIGHT);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -199,7 +199,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_TOP_LEFT);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -225,7 +225,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_TOP_RIGHT);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -251,7 +251,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_BOTTOM_LEFT);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
@@ -277,7 +277,7 @@ test_notify(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    elm_notify_orient_set(notify, ELM_NOTIFY_ORIENT_BOTTOM_RIGHT);
 
    bx = elm_box_add(win);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    elm_box_horizontal_set(bx, EINA_TRUE);
    evas_object_show(bx);
 
index 9b726d3..8869bed 100644 (file)
@@ -188,7 +188,7 @@ test_panel(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
 
    elm_toolbar_item_append(toolbar, "home", "Hello", _tstatus, panel);
 
-   elm_panel_content_set(panel, toolbar);
+   elm_object_content_set(panel, toolbar);
    elm_box_pack_end(vbx, panel);
    evas_object_show(panel);
 
@@ -209,7 +209,7 @@ test_panel(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_show(list);
 
-   elm_panel_content_set(panel, list);
+   elm_object_content_set(panel, list);
 
    elm_box_pack_end(bx, panel);
    evas_object_show(panel);
@@ -228,7 +228,7 @@ test_panel(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
    evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_show(list);
 
-   elm_panel_content_set(panel, list);
+   elm_object_content_set(panel, list);
 
    elm_box_pack_end(bx, panel);
    evas_object_show(panel);
@@ -252,7 +252,7 @@ test_panel(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info
 
    elm_toolbar_item_append(toolbar, "home", "Hello", _bstatus, panel);
 
-   elm_panel_content_set(panel, toolbar);
+   elm_object_content_set(panel, toolbar);
    elm_box_pack_end(vbx, panel);
    evas_object_show(panel);
 
index c8fa6eb..7469108 100644 (file)
@@ -89,7 +89,7 @@ test_scaling2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
                       "Parent frame scale<br>"
                       "is 0.5. Child should<br>"
                       "inherit it.");
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
    elm_box_pack_end(bx, fr);
    evas_object_show(fr);
@@ -101,7 +101,7 @@ test_scaling2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
                       "Parent frame scale<br>"
                       "is 1.0. Child should<br>"
                       "inherit it.");
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
    elm_object_scale_set(fr, 1.0);
    elm_box_pack_end(bx, fr);
@@ -114,7 +114,7 @@ test_scaling2(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
                       "Parent frame scale<br>"
                       "is 2.0. Child should<br>"
                       "inherit it.");
-   elm_frame_content_set(fr, lb);
+   elm_object_content_set(fr, lb);
    evas_object_show(lb);
    elm_object_scale_set(fr, 2.0);
    elm_box_pack_end(bx, fr);
index 3e2c541..a7bb777 100644 (file)
@@ -143,7 +143,7 @@ test_slideshow(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_i
 
    bx = elm_box_add(win);
    elm_box_horizontal_set(bx, EINA_TRUE);
-   elm_notify_content_set(notify, bx);
+   elm_object_content_set(notify, bx);
    evas_object_show(bx);
 
    evas_object_event_callback_add(bx, EVAS_CALLBACK_MOUSE_IN, _mouse_in,
index a1a1a67..ef9ff70 100644 (file)
@@ -53,7 +53,7 @@ static void external_notify_state_set(void *data __UNUSED__,
        else return;
 
        if (p->content) {
-               elm_notify_content_set(obj, p->content);
+               elm_object_content_set(obj, p->content);
        }
        if (p->repeat_events_exists)
                elm_notify_repeat_events_set(obj, p->repeat_events);
@@ -76,7 +76,7 @@ static Eina_Bool external_notify_param_set(void *data __UNUSED__,
                Evas_Object *content = external_common_param_edje_object_get(obj, param);
                if ((strcmp(param->s, "")) && (!content))
                        return EINA_FALSE;
-               elm_notify_content_set(obj, content);
+               elm_object_content_set(obj, content);
                return EINA_TRUE;
        }
        else if ((!strcmp(param->name, "repeat_events"))
index 146528a..f600a12 100644 (file)
@@ -6073,6 +6073,12 @@ extern "C" {
     * continuous look across its options.
     * @li hoversel_vertical_entry: Another internal for @ref Hoversel.
     *
+    * Default contents parts of the button widget that you can use for are:
+    * @li "elm.swallow.content" - A icon of the button
+    *
+    * Default text parts of the button widget that you can use for are:
+    * @li "elm.text" - Label of the button
+    *
     * Follow through a complete example @ref button_example_01 "here".
     * @{
     */
@@ -7683,6 +7689,12 @@ extern "C" {
     *
     * Of all this styles only default shows the title. Frame emits no signals.
     *
+    * Default contents parts of the frame widget that you can use for are:
+    * @li "elm.swallow.content" - A content of the frame
+    *
+    * Default text parts of the frame widget that you can use for are:
+    * @li "elm.text" - Label of the frame
+    *
     * For a detailed example see the @ref tutorial_frame.
     *
     * @{
@@ -7723,7 +7735,7 @@ extern "C" {
     * @param obj The frame object
     * @param content The content will be filled in this frame object
     */
-   EAPI void         elm_frame_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI void         elm_frame_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
    /**
     * @brief Get the content of the frame widget
     *
@@ -7732,7 +7744,7 @@ extern "C" {
     * @param obj The frame object
     * @return The content that is being used
     */
-   EAPI Evas_Object *elm_frame_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object *elm_frame_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @brief Unset the content of the frame widget
     *
@@ -7741,7 +7753,7 @@ extern "C" {
     * @param obj The frame object
     * @return The content that was being used
     */
-   EAPI Evas_Object *elm_frame_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object *elm_frame_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @}
     */
@@ -10280,7 +10292,7 @@ extern "C" {
     * you want to keep that old content object, use the
     * elm_notify_content_unset() function.
     */
-   EAPI void              elm_notify_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI void              elm_notify_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
    /**
     * @brief Unset the content of the notify widget
     *
@@ -10291,7 +10303,7 @@ extern "C" {
     *
     * @see elm_notify_content_set()
     */
-   EAPI Evas_Object      *elm_notify_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object      *elm_notify_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @brief Return the content of the notify widget
     *
@@ -10300,7 +10312,7 @@ extern "C" {
     *
     * @see elm_notify_content_set()
     */
-   EAPI Evas_Object      *elm_notify_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object      *elm_notify_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @brief Set the notify parent
     *
@@ -23497,7 +23509,7 @@ extern "C" {
     * If you want to keep that old content object, use the
     * elm_panel_content_unset() function.
     */
-   EAPI void                  elm_panel_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI void                  elm_panel_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
    /**
     * @brief Get the content of the panel.
     *
@@ -23508,7 +23520,7 @@ extern "C" {
     *
     * @see elm_panel_content_set()
     */
-   EAPI Evas_Object          *elm_panel_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object          *elm_panel_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @brief Unset the content of the panel.
     *
@@ -23519,7 +23531,7 @@ extern "C" {
     *
     * @see elm_panel_content_set()
     */
-   EAPI Evas_Object          *elm_panel_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object          *elm_panel_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
    /**
     * @brief Set the state of the panel.
     *
@@ -24289,7 +24301,7 @@ extern "C" {
     *
     * @ingroup Mapbuf
     */
-   EAPI void         elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI void         elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
 
    /**
     * Get the content of the mapbuf.
@@ -24303,7 +24315,7 @@ extern "C" {
     *
     * @ingroup Mapbuf
     */
-   EAPI Evas_Object *elm_mapbuf_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object *elm_mapbuf_content_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
 
    /**
     * Unset the content of the mapbuf.
@@ -24317,7 +24329,7 @@ extern "C" {
     *
     * @ingroup Mapbuf
     */
-   EAPI Evas_Object *elm_mapbuf_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
+   EINA_DEPRECATED EAPI Evas_Object *elm_mapbuf_content_unset(Evas_Object *obj) EINA_ARG_NONNULL(1);
 
    /**
     * Enable or disable the map.
@@ -27960,6 +27972,14 @@ extern "C" {
    EAPI Evas_Object *elm_genscroller_add(Evas_Object *parent);
    EAPI void         elm_genscroller_world_size_set(Evas_Object *obj, Evas_Coord w, Evas_Coord h);
 
+   EAPI Evas_Object *elm_factory_add(Evas_Object *parent);
+   EINA_DEPRECATED EAPI void         elm_factory_content_set(Evas_Object *obj, Evas_Object *content);
+   EINA_DEPRECATED EAPI Evas_Object *elm_factory_content_get(const Evas_Object *obj);
+   EAPI void         elm_factory_maxmin_mode_set(Evas_Object *obj, Eina_Bool enabled);
+   EAPI Eina_Bool    elm_factory_maxmin_mode_get(const Evas_Object *obj);
+   EAPI void         elm_factory_maxmin_reset_set(Evas_Object *obj);
+
+
    /**
     * @defgroup Video Video
     *
@@ -28413,7 +28433,6 @@ extern "C" {
     * application.
     *
     * Signals that you can add callback for are:
-    *
     * @li "transition,finished" - When the transition is finished in changing
     *     the item
     * @li "title,clicked" - User clicked title area
index f1aa695..6d28488 100644 (file)
@@ -26,6 +26,8 @@ static void _move(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, v
 static void _resize(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__);
 static void _child_change(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__);
 static void _child_del(void *data, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__);
+static void _content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content);
+static Evas_Object *_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__);
 
 static const char SIG_REALIZE[] = "realize";
 static const char SIG_UNREALIZE[] = "unrealize";
@@ -209,36 +211,8 @@ _child_del(void *data, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __
 //   printf("FAC-- = %i\n", fac);
 }
 
-EAPI Evas_Object *
-elm_factory_add(Evas_Object *parent)
-{
-   Evas_Object *obj;
-   Evas *e;
-   Widget_Data *wd;
-
-   ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL);
-
-   ELM_SET_WIDTYPE(widtype, "factory");
-   elm_widget_type_set(obj, "factory");
-   elm_widget_sub_object_add(parent, obj);
-   elm_widget_data_set(obj, wd);
-   elm_widget_del_hook_set(obj, _del_hook);
-   elm_widget_focus_next_hook_set(obj, _focus_next_hook);
-   elm_widget_can_focus_set(obj, EINA_FALSE);
-   elm_widget_changed_hook_set(obj, _changed);
-
-   evas_object_event_callback_add(obj, EVAS_CALLBACK_MOVE, _move, NULL);
-   evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE, _resize, NULL);
-
-   evas_object_smart_callbacks_descriptions_set(obj, _signals);
-
-   wd->obj = obj;
-   wd->last_calc_count = -1;
-   return obj;
-}
-
-EAPI void
-elm_factory_content_set(Evas_Object *obj, Evas_Object *content)
+static void
+_content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content)
 {
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
@@ -275,8 +249,8 @@ elm_factory_content_set(Evas_Object *obj, Evas_Object *content)
      }
 }
 
-EAPI Evas_Object *
-elm_factory_content_get(const Evas_Object *obj)
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__)
 {
    ELM_CHECK_WIDTYPE(obj, widtype) NULL;
    Widget_Data *wd = elm_widget_data_get(obj);
@@ -284,6 +258,48 @@ elm_factory_content_get(const Evas_Object *obj)
    return wd->content;
 }
 
+EAPI Evas_Object *
+elm_factory_add(Evas_Object *parent)
+{
+   Evas_Object *obj;
+   Evas *e;
+   Widget_Data *wd;
+
+   ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL);
+
+   ELM_SET_WIDTYPE(widtype, "factory");
+   elm_widget_type_set(obj, "factory");
+   elm_widget_sub_object_add(parent, obj);
+   elm_widget_data_set(obj, wd);
+   elm_widget_del_hook_set(obj, _del_hook);
+   elm_widget_focus_next_hook_set(obj, _focus_next_hook);
+   elm_widget_content_set_hook_set(obj, _content_set_hook);
+   elm_widget_content_get_hook_set(obj, _content_get_hook);
+   elm_widget_can_focus_set(obj, EINA_FALSE);
+   elm_widget_changed_hook_set(obj, _changed);
+
+   evas_object_event_callback_add(obj, EVAS_CALLBACK_MOVE, _move, NULL);
+   evas_object_event_callback_add(obj, EVAS_CALLBACK_RESIZE, _resize, NULL);
+
+   evas_object_smart_callbacks_descriptions_set(obj, _signals);
+
+   wd->obj = obj;
+   wd->last_calc_count = -1;
+   return obj;
+}
+
+EAPI void
+elm_factory_content_set(Evas_Object *obj, Evas_Object *content)
+{
+   _content_set_hook(obj, NULL, content);
+}
+
+EAPI Evas_Object *
+elm_factory_content_get(const Evas_Object *obj)
+{
+   return _content_get_hook(obj, NULL);
+}
+
 EAPI void
 elm_factory_maxmin_mode_set(Evas_Object *obj, Eina_Bool enabled)
 {
index ee33efc..fb1019c 100644 (file)
@@ -124,6 +124,49 @@ _elm_frame_label_get(const Evas_Object *obj, const char *item)
    return wd->label;
 }
 
+static void
+_content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (wd->content == content) return;
+   if (wd->content) evas_object_del(wd->content);
+   wd->content = content;
+   if (content)
+     {
+        elm_widget_sub_object_add(obj, content);
+        evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+                                       _changed_size_hints, obj);
+        edje_object_part_swallow(wd->frm, "elm.swallow.content", content);
+     }
+   _sizing_eval(obj);
+}
+
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return NULL;
+   return wd->content;
+}
+
+static Evas_Object *
+_content_unset_hook(Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Evas_Object *content;
+   if (!wd) return NULL;
+   if (!wd->content) return NULL;
+   content = wd->content;
+   elm_widget_sub_object_del(obj, wd->content);
+   edje_object_part_unswallow(wd->frm, wd->content);
+   wd->content = NULL;
+   return content;
+}
+
 EAPI Evas_Object *
 elm_frame_add(Evas_Object *parent)
 {
@@ -143,6 +186,9 @@ elm_frame_add(Evas_Object *parent)
    elm_widget_can_focus_set(obj, EINA_FALSE);
    elm_widget_text_set_hook_set(obj, _elm_frame_label_set);
    elm_widget_text_get_hook_set(obj, _elm_frame_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->frm = edje_object_add(e);
    _elm_theme_object_set(obj, wd->frm, "frame", "base", "default");
@@ -170,42 +216,17 @@ elm_frame_label_get(const Evas_Object *obj)
 EAPI void
 elm_frame_content_set(Evas_Object *obj, Evas_Object *content)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype);
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return;
-   if (wd->content == content) return;
-   if (wd->content) evas_object_del(wd->content);
-   wd->content = content;
-   if (content)
-     {
-        elm_widget_sub_object_add(obj, content);
-        evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                                       _changed_size_hints, obj);
-        edje_object_part_swallow(wd->frm, "elm.swallow.content", content);
-     }
-   _sizing_eval(obj);
+   _content_set_hook(obj, NULL, content);
 }
 
 EAPI Evas_Object *
 elm_frame_content_get(const Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return NULL;
-   return wd->content;
+   return _content_get_hook(obj, NULL);
 }
 
 EAPI Evas_Object *
 elm_frame_content_unset(Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Evas_Object *content;
-   if (!wd) return NULL;
-   if (!wd->content) return NULL;
-   content = wd->content;
-   elm_widget_sub_object_del(obj, wd->content);
-   edje_object_part_unswallow(wd->frm, wd->content);
-   wd->content = NULL;
-   return content;
+   return _content_unset_hook(obj, NULL);
 }
index c87ecff..ab6f152 100644 (file)
@@ -146,6 +146,59 @@ _resize(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__,
    _configure(data);
 }
 
+static void
+_content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (wd->content == content) return;
+   if (wd->content) evas_object_del(wd->content);
+   wd->content = content;
+   if (content)
+     {
+        evas_object_data_set(content, "_elm_leaveme", (void *)1);
+        elm_widget_sub_object_add(content, obj);
+        evas_object_smart_member_add(content, obj);
+        evas_object_clip_set(content, wd->clip);
+        evas_object_color_set(wd->clip, 255, 255, 255, 255);
+        evas_object_event_callback_add(content,
+                                       EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+                                       _changed_size_hints, obj);
+     }
+   else
+     evas_object_color_set(wd->clip, 0, 0, 0, 0);
+   _sizing_eval(obj);
+   _configure(obj);
+}
+
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return NULL;
+   return wd->content;
+}
+
+static Evas_Object *
+_content_unset_hook(Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Evas_Object *content;
+   if (!wd) return NULL;
+   if (!wd->content) return NULL;
+   content = wd->content;
+   elm_widget_sub_object_del(obj, content);
+   evas_object_smart_member_del(content);
+   evas_object_color_set(wd->clip, 0, 0, 0, 0);
+   evas_object_clip_unset(content);
+   evas_object_data_del(content, "_elm_leaveme");
+   wd->content = NULL;
+   return content;
+}
+
 EAPI Evas_Object *
 elm_mapbuf_add(Evas_Object *parent)
 {
@@ -161,6 +214,9 @@ elm_mapbuf_add(Evas_Object *parent)
    elm_widget_data_set(obj, wd);
    elm_widget_del_hook_set(obj, _del_hook);
    elm_widget_theme_hook_set(obj, _theme_hook);
+   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);
    elm_widget_can_focus_set(obj, EINA_FALSE);
 
    wd->clip = evas_object_rectangle_add(e);
@@ -185,54 +241,19 @@ elm_mapbuf_add(Evas_Object *parent)
 EAPI void
 elm_mapbuf_content_set(Evas_Object *obj, Evas_Object *content)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype);
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return;
-   if (wd->content == content) return;
-   if (wd->content) evas_object_del(wd->content);
-   wd->content = content;
-   if (content)
-     {
-        evas_object_data_set(content, "_elm_leaveme", (void *)1);
-        elm_widget_sub_object_add(content, obj);
-        evas_object_smart_member_add(content, obj);
-        evas_object_clip_set(content, wd->clip);
-        evas_object_color_set(wd->clip, 255, 255, 255, 255);
-        evas_object_event_callback_add(content,
-                                       EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                                       _changed_size_hints, obj);
-     }
-   else
-     evas_object_color_set(wd->clip, 0, 0, 0, 0);
-   _sizing_eval(obj);
-   _configure(obj);
+   _content_set_hook(obj, NULL, content);
 }
 
 EAPI Evas_Object *
 elm_mapbuf_content_get(const Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return NULL;
-   return wd->content;
+   return _content_get_hook(obj, NULL);
 }
 
 EAPI Evas_Object *
 elm_mapbuf_content_unset(Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Evas_Object *content;
-   if (!wd) return NULL;
-   if (!wd->content) return NULL;
-   content = wd->content;
-   elm_widget_sub_object_del(obj, content);
-   evas_object_smart_member_del(content);
-   evas_object_color_set(wd->clip, 0, 0, 0, 0);
-   evas_object_clip_unset(content);
-   evas_object_data_del(content, "_elm_leaveme");
-   wd->content = NULL;
-   return content;
+   return _content_unset_hook(obj, NULL);
 }
 
 EAPI void
index 5ddf0a6..e63245b 100644 (file)
@@ -413,6 +413,54 @@ _elm_notify_focus_next_hook(const Evas_Object *obj, Elm_Focus_Direction dir, Eva
    return elm_widget_focus_next_get(cur, dir, next);
 }
 
+static void
+_content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (wd->content == content) return;
+   if (wd->content) evas_object_del(wd->content);
+   wd->content = content;
+
+   if (content)
+     {
+        elm_widget_sub_object_add(obj, content);
+        evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
+                                       _changed_size_hints, obj);
+        evas_object_event_callback_add(content, EVAS_CALLBACK_RESIZE,
+                                       _content_resize, obj);
+        edje_object_part_swallow(wd->notify, "elm.swallow.content", content);
+     }
+   _sizing_eval(obj);
+   _calc(obj);
+}
+
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+
+   if (!wd) return NULL;
+   return wd->content;
+}
+
+static Evas_Object *
+_content_unset_hook(Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Evas_Object *content;
+   if (!wd) return NULL;
+   if (!wd->content) return NULL;
+   content = wd->content;
+   elm_widget_sub_object_del(obj, wd->content);
+   edje_object_part_unswallow(wd->notify, wd->content);
+   wd->content = NULL;
+   return content;
+}
+
 EAPI Evas_Object *
 elm_notify_add(Evas_Object *parent)
 {
@@ -431,6 +479,9 @@ elm_notify_add(Evas_Object *parent)
    elm_widget_theme_hook_set(obj, _theme_hook);
    elm_widget_can_focus_set(obj, EINA_FALSE);
    elm_widget_focus_next_hook_set(obj, _elm_notify_focus_next_hook);
+   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->repeat_events = EINA_TRUE;
 
@@ -456,49 +507,19 @@ elm_notify_add(Evas_Object *parent)
 EAPI void
 elm_notify_content_set(Evas_Object *obj, Evas_Object *content)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype);
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return;
-   if (wd->content == content) return;
-   if (wd->content) evas_object_del(wd->content);
-   wd->content = content;
-
-   if (content)
-     {
-        elm_widget_sub_object_add(obj, content);
-        evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                                       _changed_size_hints, obj);
-        evas_object_event_callback_add(content, EVAS_CALLBACK_RESIZE,
-                                       _content_resize, obj);
-        edje_object_part_swallow(wd->notify, "elm.swallow.content", content);
-     }
-   _sizing_eval(obj);
-   _calc(obj);
+   _content_set_hook(obj, NULL, content);
 }
 
 EAPI Evas_Object *
 elm_notify_content_unset(Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Evas_Object *content;
-   if (!wd) return NULL;
-   if (!wd->content) return NULL;
-   content = wd->content;
-   elm_widget_sub_object_del(obj, wd->content);
-   edje_object_part_unswallow(wd->notify, wd->content);
-   wd->content = NULL;
-   return content;
+   return _content_unset_hook(obj, NULL);
 }
 
 EAPI Evas_Object *
 elm_notify_content_get(const Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-
-   if (!wd) return NULL;
-   return wd->content;
+   return _content_get_hook(obj, NULL);
 }
 
 EAPI void
index 30c9089..3da5b9e 100644 (file)
@@ -225,6 +225,47 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
    return EINA_TRUE;
 }
 
+static void
+_content_set_hook(Evas_Object *obj, const char *part __UNUSED__, Evas_Object *content)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype);
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return;
+   if (wd->content == content) return;
+   if (wd->content)
+     evas_object_box_remove_all(wd->bx, EINA_TRUE);
+   wd->content = content;
+   if (content)
+     {
+        evas_object_box_append(wd->bx, wd->content);
+        evas_object_show(wd->content);
+     }
+   _sizing_eval(obj);
+}
+
+static Evas_Object *
+_content_get_hook(const Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   if (!wd) return NULL;
+   return wd->content;
+}
+
+static Evas_Object *
+_content_unset_hook(Evas_Object *obj, const char *part __UNUSED__)
+{
+   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
+   Widget_Data *wd = elm_widget_data_get(obj);
+   Evas_Object *content;
+   if (!wd) return NULL;
+   if (!wd->content) return NULL;
+   content = wd->content;
+   evas_object_box_remove_all(wd->bx, EINA_FALSE);
+   wd->content = NULL;
+   return content;
+}
+
 EAPI Evas_Object *
 elm_panel_add(Evas_Object *parent)
 {
@@ -247,6 +288,9 @@ elm_panel_add(Evas_Object *parent)
    elm_widget_focus_next_hook_set(obj, _elm_panel_focus_next_hook);
    elm_widget_can_focus_set(obj, EINA_TRUE);
    elm_widget_event_hook_set(obj, _event_hook);
+   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->scr = elm_smart_scroller_add(e);
    elm_smart_scroller_widget_set(wd->scr, obj);
@@ -321,42 +365,19 @@ elm_panel_orient_get(const Evas_Object *obj)
 EAPI void
 elm_panel_content_set(Evas_Object *obj, Evas_Object *content)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype);
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return;
-   if (wd->content == content) return;
-   if (wd->content)
-     evas_object_box_remove_all(wd->bx, EINA_TRUE);
-   wd->content = content;
-   if (content)
-     {
-        evas_object_box_append(wd->bx, wd->content);
-        evas_object_show(wd->content);
-     }
-   _sizing_eval(obj);
+   _content_set_hook(obj, NULL, content);
 }
 
 EAPI Evas_Object *
 elm_panel_content_get(const Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   if (!wd) return NULL;
-   return wd->content;
+   return _content_get_hook(obj, NULL);
 }
 
 EAPI Evas_Object *
 elm_panel_content_unset(Evas_Object *obj)
 {
-   ELM_CHECK_WIDTYPE(obj, widtype) NULL;
-   Widget_Data *wd = elm_widget_data_get(obj);
-   Evas_Object *content;
-   if (!wd) return NULL;
-   if (!wd->content) return NULL;
-   content = wd->content;
-   evas_object_box_remove_all(wd->bx, EINA_FALSE);
-   wd->content = NULL;
-   return content;
+   return _content_unset_hook(obj, NULL);
 }
 
 EAPI void