add elm_pager_content_del() for deleting arbitrary pages from a pager

SVN revision: 63993
This commit is contained in:
Mike Blumenkrantz 2011-10-11 21:06:59 +00:00
parent 09a8378711
commit 1ac843e259
2 changed files with 23 additions and 0 deletions

View File

@ -19691,6 +19691,14 @@ extern "C" {
* undefined behavior.
*/
EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1);
/**
* @brief Delete an arbitrary page from the stack
* @param obj The pager object
* @param subobj The content object to remove
* This removes a content item from the pager stack. If necessary, elm_pager_content_pop()
* will be called to animate a change.
*/
EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2);
/**
* @brief Pop the object that is on top of the stack
*

View File

@ -371,6 +371,21 @@ elm_pager_content_push(Evas_Object *obj, Evas_Object *content)
_sizing_eval(obj);
}
EAPI void
elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj)
{
ELM_CHECK_WIDTYPE(obj, widtype);
Widget_Data *wd = elm_widget_data_get(obj);
if (!subobj) return;
if (!wd) return;
if (!wd->stack) return;
if (subobj == wd->top->content)
elm_pager_content_pop(obj);
else
_content_del(obj, NULL, subobj, NULL);
}
EAPI void
elm_pager_content_pop(Evas_Object *obj)
{