edje: add set_pointer_mode() to embryo functions
this should probably be a description-level property
This commit is contained in:
parent
7fafbdee28
commit
4c431c8b9c
|
@ -133,6 +133,7 @@ native set_min_size (Float:w, Float:h);
|
|||
native set_max_size (Float:w, Float:h);
|
||||
native set_mouse_events (part_id, ev);
|
||||
native get_mouse_events (part_id);
|
||||
native set_pointer_mode(part_id, mode);
|
||||
native set_repeat_events(part_id, rep);
|
||||
native get_repeat_events(part_id);
|
||||
native set_ignore_flags (part_id, flags);
|
||||
|
|
|
@ -187,6 +187,14 @@
|
|||
* //set_effect(part_id, Effect:fx)
|
||||
* set_mouse_events(part_id, ev)
|
||||
* get_mouse_events(part_id)
|
||||
*
|
||||
* Pointer_Mode {
|
||||
* POINTER_MODE_AUTOGRAB = 0,
|
||||
* POINTER_MODE_NOGRAB = 1,
|
||||
* POINTER_MODE_NOGREP = 2,
|
||||
* }
|
||||
*
|
||||
* set_pointer_mode(part_id, mode)
|
||||
* set_repeat_events(part_id, rep)
|
||||
* get_repeat_events(part_id)
|
||||
* set_ignore_flags(part_id, flags)
|
||||
|
@ -3600,6 +3608,28 @@ _edje_embryo_fn_get_mouse_events(Embryo_Program *ep, Embryo_Cell *params)
|
|||
|
||||
}
|
||||
|
||||
/* set_pointer_mode(part_id, mode) */
|
||||
static Embryo_Cell
|
||||
_edje_embryo_fn_set_pointer_mode(Embryo_Program *ep, Embryo_Cell *params)
|
||||
{
|
||||
int part_id = 0;
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
||||
CHKPARAM(2);
|
||||
|
||||
part_id = params[1];
|
||||
if (part_id < 0) return 0;
|
||||
|
||||
ed = embryo_program_data_get(ep);
|
||||
rp = ed->table_parts[part_id % ed->table_parts_size];
|
||||
|
||||
if (rp)
|
||||
_edje_real_part_pointer_mode_set(ed, rp, params[2]);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* set_repeat_events(part_id, rep) */
|
||||
static Embryo_Cell
|
||||
_edje_embryo_fn_set_repeat_events(Embryo_Program *ep, Embryo_Cell *params)
|
||||
|
@ -4557,6 +4587,7 @@ _edje_embryo_script_init(Edje_Part_Collection *edc)
|
|||
|
||||
embryo_program_native_call_add(ep, "set_mouse_events", _edje_embryo_fn_set_mouse_events);
|
||||
embryo_program_native_call_add(ep, "get_mouse_events", _edje_embryo_fn_get_mouse_events);
|
||||
embryo_program_native_call_add(ep, "set_pointer_mode", _edje_embryo_fn_set_pointer_mode);
|
||||
embryo_program_native_call_add(ep, "set_repeat_events", _edje_embryo_fn_set_repeat_events);
|
||||
embryo_program_native_call_add(ep, "get_repeat_events", _edje_embryo_fn_get_repeat_events);
|
||||
embryo_program_native_call_add(ep, "set_ignore_flags", _edje_embryo_fn_set_ignore_flags);
|
||||
|
|
|
@ -2028,6 +2028,7 @@ struct _Edje_Real_Part
|
|||
FLOAT_T description_pos; // 8
|
||||
Edje_Rectangle req; // 16
|
||||
int x, y, w, h; // 16
|
||||
Evas_Object_Pointer_Mode pointer_mode;
|
||||
#ifdef EDJE_CALC_CACHE
|
||||
unsigned short state; // 2
|
||||
#endif
|
||||
|
@ -3090,6 +3091,7 @@ Eina_Bool _edje_real_part_mouse_events_get(Edje *ed, Edje_Real_Part *rp);
|
|||
void _edje_real_part_mouse_events_set(Edje *ed, Edje_Real_Part *rp, Eina_Bool mouse_events);
|
||||
Eina_Bool _edje_real_part_repeat_events_get(Edje *ed, Edje_Real_Part *rp);
|
||||
void _edje_real_part_repeat_events_set(Edje *ed, Edje_Real_Part *rp, Eina_Bool repeat_events);
|
||||
void _edje_real_part_pointer_mode_set(Edje *ed, Edje_Real_Part *rp, Evas_Object_Pointer_Mode mode);
|
||||
Evas_Event_Flags _edje_real_part_ignore_flags_get(Edje *ed, Edje_Real_Part *rp);
|
||||
void _edje_real_part_ignore_flags_set(Edje *ed, Edje_Real_Part *rp, Evas_Event_Flags ignore_flags);
|
||||
Evas_Event_Flags _edje_real_part_mask_flags_get(Edje *ed, Edje_Real_Part *rp);
|
||||
|
|
|
@ -6524,6 +6524,16 @@ _edje_real_part_repeat_events_set(Edje *ed EINA_UNUSED, Edje_Real_Part *rp, Eina
|
|||
evas_object_repeat_events_set(rp->object, 0);
|
||||
}
|
||||
|
||||
void
|
||||
_edje_real_part_pointer_mode_set(Edje *ed EINA_UNUSED, Edje_Real_Part *rp, Evas_Object_Pointer_Mode mode)
|
||||
{
|
||||
if (!rp) return;
|
||||
|
||||
rp->pointer_mode = mode;
|
||||
|
||||
evas_object_pointer_mode_set(rp->object, mode);
|
||||
}
|
||||
|
||||
Evas_Event_Flags
|
||||
_edje_real_part_ignore_flags_get(Edje *ed EINA_UNUSED, Edje_Real_Part *rp)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue