elementary/naviframe - more signals.

SVN revision: 64153
This commit is contained in:
ChunEon Park 2011-10-18 16:12:14 +00:00
parent 55257debae
commit c9adffcdfc
1 changed files with 27 additions and 7 deletions

View File

@ -48,6 +48,8 @@ struct _Elm_Naviframe_Item
static const char *widtype = NULL; static const char *widtype = NULL;
static const char SIG_TRANSITION_FINISHED[] = "transition,finished"; static const char SIG_TRANSITION_FINISHED[] = "transition,finished";
static const char SIG_PUSH_FINISHED[] = "push,finished";
static const char SIG_POP_FINISHED[] = "pop,finished";
static const char SIG_TITLE_CLICKED[] = "title,clicked"; static const char SIG_TITLE_CLICKED[] = "title,clicked";
static const Evas_Smart_Cb_Description _signals[] = { static const Evas_Smart_Cb_Description _signals[] = {
@ -724,6 +726,9 @@ _pushed_finished(void *data,
Elm_Naviframe_Item *it = data; Elm_Naviframe_Item *it = data;
if (!it) return; if (!it) return;
evas_object_hide(it->base.view); evas_object_hide(it->base.view);
evas_object_smart_callback_call(it->base.widget,
SIG_PUSH_FINISHED,
data);
} }
static void static void
@ -732,6 +737,11 @@ _popped_finished(void *data,
const char *emission __UNUSED__, const char *emission __UNUSED__,
const char *source __UNUSED__) const char *source __UNUSED__)
{ {
Elm_Naviframe_Item *it = data;
if (!it) return;
evas_object_smart_callback_call(it->base.widget,
SIG_POP_FINISHED,
data);
_item_del(data); _item_del(data);
} }
@ -751,7 +761,7 @@ _show_finished(void *data,
evas_object_smart_callback_call(it->base.widget, evas_object_smart_callback_call(it->base.widget,
SIG_TRANSITION_FINISHED, SIG_TRANSITION_FINISHED,
(void *) EINA_TRUE); data);
if (wd->freeze_events) if (wd->freeze_events)
evas_object_hide(wd->rect); evas_object_hide(wd->rect);
} }
@ -1068,15 +1078,25 @@ elm_naviframe_item_style_set(Elm_Object_Item *it, const char *item_style)
//prev button //prev button
if (navi_it->title_prev_btn) if (navi_it->title_prev_btn)
edje_object_part_swallow(navi_it->base.view, {
"elm.swallow.prev_btn", edje_object_part_swallow(navi_it->base.view,
navi_it->title_prev_btn); "elm.swallow.prev_btn",
navi_it->title_prev_btn);
edje_object_signal_emit(navi_it->base.view,
"elm,state,prev_btn,show",
"elm");
}
//next button //next button
if (navi_it->title_next_btn) if (navi_it->title_next_btn)
edje_object_part_swallow(navi_it->base.view, {
"elm.swallow.next_btn", edje_object_part_swallow(navi_it->base.view,
navi_it->title_next_btn); "elm.swallow.next_btn",
navi_it->title_next_btn);
edje_object_signal_emit(navi_it->base.view,
"elm,state,next_btn,show",
"elm");
}
navi_it->title_visible = EINA_TRUE; navi_it->title_visible = EINA_TRUE;
_item_sizing_eval(navi_it); _item_sizing_eval(navi_it);