From: Enlightenment S. <no-...@en...> - 2010-03-30 18:38:10
|
Log: Elm anchorblock edje external support. Same progress as anchorview's. Author: glima Date: 2010-03-30 11:38:02 -0700 (Tue, 30 Mar 2010) New Revision: 47606 Added: trunk/TMP/st/elementary/data/edje_externals/ico_anchorblock.png trunk/TMP/st/elementary/src/edje_externals/elm_anchorblock.c Modified: trunk/TMP/st/elementary/data/edje_externals/Makefile.am trunk/TMP/st/elementary/data/edje_externals/ico_anchorview.png trunk/TMP/st/elementary/data/edje_externals/icons.edc trunk/TMP/st/elementary/src/edje_externals/Makefile.am trunk/TMP/st/elementary/src/edje_externals/modules.inc trunk/TMP/st/elementary/src/lib/Elementary.h.in trunk/TMP/st/elementary/src/lib/elc_anchorblock.c Modified: trunk/TMP/st/elementary/data/edje_externals/Makefile.am =================================================================== --- trunk/TMP/st/elementary/data/edje_externals/Makefile.am 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/data/edje_externals/Makefile.am 2010-03-30 18:38:02 UTC (rev 47606) @@ -9,6 +9,7 @@ EXTRA_DIST = \ icons.edc \ +ico_anchorblock.png \ ico_anchorview.png \ ico_bubble.png \ ico_button.png \ Property changes on: trunk/TMP/st/elementary/data/edje_externals/ico_anchorblock.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Modified: trunk/TMP/st/elementary/data/edje_externals/ico_anchorview.png =================================================================== (Binary files differ) Modified: trunk/TMP/st/elementary/data/edje_externals/icons.edc =================================================================== --- trunk/TMP/st/elementary/data/edje_externals/icons.edc 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/data/edje_externals/icons.edc 2010-03-30 18:38:02 UTC (rev 47606) @@ -10,6 +10,7 @@ image.normal: "ico_"_name".png"; \ }}}}} +ICON("anchorblock") ICON("anchorview") ICON("bubble") ICON("button") Modified: trunk/TMP/st/elementary/src/edje_externals/Makefile.am =================================================================== --- trunk/TMP/st/elementary/src/edje_externals/Makefile.am 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/src/edje_externals/Makefile.am 2010-03-30 18:38:02 UTC (rev 47606) @@ -26,6 +26,7 @@ elm_la_SOURCES = private.h \ modules.inc \ elm.c \ +elm_anchorblock.c \ elm_anchorview.c \ elm_bubble.c \ elm_button.c \ Modified: trunk/TMP/st/elementary/src/edje_externals/modules.inc =================================================================== --- trunk/TMP/st/elementary/src/edje_externals/modules.inc 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/src/edje_externals/modules.inc 2010-03-30 18:38:02 UTC (rev 47606) @@ -1,3 +1,4 @@ +DEFINE_TYPE(anchorblock) DEFINE_TYPE(anchorview) DEFINE_TYPE(bubble) DEFINE_TYPE(button) Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in =================================================================== --- trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/src/lib/Elementary.h.in 2010-03-30 18:38:02 UTC (rev 47606) @@ -658,6 +658,8 @@ }; EAPI Evas_Object *elm_anchorview_add(Evas_Object *parent); EAPI void elm_anchorview_text_set(Evas_Object *obj, const char *text); + EAPI const char *elm_anchorview_text_get(Evas_Object *obj); + EAPI void elm_anchorview_hover_parent_set(Evas_Object *obj, Evas_Object *parent); EAPI void elm_anchorview_hover_style_set(Evas_Object *obj, const char *style); EAPI void elm_anchorview_hover_end(Evas_Object *obj); @@ -683,6 +685,7 @@ }; EAPI Evas_Object *elm_anchorblock_add(Evas_Object *parent); EAPI void elm_anchorblock_text_set(Evas_Object *obj, const char *text); + EAPI const char *elm_anchorblock_text_get(Evas_Object *obj); EAPI void elm_anchorblock_hover_parent_set(Evas_Object *obj, Evas_Object *parent); EAPI void elm_anchorblock_hover_style_set(Evas_Object *obj, const char *style); EAPI void elm_anchorblock_hover_end(Evas_Object *obj); Modified: trunk/TMP/st/elementary/src/lib/elc_anchorblock.c =================================================================== --- trunk/TMP/st/elementary/src/lib/elc_anchorblock.c 2010-03-30 18:29:42 UTC (rev 47605) +++ trunk/TMP/st/elementary/src/lib/elc_anchorblock.c 2010-03-30 18:38:02 UTC (rev 47606) @@ -26,6 +26,15 @@ }; static const char *widtype = NULL; + +static const char SIG_ANCHOR_CLICKED[] = "anchor,clicked"; +static const Evas_Smart_Cb_Description _signals[] = { + {SIG_ANCHOR_CLICKED, ""}, /* TODO: declare the type properly, as data is + * being passed + */ + {NULL, NULL} +}; + static void _del_pre_hook(Evas_Object *obj); static void _del_hook(Evas_Object *obj); static void _sizing_eval(Evas_Object *obj); @@ -116,7 +125,7 @@ if (py < (y + (h / 3))) ei.hover_top = 0; ei.hover_bottom = 1; if (py > (y + ((h * 2) / 3))) ei.hover_bottom = 0; - evas_object_smart_callback_call(data, "anchor,clicked", &ei); + evas_object_smart_callback_call(data, SIG_ANCHOR_CLICKED, &ei); evas_object_smart_callback_add(wd->hover, "clicked", _hover_clicked, data); evas_object_show(wd->hover); } @@ -199,6 +208,26 @@ } /** + * Get the markup text set for the anchorblock + * + * This retrieves back the string set by @c elm_anchorblock_text_set(). + * + * @param obj The anchorblock object + * @return text The markup text set or @c NULL, either if it was not set + * or an error ocurred + * + * @ingroup Anchorblock + */ +EAPI const char* +elm_anchorblock_text_get(Evas_Object *obj) +{ + ELM_CHECK_WIDTYPE(obj, widtype) NULL; + Widget_Data *wd = elm_widget_data_get(obj); + if (!wd) return NULL; + return elm_entry_entry_get(wd->entry); +} + +/** * Set the parent of the hover popup * * This sets the parent of the hover that anchorblock will create. See hover |