|
|
|
@ -10,8 +10,8 @@ struct _E_Widget_Data |
|
|
|
|
Evas_Object *o_base, *o_box, *o_scrollframe0; |
|
|
|
|
int icon_w, icon_h; |
|
|
|
|
Eina_List *items; |
|
|
|
|
Evas_Bool scrollable : 1; |
|
|
|
|
Evas_Bool focus_steal : 1; |
|
|
|
|
Eina_Bool scrollable : 1; |
|
|
|
|
Eina_Bool focus_steal : 1; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
struct _Item |
|
|
|
@ -19,7 +19,7 @@ struct _Item |
|
|
|
|
Evas_Object *o_toolbar, *o_base, *o_icon; |
|
|
|
|
void (*func) (void *data1, void *data2); |
|
|
|
|
const void *data1, *data2; |
|
|
|
|
Evas_Bool selected : 1; |
|
|
|
|
Eina_Bool selected : 1; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static void _e_wid_del_hook(Evas_Object *obj); |
|
|
|
@ -50,7 +50,7 @@ e_widget_toolbar_add(Evas *evas, int icon_w, int icon_h) |
|
|
|
|
e_widget_data_set(obj, wd); |
|
|
|
|
wd->icon_w = icon_w; |
|
|
|
|
wd->icon_h = icon_h; |
|
|
|
|
wd->focus_steal = 1; |
|
|
|
|
wd->focus_steal = EINA_TRUE; |
|
|
|
|
|
|
|
|
|
o = e_scrollframe_add(evas); |
|
|
|
|
wd->o_base = o; |
|
|
|
@ -167,7 +167,7 @@ e_widget_toolbar_item_select(Evas_Object *obj, int num) |
|
|
|
|
{ |
|
|
|
|
if (!it->selected) |
|
|
|
|
{ |
|
|
|
|
it->selected = 1; |
|
|
|
|
it->selected = EINA_TRUE; |
|
|
|
|
edje_object_signal_emit(it->o_base, "e,state,selected", "e"); |
|
|
|
|
edje_object_signal_emit(it->o_icon, "e,state,selected", "e"); |
|
|
|
|
_item_show(it); |
|
|
|
@ -178,7 +178,7 @@ e_widget_toolbar_item_select(Evas_Object *obj, int num) |
|
|
|
|
{ |
|
|
|
|
if (it->selected) |
|
|
|
|
{ |
|
|
|
|
it->selected = 0; |
|
|
|
|
it->selected = EINA_FALSE; |
|
|
|
|
edje_object_signal_emit(it->o_base, "e,state,unselected", "e"); |
|
|
|
|
edje_object_signal_emit(it->o_icon, "e,state,unselected", "e"); |
|
|
|
|
} |
|
|
|
@ -211,7 +211,7 @@ e_widget_toolbar_item_label_set(Evas_Object *obj, int num, const char *label) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
EAPI void |
|
|
|
|
e_widget_toolbar_scrollable_set(Evas_Object *obj, Evas_Bool scrollable) |
|
|
|
|
e_widget_toolbar_scrollable_set(Evas_Object *obj, Eina_Bool scrollable) |
|
|
|
|
{ |
|
|
|
|
E_Widget_Data *wd; |
|
|
|
|
Evas_Coord mw = 0, mh = 0, vw = 0, vh = 0; |
|
|
|
@ -229,7 +229,7 @@ e_widget_toolbar_scrollable_set(Evas_Object *obj, Evas_Bool scrollable) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
EAPI void |
|
|
|
|
e_widget_toolbar_focus_steal_set(Evas_Object *obj, Evas_Bool steal) |
|
|
|
|
e_widget_toolbar_focus_steal_set(Evas_Object *obj, Eina_Bool steal) |
|
|
|
|
{ |
|
|
|
|
E_Widget_Data *wd; |
|
|
|
|
|
|
|
|
@ -240,14 +240,14 @@ e_widget_toolbar_focus_steal_set(Evas_Object *obj, Evas_Bool steal) |
|
|
|
|
evas_object_event_callback_add(e_scrollframe_edje_object_get(wd->o_base),
|
|
|
|
|
EVAS_CALLBACK_MOUSE_DOWN, |
|
|
|
|
_e_wid_focus_steal, obj); |
|
|
|
|
wd->focus_steal = 1; |
|
|
|
|
wd->focus_steal = EINA_TRUE; |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
evas_object_event_callback_del(e_scrollframe_edje_object_get(wd->o_base),
|
|
|
|
|
EVAS_CALLBACK_MOUSE_DOWN, |
|
|
|
|
_e_wid_focus_steal); |
|
|
|
|
wd->focus_steal = 0; |
|
|
|
|
wd->focus_steal = EINA_FALSE; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -299,13 +299,13 @@ _e_wid_signal_cb1(void *data, Evas_Object *obj, const char *emission, const char |
|
|
|
|
it2 = l->data; |
|
|
|
|
if (it2->selected) |
|
|
|
|
{ |
|
|
|
|
it2->selected = 0; |
|
|
|
|
it2->selected = EINA_FALSE; |
|
|
|
|
edje_object_signal_emit(it2->o_base, "e,state,unselected", "e"); |
|
|
|
|
edje_object_signal_emit(it2->o_icon, "e,state,unselected", "e"); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
it->selected = 1; |
|
|
|
|
it->selected = EINA_TRUE; |
|
|
|
|
edje_object_signal_emit(it->o_base, "e,state,selected", "e"); |
|
|
|
|
edje_object_signal_emit(it->o_icon, "e,state,selected", "e"); |
|
|
|
|
_item_show(it); |
|
|
|
@ -407,10 +407,10 @@ _e_wid_cb_key_down(void *data, Evas *evas, Evas_Object *obj, void *event_info) |
|
|
|
|
} |
|
|
|
|
if ((it) && (it2) && (it != it2)) |
|
|
|
|
{ |
|
|
|
|
it->selected = 0; |
|
|
|
|
it->selected = EINA_FALSE; |
|
|
|
|
edje_object_signal_emit(it->o_base, "e,state,unselected", "e"); |
|
|
|
|
edje_object_signal_emit(it->o_icon, "e,state,unselected", "e"); |
|
|
|
|
it2->selected = 1; |
|
|
|
|
it2->selected = EINA_TRUE; |
|
|
|
|
edje_object_signal_emit(it2->o_base, "e,state,selected", "e"); |
|
|
|
|
edje_object_signal_emit(it2->o_icon, "e,state,selected", "e"); |
|
|
|
|
_item_show(it2); |
|
|
|
|