forked from enlightenment/efl
parent
a0fd0771f5
commit
39c45fe2ea
|
@ -87,13 +87,13 @@ extern "C" {
|
||||||
EAPI void elm_win_alpha_set(Evas_Object *obj, Evas_Bool alpha);
|
EAPI void elm_win_alpha_set(Evas_Object *obj, Evas_Bool alpha);
|
||||||
EAPI void elm_win_override_set(Evas_Object *obj, Evas_Bool override);
|
EAPI void elm_win_override_set(Evas_Object *obj, Evas_Bool override);
|
||||||
// FIXME: implement more of the above calls
|
// FIXME: implement more of the above calls
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
* "delete-request" - the user requested to delete the window
|
* "delete-request" - the user requested to delete the window
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_bg_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_bg_add(Evas_Object *parent);
|
||||||
EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group);
|
EAPI void elm_bg_file_set(Evas_Object *obj, const char *file, const char *group);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_icon_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_icon_add(Evas_Object *parent);
|
||||||
|
@ -102,7 +102,7 @@ extern "C" {
|
||||||
EAPI void elm_icon_no_scale_set(Evas_Object *obj, Evas_Bool no_scale);
|
EAPI void elm_icon_no_scale_set(Evas_Object *obj, Evas_Bool no_scale);
|
||||||
EAPI void elm_icon_scale_set(Evas_Object *obj, Evas_Bool scale_up, Evas_Bool scale_down);
|
EAPI void elm_icon_scale_set(Evas_Object *obj, Evas_Bool scale_up, Evas_Bool scale_down);
|
||||||
EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Evas_Bool fill_outside);
|
EAPI void elm_icon_fill_outside_set(Evas_Object *obj, Evas_Bool fill_outside);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
* "clicked" - the user clicked the icon
|
* "clicked" - the user clicked the icon
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -113,24 +113,24 @@ extern "C" {
|
||||||
EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj);
|
EAPI void elm_box_pack_end(Evas_Object *obj, Evas_Object *subobj);
|
||||||
EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before);
|
EAPI void elm_box_pack_before(Evas_Object *obj, Evas_Object *subobj, Evas_Object *before);
|
||||||
EAPI void elm_box_pack_after(Evas_Object *obj, Evas_Object *subobj, Evas_Object *after);
|
EAPI void elm_box_pack_after(Evas_Object *obj, Evas_Object *subobj, Evas_Object *after);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_button_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_button_add(Evas_Object *parent);
|
||||||
EAPI void elm_button_label_set(Evas_Object *obj, const char *label);
|
EAPI void elm_button_label_set(Evas_Object *obj, const char *label);
|
||||||
EAPI void elm_button_icon_set(Evas_Object *obj, Evas_Object *icon);
|
EAPI void elm_button_icon_set(Evas_Object *obj, Evas_Object *icon);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
* "clicked" - the user clicked the button
|
* "clicked" - the user clicked the button
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_scroller_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_scroller_add(Evas_Object *parent);
|
||||||
EAPI void elm_scroller_content_set(Evas_Object *obj, Evas_Object *child);
|
EAPI void elm_scroller_content_set(Evas_Object *obj, Evas_Object *child);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_label_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_label_add(Evas_Object *parent);
|
||||||
EAPI void elm_label_label_set(Evas_Object *obj, const char *label);
|
EAPI void elm_label_label_set(Evas_Object *obj, const char *label);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_toggle_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_toggle_add(Evas_Object *parent);
|
||||||
|
@ -139,20 +139,20 @@ extern "C" {
|
||||||
EAPI void elm_toggle_states_labels_set(Evas_Object *obj, const char *onlabel, const char *offlabel);
|
EAPI void elm_toggle_states_labels_set(Evas_Object *obj, const char *onlabel, const char *offlabel);
|
||||||
EAPI void elm_toggle_state_set(Evas_Object *obj, Evas_Bool state);
|
EAPI void elm_toggle_state_set(Evas_Object *obj, Evas_Bool state);
|
||||||
EAPI void elm_toggle_state_pointer_set(Evas_Object *obj, Evas_Bool *statep);
|
EAPI void elm_toggle_state_pointer_set(Evas_Object *obj, Evas_Bool *statep);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
* "changed" - the user toggled the state
|
* "changed" - the user toggled the state
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_frame_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_frame_add(Evas_Object *parent);
|
||||||
EAPI void elm_frame_label_set(Evas_Object *obj, const char *label);
|
EAPI void elm_frame_label_set(Evas_Object *obj, const char *label);
|
||||||
EAPI void elm_frame_content_set(Evas_Object *obj, Evas_Object *content);
|
EAPI void elm_frame_content_set(Evas_Object *obj, Evas_Object *content);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_table_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_table_add(Evas_Object *parent);
|
||||||
EAPI void elm_table_homogenous_set(Evas_Object *obj, Evas_Bool homogenous);
|
EAPI void elm_table_homogenous_set(Evas_Object *obj, Evas_Bool homogenous);
|
||||||
EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h);
|
EAPI void elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int x, int y, int w, int h);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_clock_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_clock_add(Evas_Object *parent);
|
||||||
|
@ -161,7 +161,7 @@ extern "C" {
|
||||||
EAPI void elm_clock_edit_set(Evas_Object *obj, Evas_Bool edit);
|
EAPI void elm_clock_edit_set(Evas_Object *obj, Evas_Bool edit);
|
||||||
EAPI void elm_clock_show_am_pm_set(Evas_Object *obj, Evas_Bool am_pm);
|
EAPI void elm_clock_show_am_pm_set(Evas_Object *obj, Evas_Bool am_pm);
|
||||||
EAPI void elm_clock_show_seconds_set(Evas_Object *obj, Evas_Bool seconds);
|
EAPI void elm_clock_show_seconds_set(Evas_Object *obj, Evas_Bool seconds);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
* "changed" - the user changed the time
|
* "changed" - the user changed the time
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -169,15 +169,14 @@ extern "C" {
|
||||||
EAPI void elm_layout_file_set(Evas_Object *obj, const char *file, const char *group);
|
EAPI void elm_layout_file_set(Evas_Object *obj, const char *file, const char *group);
|
||||||
EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
|
EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
|
||||||
EAPI Evas_Object *elm_layout_edje_get(Evas_Object *obj);
|
EAPI Evas_Object *elm_layout_edje_get(Evas_Object *obj);
|
||||||
/* smart callbacks elm_win objects will call:
|
/* smart callbacks called:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
EAPI Evas_Object *elm_hover_add(Evas_Object *parent);
|
EAPI Evas_Object *elm_hover_add(Evas_Object *parent);
|
||||||
EAPI void elm_hover_target_set(Evas_Object *obj, Evas_Object *target);
|
EAPI void elm_hover_target_set(Evas_Object *obj, Evas_Object *target);
|
||||||
EAPI void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
|
EAPI void elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
|
||||||
EAPI void elm_hover_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
|
EAPI void elm_hover_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
|
||||||
|
/* smart callbacks called:
|
||||||
/* smart callbacks elm_win objects will call:
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// FIXME: fixes to do
|
// FIXME: fixes to do
|
||||||
|
@ -185,11 +184,8 @@ extern "C" {
|
||||||
// * scroller could do with page up/down/left/right buttons and and idea of
|
// * scroller could do with page up/down/left/right buttons and and idea of
|
||||||
// a page size
|
// a page size
|
||||||
// * tab widget focusing (not useful for touchscreen tho...)
|
// * tab widget focusing (not useful for touchscreen tho...)
|
||||||
// * icon should optionally be able to collect events and call clicked
|
|
||||||
// callbacks
|
|
||||||
// * hover needs a way to animate show/hide (slide out slots) and have some
|
// * hover needs a way to animate show/hide (slide out slots) and have some
|
||||||
// graphics for around middle
|
// graphics for around middle
|
||||||
// * hover needs to track move/resize and del of parent
|
|
||||||
// * hover needs to be able to use custom hover style
|
// * hover needs to be able to use custom hover style
|
||||||
// * frame needs to be able to use custom frame style
|
// * frame needs to be able to use custom frame style
|
||||||
// * all widgets need a way to use a custom style
|
// * all widgets need a way to use a custom style
|
||||||
|
|
|
@ -28,6 +28,7 @@ static void
|
||||||
_del_hook(Evas_Object *obj)
|
_del_hook(Evas_Object *obj)
|
||||||
{
|
{
|
||||||
Widget_Data *wd = elm_widget_data_get(obj);
|
Widget_Data *wd = elm_widget_data_get(obj);
|
||||||
|
elm_hover_parent_set(obj, NULL);
|
||||||
while (wd->subs)
|
while (wd->subs)
|
||||||
{
|
{
|
||||||
Subinfo *si = wd->subs->data;
|
Subinfo *si = wd->subs->data;
|
||||||
|
@ -126,6 +127,40 @@ _signal_dismiss(void *data, Evas_Object *obj, const char *emission, const char *
|
||||||
evas_object_hide(data);
|
evas_object_hide(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_parent_move(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||||
|
{
|
||||||
|
_sizing_eval(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_parent_resize(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||||
|
{
|
||||||
|
_sizing_eval(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
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
|
||||||
|
_parent_hide(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||||
|
{
|
||||||
|
Widget_Data *wd = elm_widget_data_get(data);
|
||||||
|
evas_object_hide(wd->cov);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_parent_del(void *data, Evas *e, Evas_Object *obj, void *event_info)
|
||||||
|
{
|
||||||
|
Widget_Data *wd = elm_widget_data_get(data);
|
||||||
|
wd->parent = NULL;
|
||||||
|
_sizing_eval(data);
|
||||||
|
}
|
||||||
|
|
||||||
EAPI Evas_Object *
|
EAPI Evas_Object *
|
||||||
elm_hover_add(Evas_Object *parent)
|
elm_hover_add(Evas_Object *parent)
|
||||||
{
|
{
|
||||||
|
@ -185,8 +220,24 @@ EAPI void
|
||||||
elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent)
|
elm_hover_parent_set(Evas_Object *obj, Evas_Object *parent)
|
||||||
{
|
{
|
||||||
Widget_Data *wd = elm_widget_data_get(obj);
|
Widget_Data *wd = elm_widget_data_get(obj);
|
||||||
|
if (wd->parent)
|
||||||
|
{
|
||||||
|
evas_object_event_callback_del(wd->parent, EVAS_CALLBACK_MOVE, _parent_move);
|
||||||
|
evas_object_event_callback_del(wd->parent, EVAS_CALLBACK_RESIZE, _parent_resize);
|
||||||
|
evas_object_event_callback_del(wd->parent, EVAS_CALLBACK_SHOW, _parent_show);
|
||||||
|
evas_object_event_callback_del(wd->parent, EVAS_CALLBACK_HIDE, _parent_hide);
|
||||||
|
evas_object_event_callback_del(wd->parent, EVAS_CALLBACK_DEL, _parent_del);
|
||||||
|
}
|
||||||
wd->parent = parent;
|
wd->parent = parent;
|
||||||
|
if (wd->parent)
|
||||||
|
{
|
||||||
|
evas_object_event_callback_add(wd->parent, EVAS_CALLBACK_MOVE, _parent_move, obj);
|
||||||
|
evas_object_event_callback_add(wd->parent, EVAS_CALLBACK_RESIZE, _parent_resize, obj);
|
||||||
|
evas_object_event_callback_add(wd->parent, EVAS_CALLBACK_SHOW, _parent_show, obj);
|
||||||
|
evas_object_event_callback_add(wd->parent, EVAS_CALLBACK_HIDE, _parent_hide, obj);
|
||||||
|
evas_object_event_callback_add(wd->parent, EVAS_CALLBACK_DEL, _parent_del, obj);
|
||||||
elm_widget_sub_object_add(parent, obj);
|
elm_widget_sub_object_add(parent, obj);
|
||||||
|
}
|
||||||
_sizing_eval(obj);
|
_sizing_eval(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue