ok icon too in hover test. looks nice. :)

SVN revision: 36529
This commit is contained in:
Carsten Haitzler 2008-10-08 15:21:14 +00:00
parent 39c45fe2ea
commit ad01d08412
2 changed files with 25 additions and 4 deletions

View File

@ -473,7 +473,7 @@ my_hover_bt_1(void *data, Evas_Object *obj, void *event_info)
static void
my_bt_11(void *data, Evas_Object *obj, void *event_info)
{
Evas_Object *win, *bg, *bx, *bt, *hv;
Evas_Object *win, *bg, *bx, *bt, *hv, *ic;
char buf[PATH_MAX];
win = elm_win_add(NULL, "hover", ELM_WIN_BASIC);
@ -507,6 +507,12 @@ my_bt_11(void *data, Evas_Object *obj, void *event_info)
bx = elm_box_add(win);
ic = elm_icon_add(win);
snprintf(buf, sizeof(buf), "%s/images/logo_small.png", PACKAGE_DATA_DIR);
elm_icon_file_set(ic, buf, NULL);
elm_icon_scale_set(ic, 0, 0);
elm_box_pack_end(bx, ic);
evas_object_show(ic);
bt = elm_button_add(win);
elm_button_label_set(bt, "Top 1");
elm_box_pack_end(bx, bt);

View File

@ -28,6 +28,7 @@ static void
_del_hook(Evas_Object *obj)
{
Widget_Data *wd = elm_widget_data_get(obj);
elm_hover_target_set(obj, NULL);
elm_hover_parent_set(obj, NULL);
while (wd->subs)
{
@ -119,6 +120,13 @@ _hov_hide(void *data, Evas *e, Evas_Object *obj, void *event_info)
evas_object_hide(wd->cov);
}
static void
_target_del(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
Widget_Data *wd = elm_widget_data_get(data);
wd->target = NULL;
}
static void
_signal_dismiss(void *data, Evas_Object *obj, const char *emission, const char *source)
{
@ -143,7 +151,6 @@ static void
_parent_show(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
Widget_Data *wd = elm_widget_data_get(data);
evas_object_show(wd->cov);
}
static void
@ -211,9 +218,17 @@ EAPI void
elm_hover_target_set(Evas_Object *obj, Evas_Object *target)
{
Widget_Data *wd = elm_widget_data_get(obj);
if (wd->target)
{
evas_object_event_callback_del(wd->target, EVAS_CALLBACK_DEL, _target_del);
}
wd->target = target;
elm_widget_hover_object_set(target, obj);
_sizing_eval(obj);
if (wd->target)
{
evas_object_event_callback_add(wd->target, EVAS_CALLBACK_DEL, _target_del, obj);
elm_widget_hover_object_set(target, obj);
_sizing_eval(obj);
}
}
EAPI void