forked from enlightenment/efl
Efl: Rename Efl.Pointer.Event into Efl.Event.Pointer
Also renames two types: Efl.Pointer.Flags and Efl.Event.Flags
This commit is contained in:
parent
9b4a6ba639
commit
b0a32b0bd0
|
@ -43,7 +43,7 @@ evas_eolian_pub_files = \
|
||||||
lib/evas/canvas/efl_canvas_surface_wayland.eo \
|
lib/evas/canvas/efl_canvas_surface_wayland.eo \
|
||||||
lib/evas/canvas/evas_filter.eo \
|
lib/evas/canvas/evas_filter.eo \
|
||||||
lib/evas/canvas/evas_smart_clipped.eo \
|
lib/evas/canvas/evas_smart_clipped.eo \
|
||||||
lib/evas/canvas/efl_pointer_event.eo \
|
lib/evas/canvas/efl_event_pointer.eo \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
evas_eolian_legacy_files = \
|
evas_eolian_legacy_files = \
|
||||||
|
@ -198,7 +198,7 @@ lib/evas/canvas/efl_canvas_surface.c \
|
||||||
lib/evas/canvas/efl_canvas_surface_tbm.c \
|
lib/evas/canvas/efl_canvas_surface_tbm.c \
|
||||||
lib/evas/canvas/efl_canvas_surface_x11.c \
|
lib/evas/canvas/efl_canvas_surface_x11.c \
|
||||||
lib/evas/canvas/efl_canvas_surface_wayland.c \
|
lib/evas/canvas/efl_canvas_surface_wayland.c \
|
||||||
lib/evas/canvas/efl_pointer_event.c \
|
lib/evas/canvas/efl_event_pointer.c \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
EXTRA_DIST += \
|
EXTRA_DIST += \
|
||||||
|
|
|
@ -4296,7 +4296,7 @@ ecore_evas_psl1ght_new(const char* name, int w, int h)
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
_pointer_position_set(Efl_Pointer_Event_Data *ev, Ecore_Evas *ee, double mx, double my)
|
_pointer_position_set(Efl_Event_Pointer_Data *ev, Ecore_Evas *ee, double mx, double my)
|
||||||
{
|
{
|
||||||
int fx, fy, fw, fh;
|
int fx, fy, fw, fh;
|
||||||
|
|
||||||
|
@ -4337,8 +4337,8 @@ _event_description_get(Efl_Pointer_Action action)
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_Pointer_Action action)
|
_direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_Pointer_Action action)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev;
|
Efl_Event_Pointer_Data *ev;
|
||||||
Efl_Pointer_Event *evt;
|
Efl_Event_Pointer *evt;
|
||||||
Evas *e = ee->evas;
|
Evas *e = ee->evas;
|
||||||
Eina_Bool processed;
|
Eina_Bool processed;
|
||||||
|
|
||||||
|
@ -4351,13 +4351,13 @@ _direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_P
|
||||||
* modifiers (already passed to evas, no need to do anything)
|
* modifiers (already passed to evas, no need to do anything)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
evt = efl_pointer_event_instance_get(EFL_POINTER_EVENT_CLASS, e, (void **) &ev);
|
evt = efl_event_pointer_instance_get(EFL_EVENT_POINTER_CLASS, e, (void **) &ev);
|
||||||
if (!evt) return EINA_FALSE;
|
if (!evt) return EINA_FALSE;
|
||||||
|
|
||||||
ev->action = action;
|
ev->action = action;
|
||||||
ev->button = info->buttons;
|
ev->button = info->buttons;
|
||||||
if (info->double_click) ev->button_flags |= EFL_POINTER_BUTTON_FLAGS_DOUBLE_CLICK;
|
if (info->double_click) ev->button_flags |= EFL_POINTER_FLAGS_DOUBLE_CLICK;
|
||||||
if (info->triple_click) ev->button_flags |= EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK;
|
if (info->triple_click) ev->button_flags |= EFL_POINTER_FLAGS_TRIPLE_CLICK;
|
||||||
ev->timestamp = info->timestamp;
|
ev->timestamp = info->timestamp;
|
||||||
ev->finger = info->multi.device;
|
ev->finger = info->multi.device;
|
||||||
_pointer_position_set(ev, ee, info->multi.x, info->multi.y);
|
_pointer_position_set(ev, ee, info->multi.x, info->multi.y);
|
||||||
|
@ -4395,8 +4395,8 @@ _direct_mouse_cancel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info)
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
|
_direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev;
|
Efl_Event_Pointer_Data *ev;
|
||||||
Efl_Pointer_Event *evt;
|
Efl_Event_Pointer *evt;
|
||||||
Evas *e = ee->evas;
|
Evas *e = ee->evas;
|
||||||
Eina_Bool processed;
|
Eina_Bool processed;
|
||||||
|
|
||||||
|
@ -4409,7 +4409,7 @@ _direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
|
||||||
* modifiers (already passed to evas, no need to do anything)
|
* modifiers (already passed to evas, no need to do anything)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
evt = efl_pointer_event_instance_get(EFL_POINTER_EVENT_CLASS, e, (void **) &ev);
|
evt = efl_event_pointer_instance_get(EFL_EVENT_POINTER_CLASS, e, (void **) &ev);
|
||||||
if (!evt) return EINA_FALSE;
|
if (!evt) return EINA_FALSE;
|
||||||
|
|
||||||
ev->action = EFL_POINTER_ACTION_MOVE;
|
ev->action = EFL_POINTER_ACTION_MOVE;
|
||||||
|
@ -4433,8 +4433,8 @@ _direct_mouse_move_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Move *info)
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
|
_direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev;
|
Efl_Event_Pointer_Data *ev;
|
||||||
Efl_Pointer_Event *evt;
|
Efl_Event_Pointer *evt;
|
||||||
Evas *e = ee->evas;
|
Evas *e = ee->evas;
|
||||||
Eina_Bool processed;
|
Eina_Bool processed;
|
||||||
|
|
||||||
|
@ -4446,7 +4446,7 @@ _direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
|
||||||
* modifiers (already passed to evas, no need to do anything)
|
* modifiers (already passed to evas, no need to do anything)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
evt = efl_pointer_event_instance_get(EFL_POINTER_EVENT_CLASS, e, (void **) &ev);
|
evt = efl_event_pointer_instance_get(EFL_EVENT_POINTER_CLASS, e, (void **) &ev);
|
||||||
if (!evt) return EINA_FALSE;
|
if (!evt) return EINA_FALSE;
|
||||||
|
|
||||||
ev->action = EFL_POINTER_ACTION_WHEEL;
|
ev->action = EFL_POINTER_ACTION_WHEEL;
|
||||||
|
@ -4465,8 +4465,8 @@ _direct_mouse_wheel_cb(Ecore_Evas *ee, const Ecore_Event_Mouse_Wheel *info)
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_direct_mouse_inout(Ecore_Evas *ee, const Ecore_Event_Mouse_IO *info, Efl_Pointer_Action action)
|
_direct_mouse_inout(Ecore_Evas *ee, const Ecore_Event_Mouse_IO *info, Efl_Pointer_Action action)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev;
|
Efl_Event_Pointer_Data *ev;
|
||||||
Efl_Pointer_Event *evt;
|
Efl_Event_Pointer *evt;
|
||||||
Evas *e = ee->evas;
|
Evas *e = ee->evas;
|
||||||
Eina_Bool processed;
|
Eina_Bool processed;
|
||||||
|
|
||||||
|
@ -4475,7 +4475,7 @@ _direct_mouse_inout(Ecore_Evas *ee, const Ecore_Event_Mouse_IO *info, Efl_Pointe
|
||||||
* modifiers (already passed to evas, no need to do anything)
|
* modifiers (already passed to evas, no need to do anything)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
evt = efl_pointer_event_instance_get(EFL_POINTER_EVENT_CLASS, e, (void **) &ev);
|
evt = efl_event_pointer_instance_get(EFL_EVENT_POINTER_CLASS, e, (void **) &ev);
|
||||||
if (!evt) return EINA_FALSE;
|
if (!evt) return EINA_FALSE;
|
||||||
|
|
||||||
ev->action = action;
|
ev->action = action;
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
|
|
||||||
#include <Efl.h>
|
#include <Efl.h>
|
||||||
|
|
||||||
typedef struct _Efl_Pointer_Event_Data Efl_Pointer_Event_Data;
|
typedef struct _Efl_Event_Pointer_Data Efl_Event_Pointer_Data;
|
||||||
typedef struct _Efl_Input_Device_Data Efl_Input_Device_Data;
|
typedef struct _Efl_Input_Device_Data Efl_Input_Device_Data;
|
||||||
typedef struct _Efl_Input_State_Data Efl_Input_State_Data;
|
typedef struct _Efl_Input_State_Data Efl_Input_State_Data;
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ typedef struct _Evas_Modifier Evas_Modifier;
|
||||||
typedef struct _Evas_Lock Evas_Lock;
|
typedef struct _Evas_Lock Evas_Lock;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct _Efl_Pointer_Event_Data
|
struct _Efl_Event_Pointer_Data
|
||||||
{
|
{
|
||||||
Eo *eo;
|
Eo *eo;
|
||||||
unsigned int timestamp; /* FIXME: store as double? */
|
unsigned int timestamp; /* FIXME: store as double? */
|
||||||
|
@ -42,8 +42,8 @@ struct _Efl_Pointer_Event_Data
|
||||||
Efl_Gfx *source; /* could it be ecore? */
|
Efl_Gfx *source; /* could it be ecore? */
|
||||||
Efl_Input_Device *device;
|
Efl_Input_Device *device;
|
||||||
Efl_Pointer_Action action;
|
Efl_Pointer_Action action;
|
||||||
Efl_Pointer_Button_Flags button_flags;
|
Efl_Pointer_Flags button_flags;
|
||||||
Efl_Pointer_Event_Flags event_flags;
|
Efl_Event_Flags event_flags;
|
||||||
void *data; /* evas data - whatever that is */
|
void *data; /* evas data - whatever that is */
|
||||||
const Eo_Event_Description *event_desc;
|
const Eo_Event_Description *event_desc;
|
||||||
Eina_Bool window_pos; /* true if positions are window-relative
|
Eina_Bool window_pos; /* true if positions are window-relative
|
||||||
|
|
|
@ -18,7 +18,7 @@ enum Efl.Pointer.Action
|
||||||
axis, [[Joystick event.]]
|
axis, [[Joystick event.]]
|
||||||
}
|
}
|
||||||
|
|
||||||
enum Efl.Pointer.Button_Flags
|
enum Efl.Pointer.Flags
|
||||||
{
|
{
|
||||||
/* Evas.Button_Flags */
|
/* Evas.Button_Flags */
|
||||||
none = 0, [[No extra mouse button data]]
|
none = 0, [[No extra mouse button data]]
|
||||||
|
@ -26,7 +26,7 @@ enum Efl.Pointer.Button_Flags
|
||||||
triple_click = (1 << 1), [[This mouse button press was the 3rd press of a triple click]]
|
triple_click = (1 << 1), [[This mouse button press was the 3rd press of a triple click]]
|
||||||
}
|
}
|
||||||
|
|
||||||
enum Efl.Pointer.Event_Flags
|
enum Efl.Event.Flags
|
||||||
{
|
{
|
||||||
/* Evas.Event_Flags */
|
/* Evas.Event_Flags */
|
||||||
none = 0, [[No fancy flags set]]
|
none = 0, [[No fancy flags set]]
|
||||||
|
|
|
@ -6,12 +6,12 @@ interface Efl.Input.Interface ()
|
||||||
]]
|
]]
|
||||||
event_prefix: efl;
|
event_prefix: efl;
|
||||||
events {
|
events {
|
||||||
pointer,move: Efl.Pointer.Event;
|
pointer,move: Efl.Event.Pointer;
|
||||||
pointer,down: Efl.Pointer.Event;
|
pointer,down: Efl.Event.Pointer;
|
||||||
pointer,up: Efl.Pointer.Event;
|
pointer,up: Efl.Event.Pointer;
|
||||||
pointer,cancel: Efl.Pointer.Event;
|
pointer,cancel: Efl.Event.Pointer;
|
||||||
pointer,in: Efl.Pointer.Event;
|
pointer,in: Efl.Event.Pointer;
|
||||||
pointer,out: Efl.Pointer.Event;
|
pointer,out: Efl.Event.Pointer;
|
||||||
pointer,wheel: Efl.Pointer.Event;
|
pointer,wheel: Efl.Event.Pointer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -631,7 +631,7 @@ abstract Elm.Widget (Evas.Object.Smart, Elm.Interface.Atspi_Accessible, Elm.Inte
|
||||||
params {
|
params {
|
||||||
@in type: Evas.Callback_Type;
|
@in type: Evas.Callback_Type;
|
||||||
@in event_info: void *;
|
@in event_info: void *;
|
||||||
@in event_flags: Efl.Pointer.Event_Flags *;
|
@in event_flags: Efl.Event.Flags *;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
signal_callback_add {
|
signal_callback_add {
|
||||||
|
|
|
@ -342,17 +342,17 @@ typedef Efl_Input_Device_Sub_Class Evas_Device_Subclass;
|
||||||
#define EVAS_DEVICE_SUBCLASS_TRACKPOINT EFL_INPUT_DEVICE_SUBCLASS_TRACKPOINT /**< A trackpoint style mouse @since 1.8 */
|
#define EVAS_DEVICE_SUBCLASS_TRACKPOINT EFL_INPUT_DEVICE_SUBCLASS_TRACKPOINT /**< A trackpoint style mouse @since 1.8 */
|
||||||
#define EVAS_DEVICE_SUBCLASS_TRACKBALL EFL_INPUT_DEVICE_SUBCLASS_TRACKBALL /**< A trackball style mouse @since 1.8 */
|
#define EVAS_DEVICE_SUBCLASS_TRACKBALL EFL_INPUT_DEVICE_SUBCLASS_TRACKBALL /**< A trackball style mouse @since 1.8 */
|
||||||
|
|
||||||
typedef Efl_Pointer_Button_Flags Evas_Button_Flags;
|
typedef Efl_Pointer_Flags Evas_Button_Flags;
|
||||||
|
|
||||||
#define EVAS_BUTTON_NONE EFL_POINTER_BUTTON_FLAGS_NONE
|
#define EVAS_BUTTON_NONE EFL_POINTER_FLAGS_NONE
|
||||||
#define EVAS_BUTTON_DOUBLE_CLICK EFL_POINTER_BUTTON_FLAGS_DOUBLE_CLICK
|
#define EVAS_BUTTON_DOUBLE_CLICK EFL_POINTER_FLAGS_DOUBLE_CLICK
|
||||||
#define EVAS_BUTTON_TRIPLE_CLICK EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK
|
#define EVAS_BUTTON_TRIPLE_CLICK EFL_POINTER_FLAGS_TRIPLE_CLICK
|
||||||
|
|
||||||
typedef Efl_Pointer_Event_Flags Evas_Event_Flags;
|
typedef Efl_Event_Flags Evas_Event_Flags;
|
||||||
|
|
||||||
#define EVAS_EVENT_FLAG_NONE EFL_POINTER_EVENT_FLAGS_NONE
|
#define EVAS_EVENT_FLAG_NONE EFL_EVENT_FLAGS_NONE
|
||||||
#define EVAS_EVENT_FLAG_ON_HOLD EFL_POINTER_EVENT_FLAGS_ON_HOLD
|
#define EVAS_EVENT_FLAG_ON_HOLD EFL_EVENT_FLAGS_ON_HOLD
|
||||||
#define EVAS_EVENT_FLAG_ON_SCROLL EFL_POINTER_EVENT_FLAGS_ON_SCROLL
|
#define EVAS_EVENT_FLAG_ON_SCROLL EFL_EVENT_FLAGS_ON_SCROLL
|
||||||
|
|
||||||
struct _Evas_Engine_Info /** Generic engine information. Generic info is useless */
|
struct _Evas_Engine_Info /** Generic engine information. Generic info is useless */
|
||||||
{
|
{
|
||||||
|
|
|
@ -300,4 +300,4 @@ typedef void (Evas_Canvas3D_Surface_Func)(Evas_Real *out_x,
|
||||||
#include "canvas/efl_vg_gradient_linear.eo.h"
|
#include "canvas/efl_vg_gradient_linear.eo.h"
|
||||||
#include "canvas/efl_vg_gradient_radial.eo.h"
|
#include "canvas/efl_vg_gradient_radial.eo.h"
|
||||||
|
|
||||||
#include "canvas/efl_pointer_event.eo.h"
|
#include "canvas/efl_event_pointer.eo.h"
|
||||||
|
|
|
@ -439,12 +439,12 @@ EAPI void evas_event_feed_mouse_out(Evas *obj, unsigned int timestam
|
||||||
EAPI void evas_event_feed_mouse_cancel(Evas *obj, unsigned int timestamp, const void *data);
|
EAPI void evas_event_feed_mouse_cancel(Evas *obj, unsigned int timestamp, const void *data);
|
||||||
|
|
||||||
/* multi touch events - no doc */
|
/* multi touch events - no doc */
|
||||||
EAPI void evas_event_input_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data);
|
EAPI void evas_event_input_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data);
|
||||||
EAPI void evas_event_input_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data);
|
EAPI void evas_event_input_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data);
|
||||||
EAPI void evas_event_input_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data);
|
EAPI void evas_event_input_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data);
|
||||||
EAPI void evas_event_feed_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data);
|
EAPI void evas_event_feed_multi_down(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data);
|
||||||
EAPI void evas_event_feed_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data);
|
EAPI void evas_event_feed_multi_move(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, unsigned int timestamp, const void *data);
|
||||||
EAPI void evas_event_feed_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Efl_Pointer_Button_Flags flags, unsigned int timestamp, const void *data);
|
EAPI void evas_event_feed_multi_up(Evas *obj, int d, int x, int y, double rad, double radx, double rady, double pres, double ang, double fx, double fy, Evas_Button_Flags flags, unsigned int timestamp, const void *data);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Key down event feed.
|
* @brief Key down event feed.
|
||||||
|
|
|
@ -0,0 +1,401 @@
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
# include <config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <Evas.h>
|
||||||
|
|
||||||
|
#define EFL_INTERNAL_UNSTABLE
|
||||||
|
#include "interfaces/efl_common_internal.h"
|
||||||
|
|
||||||
|
#define MY_CLASS EFL_EVENT_POINTER_CLASS
|
||||||
|
|
||||||
|
|
||||||
|
/* Pointer Event
|
||||||
|
*
|
||||||
|
* This is a storage class only, should not require ANY knowledge about
|
||||||
|
* Ecore, Evas or anything else.
|
||||||
|
*
|
||||||
|
* This is intended to replace Ecore and Evas structs for mouse events.
|
||||||
|
*
|
||||||
|
* Do not add any logic here.
|
||||||
|
*/
|
||||||
|
|
||||||
|
static Efl_Event_Pointer *s_cached_event = NULL;
|
||||||
|
|
||||||
|
static void
|
||||||
|
_del_hook(Eo *evt)
|
||||||
|
{
|
||||||
|
if (!s_cached_event)
|
||||||
|
{
|
||||||
|
if (eo_parent_get(evt))
|
||||||
|
{
|
||||||
|
eo_ref(evt);
|
||||||
|
eo_parent_set(evt, NULL);
|
||||||
|
}
|
||||||
|
s_cached_event = evt;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
eo_del_intercept_set(evt, NULL);
|
||||||
|
eo_unref(evt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Event_Pointer *
|
||||||
|
_efl_event_pointer_instance_get(Eo_Class *klass EINA_UNUSED, void *pd EINA_UNUSED,
|
||||||
|
Eo *owner, void **priv)
|
||||||
|
{
|
||||||
|
Efl_Event_Pointer *evt;
|
||||||
|
|
||||||
|
if (s_cached_event)
|
||||||
|
{
|
||||||
|
evt = s_cached_event;
|
||||||
|
s_cached_event = NULL;
|
||||||
|
efl_event_reset(evt);
|
||||||
|
eo_parent_set(evt, owner);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
evt = eo_add(EFL_EVENT_POINTER_CLASS, owner);
|
||||||
|
eo_del_intercept_set(evt, _del_hook);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (priv)
|
||||||
|
*priv = eo_data_scope_get(evt, EFL_EVENT_POINTER_CLASS);
|
||||||
|
|
||||||
|
return evt;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_class_destructor(Eo_Class *klass EINA_UNUSED)
|
||||||
|
{
|
||||||
|
// this is a strange situation...
|
||||||
|
eo_unref(s_cached_event);
|
||||||
|
s_cached_event = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eo_Base *
|
||||||
|
_efl_event_pointer_eo_base_constructor(Eo *obj, Efl_Event_Pointer_Data *pd EINA_UNUSED)
|
||||||
|
{
|
||||||
|
eo_constructor(eo_super(obj, MY_CLASS));
|
||||||
|
efl_event_reset(obj);
|
||||||
|
return obj;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_efl_event_reset(Eo *obj, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
free(pd->legacy);
|
||||||
|
memset(pd, 0, sizeof(*pd));
|
||||||
|
pd->eo = obj;
|
||||||
|
pd->wheel.dir = EFL_ORIENT_VERTICAL;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Event *
|
||||||
|
_efl_event_pointer_efl_event_dup(Eo *obj, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
Efl_Event_Pointer_Data *ev;
|
||||||
|
Efl_Event_Pointer *evt;
|
||||||
|
|
||||||
|
evt = _efl_event_pointer_instance_get((Eo_Class *) EFL_EVENT_POINTER_CLASS,
|
||||||
|
NULL, obj, (void **) &ev);
|
||||||
|
if (!evt) return NULL;
|
||||||
|
|
||||||
|
memcpy(ev, pd, sizeof(*ev));
|
||||||
|
ev->eo = evt;
|
||||||
|
|
||||||
|
return evt;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_action_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Pointer_Action act)
|
||||||
|
{
|
||||||
|
pd->action = act;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Pointer_Action
|
||||||
|
_efl_event_pointer_action_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->action;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_button_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int but)
|
||||||
|
{
|
||||||
|
pd->button = but;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static int
|
||||||
|
_efl_event_pointer_button_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->button;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_button_pressed_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int button, Eina_Bool pressed)
|
||||||
|
{
|
||||||
|
if (button < 0) return;
|
||||||
|
if (button > 31) return;
|
||||||
|
if (pressed)
|
||||||
|
pd->button_flags |= (1 << button);
|
||||||
|
else
|
||||||
|
pd->button_flags &= ~(1 << button);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_button_pressed_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int button)
|
||||||
|
{
|
||||||
|
if (button < 0) return EINA_FALSE;
|
||||||
|
if (button > 31) return EINA_FALSE;
|
||||||
|
return (pd->button_flags & (1 << button)) != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_position_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int x, int y)
|
||||||
|
{
|
||||||
|
pd->cur.x = (double) x;
|
||||||
|
pd->cur.y = (double) y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_position_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int *x, int *y)
|
||||||
|
{
|
||||||
|
if (x) *x = (int) pd->cur.x;
|
||||||
|
if (y) *y = (int) pd->cur.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_position_precise_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double x, double y)
|
||||||
|
{
|
||||||
|
pd->cur.x = x;
|
||||||
|
pd->cur.y = y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_position_precise_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double *x, double *y)
|
||||||
|
{
|
||||||
|
if (x) *x = pd->cur.x;
|
||||||
|
if (y) *y = pd->cur.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_previous_position_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int x, int y)
|
||||||
|
{
|
||||||
|
pd->prev.x = (double) x;
|
||||||
|
pd->prev.y = (double) y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_previous_position_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int *x, int *y)
|
||||||
|
{
|
||||||
|
if (x) *x = (int) pd->prev.x;
|
||||||
|
if (y) *y = (int) pd->prev.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_previous_position_precise_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double x, double y)
|
||||||
|
{
|
||||||
|
pd->prev.x = x;
|
||||||
|
pd->prev.y = y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_previous_position_precise_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double *x, double *y)
|
||||||
|
{
|
||||||
|
if (x) *x = pd->prev.x;
|
||||||
|
if (y) *y = pd->prev.y;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_device_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Input_Device *dev)
|
||||||
|
{
|
||||||
|
/* ref? */
|
||||||
|
pd->device = dev;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Input_Device *
|
||||||
|
_efl_event_pointer_device_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->device;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_source_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Gfx *src)
|
||||||
|
{
|
||||||
|
/* ref? */
|
||||||
|
pd->source = src;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Gfx *
|
||||||
|
_efl_event_pointer_source_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->source;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_button_flags_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Pointer_Flags flags)
|
||||||
|
{
|
||||||
|
pd->button_flags = flags;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Pointer_Flags
|
||||||
|
_efl_event_pointer_button_flags_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->button_flags;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_event_flags_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Event_Flags flags)
|
||||||
|
{
|
||||||
|
pd->event_flags = flags;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Event_Flags
|
||||||
|
_efl_event_pointer_event_flags_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->event_flags;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_efl_event_timestamp_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double ms)
|
||||||
|
{
|
||||||
|
pd->timestamp = (unsigned int) ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static double
|
||||||
|
_efl_event_pointer_efl_event_timestamp_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return (double) pd->timestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_wheel_direction_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Efl_Orient dir)
|
||||||
|
{
|
||||||
|
pd->wheel.dir = dir;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Efl_Orient
|
||||||
|
_efl_event_pointer_wheel_direction_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->wheel.dir;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_wheel_distance_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int dist)
|
||||||
|
{
|
||||||
|
pd->wheel.z = dist;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static int
|
||||||
|
_efl_event_pointer_wheel_distance_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->wheel.z;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static int
|
||||||
|
_efl_event_pointer_finger_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return pd->finger;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_finger_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, int id)
|
||||||
|
{
|
||||||
|
pd->finger = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_touch_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double *r, double *rx, double *ry, double *press, double *angle)
|
||||||
|
{
|
||||||
|
if (r) *r = pd->radius;
|
||||||
|
if (rx) *rx = pd->radius_x;
|
||||||
|
if (ry) *ry = pd->radius_y;
|
||||||
|
if (press) *press = pd->pressure;
|
||||||
|
if (angle) *angle = pd->angle;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_touch_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, double r, double rx, double ry, double press, double angle)
|
||||||
|
{
|
||||||
|
pd->radius = r;
|
||||||
|
pd->radius_x = rx;
|
||||||
|
pd->radius_y = ry;
|
||||||
|
pd->pressure = press;
|
||||||
|
pd->angle = angle;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_efl_input_state_modifier_enabled_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, const char *name)
|
||||||
|
{
|
||||||
|
if (!pd->modifiers) return EINA_FALSE;
|
||||||
|
return evas_key_modifier_is_set(pd->modifiers, name);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_efl_input_state_lock_enabled_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, const char *name)
|
||||||
|
{
|
||||||
|
if (!pd->locks) return EINA_FALSE;
|
||||||
|
return evas_key_lock_is_set(pd->locks, name);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_double_click_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Eina_Bool val)
|
||||||
|
{
|
||||||
|
if (val)
|
||||||
|
pd->button_flags |= EFL_POINTER_FLAGS_DOUBLE_CLICK;
|
||||||
|
else
|
||||||
|
pd->button_flags &= ~EFL_POINTER_FLAGS_DOUBLE_CLICK;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_double_click_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return !!(pd->button_flags & EFL_POINTER_FLAGS_DOUBLE_CLICK);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_triple_click_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Eina_Bool val)
|
||||||
|
{
|
||||||
|
if (val)
|
||||||
|
pd->button_flags |= EFL_POINTER_FLAGS_TRIPLE_CLICK;
|
||||||
|
else
|
||||||
|
pd->button_flags &= ~EFL_POINTER_FLAGS_TRIPLE_CLICK;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_triple_click_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return !!(pd->button_flags & EFL_POINTER_FLAGS_TRIPLE_CLICK);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_on_hold_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Eina_Bool val)
|
||||||
|
{
|
||||||
|
if (val)
|
||||||
|
pd->event_flags |= EFL_EVENT_FLAGS_ON_HOLD;
|
||||||
|
else
|
||||||
|
pd->event_flags &= ~EFL_EVENT_FLAGS_ON_HOLD;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_on_hold_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return !!(pd->event_flags & EFL_EVENT_FLAGS_ON_HOLD);
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_efl_event_pointer_on_scroll_set(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd, Eina_Bool val)
|
||||||
|
{
|
||||||
|
if (val)
|
||||||
|
pd->event_flags |= EFL_EVENT_FLAGS_ON_SCROLL;
|
||||||
|
else
|
||||||
|
pd->event_flags &= ~EFL_EVENT_FLAGS_ON_SCROLL;
|
||||||
|
}
|
||||||
|
|
||||||
|
EOLIAN static Eina_Bool
|
||||||
|
_efl_event_pointer_on_scroll_get(Eo *obj EINA_UNUSED, Efl_Event_Pointer_Data *pd)
|
||||||
|
{
|
||||||
|
return !!(pd->event_flags & EFL_EVENT_FLAGS_ON_SCROLL);
|
||||||
|
}
|
||||||
|
|
||||||
|
#include "efl_event_pointer.eo.c"
|
|
@ -1,7 +1,7 @@
|
||||||
import efl_orientation;
|
import efl_orientation;
|
||||||
import efl_event_types;
|
import efl_event_types;
|
||||||
|
|
||||||
class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
|
class Efl.Event.Pointer (Eo.Base, Efl.Event, Efl.Input.State)
|
||||||
{
|
{
|
||||||
[[Event data carried over with any pointer event (mouse, touch, ...)
|
[[Event data carried over with any pointer event (mouse, touch, ...)
|
||||||
|
|
||||||
|
@ -100,7 +100,7 @@ class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
|
||||||
@property button_flags {
|
@property button_flags {
|
||||||
[[Double or triple click information.]]
|
[[Double or triple click information.]]
|
||||||
values {
|
values {
|
||||||
flags: Efl.Pointer.Button_Flags;
|
flags: Efl.Pointer.Flags;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@property double_click {
|
@property double_click {
|
||||||
|
@ -124,7 +124,7 @@ class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
|
||||||
@property event_flags {
|
@property event_flags {
|
||||||
[[Extra flags for this event, may be changed by the user.]]
|
[[Extra flags for this event, may be changed by the user.]]
|
||||||
values {
|
values {
|
||||||
flags: Efl.Pointer.Event_Flags;
|
flags: Efl.Event.Flags;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@property on_hold {
|
@property on_hold {
|
||||||
|
@ -157,7 +157,7 @@ class Efl.Pointer.Event (Eo.Base, Efl.Event, Efl.Input.State)
|
||||||
@in owner: Eo.Base; [[The parent object.]]
|
@in owner: Eo.Base; [[The parent object.]]
|
||||||
@out priv: void*; [[Pointer to the internal data of the object.]]
|
@out priv: void*; [[Pointer to the internal data of the object.]]
|
||||||
}
|
}
|
||||||
return: own(Efl.Pointer.Event);
|
return: own(Efl.Event.Pointer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
implements {
|
implements {
|
|
@ -1,401 +0,0 @@
|
||||||
#ifdef HAVE_CONFIG_H
|
|
||||||
# include <config.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <Evas.h>
|
|
||||||
|
|
||||||
#define EFL_INTERNAL_UNSTABLE
|
|
||||||
#include "interfaces/efl_common_internal.h"
|
|
||||||
|
|
||||||
#define MY_CLASS EFL_POINTER_EVENT_CLASS
|
|
||||||
|
|
||||||
|
|
||||||
/* Pointer Event
|
|
||||||
*
|
|
||||||
* This is a storage class only, should not require ANY knowledge about
|
|
||||||
* Ecore, Evas or anything else.
|
|
||||||
*
|
|
||||||
* This is intended to replace Ecore and Evas structs for mouse events.
|
|
||||||
*
|
|
||||||
* Do not add any logic here.
|
|
||||||
*/
|
|
||||||
|
|
||||||
static Efl_Pointer_Event *s_cached_event = NULL;
|
|
||||||
|
|
||||||
static void
|
|
||||||
_del_hook(Eo *evt)
|
|
||||||
{
|
|
||||||
if (!s_cached_event)
|
|
||||||
{
|
|
||||||
if (eo_parent_get(evt))
|
|
||||||
{
|
|
||||||
eo_ref(evt);
|
|
||||||
eo_parent_set(evt, NULL);
|
|
||||||
}
|
|
||||||
s_cached_event = evt;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
eo_del_intercept_set(evt, NULL);
|
|
||||||
eo_unref(evt);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Pointer_Event *
|
|
||||||
_efl_pointer_event_instance_get(Eo_Class *klass EINA_UNUSED, void *pd EINA_UNUSED,
|
|
||||||
Eo *owner, void **priv)
|
|
||||||
{
|
|
||||||
Efl_Pointer_Event *evt;
|
|
||||||
|
|
||||||
if (s_cached_event)
|
|
||||||
{
|
|
||||||
evt = s_cached_event;
|
|
||||||
s_cached_event = NULL;
|
|
||||||
efl_event_reset(evt);
|
|
||||||
eo_parent_set(evt, owner);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
evt = eo_add(EFL_POINTER_EVENT_CLASS, owner);
|
|
||||||
eo_del_intercept_set(evt, _del_hook);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (priv)
|
|
||||||
*priv = eo_data_scope_get(evt, EFL_POINTER_EVENT_CLASS);
|
|
||||||
|
|
||||||
return evt;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_class_destructor(Eo_Class *klass EINA_UNUSED)
|
|
||||||
{
|
|
||||||
// this is a strange situation...
|
|
||||||
eo_unref(s_cached_event);
|
|
||||||
s_cached_event = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eo_Base *
|
|
||||||
_efl_pointer_event_eo_base_constructor(Eo *obj, Efl_Pointer_Event_Data *pd EINA_UNUSED)
|
|
||||||
{
|
|
||||||
eo_constructor(eo_super(obj, MY_CLASS));
|
|
||||||
efl_event_reset(obj);
|
|
||||||
return obj;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_efl_event_reset(Eo *obj, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
free(pd->legacy);
|
|
||||||
memset(pd, 0, sizeof(*pd));
|
|
||||||
pd->eo = obj;
|
|
||||||
pd->wheel.dir = EFL_ORIENT_VERTICAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Event *
|
|
||||||
_efl_pointer_event_efl_event_dup(Eo *obj, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
Efl_Pointer_Event_Data *ev;
|
|
||||||
Efl_Pointer_Event *evt;
|
|
||||||
|
|
||||||
evt = _efl_pointer_event_instance_get((Eo_Class *) EFL_POINTER_EVENT_CLASS,
|
|
||||||
NULL, obj, (void **) &ev);
|
|
||||||
if (!evt) return NULL;
|
|
||||||
|
|
||||||
memcpy(ev, pd, sizeof(*ev));
|
|
||||||
ev->eo = evt;
|
|
||||||
|
|
||||||
return evt;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_action_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Pointer_Action act)
|
|
||||||
{
|
|
||||||
pd->action = act;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Pointer_Action
|
|
||||||
_efl_pointer_event_action_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->action;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_button_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int but)
|
|
||||||
{
|
|
||||||
pd->button = but;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static int
|
|
||||||
_efl_pointer_event_button_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->button;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_button_pressed_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int button, Eina_Bool pressed)
|
|
||||||
{
|
|
||||||
if (button < 0) return;
|
|
||||||
if (button > 31) return;
|
|
||||||
if (pressed)
|
|
||||||
pd->button_flags |= (1 << button);
|
|
||||||
else
|
|
||||||
pd->button_flags &= ~(1 << button);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_button_pressed_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int button)
|
|
||||||
{
|
|
||||||
if (button < 0) return EINA_FALSE;
|
|
||||||
if (button > 31) return EINA_FALSE;
|
|
||||||
return (pd->button_flags & (1 << button)) != 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y)
|
|
||||||
{
|
|
||||||
pd->cur.x = (double) x;
|
|
||||||
pd->cur.y = (double) y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y)
|
|
||||||
{
|
|
||||||
if (x) *x = (int) pd->cur.x;
|
|
||||||
if (y) *y = (int) pd->cur.y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_position_precise_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double x, double y)
|
|
||||||
{
|
|
||||||
pd->cur.x = x;
|
|
||||||
pd->cur.y = y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_position_precise_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double *x, double *y)
|
|
||||||
{
|
|
||||||
if (x) *x = pd->cur.x;
|
|
||||||
if (y) *y = pd->cur.y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_previous_position_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int x, int y)
|
|
||||||
{
|
|
||||||
pd->prev.x = (double) x;
|
|
||||||
pd->prev.y = (double) y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_previous_position_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int *x, int *y)
|
|
||||||
{
|
|
||||||
if (x) *x = (int) pd->prev.x;
|
|
||||||
if (y) *y = (int) pd->prev.y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_previous_position_precise_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double x, double y)
|
|
||||||
{
|
|
||||||
pd->prev.x = x;
|
|
||||||
pd->prev.y = y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_previous_position_precise_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double *x, double *y)
|
|
||||||
{
|
|
||||||
if (x) *x = pd->prev.x;
|
|
||||||
if (y) *y = pd->prev.y;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_device_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Input_Device *dev)
|
|
||||||
{
|
|
||||||
/* ref? */
|
|
||||||
pd->device = dev;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Input_Device *
|
|
||||||
_efl_pointer_event_device_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->device;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_source_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Gfx *src)
|
|
||||||
{
|
|
||||||
/* ref? */
|
|
||||||
pd->source = src;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Gfx *
|
|
||||||
_efl_pointer_event_source_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->source;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_button_flags_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Pointer_Button_Flags flags)
|
|
||||||
{
|
|
||||||
pd->button_flags = flags;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Pointer_Button_Flags
|
|
||||||
_efl_pointer_event_button_flags_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->button_flags;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_event_flags_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Pointer_Event_Flags flags)
|
|
||||||
{
|
|
||||||
pd->event_flags = flags;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Pointer_Event_Flags
|
|
||||||
_efl_pointer_event_event_flags_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->event_flags;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_efl_event_timestamp_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double ms)
|
|
||||||
{
|
|
||||||
pd->timestamp = (unsigned int) ms;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static double
|
|
||||||
_efl_pointer_event_efl_event_timestamp_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return (double) pd->timestamp;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_wheel_direction_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Efl_Orient dir)
|
|
||||||
{
|
|
||||||
pd->wheel.dir = dir;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Efl_Orient
|
|
||||||
_efl_pointer_event_wheel_direction_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->wheel.dir;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_wheel_distance_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int dist)
|
|
||||||
{
|
|
||||||
pd->wheel.z = dist;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static int
|
|
||||||
_efl_pointer_event_wheel_distance_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->wheel.z;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static int
|
|
||||||
_efl_pointer_event_finger_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return pd->finger;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_finger_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, int id)
|
|
||||||
{
|
|
||||||
pd->finger = id;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_touch_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double *r, double *rx, double *ry, double *press, double *angle)
|
|
||||||
{
|
|
||||||
if (r) *r = pd->radius;
|
|
||||||
if (rx) *rx = pd->radius_x;
|
|
||||||
if (ry) *ry = pd->radius_y;
|
|
||||||
if (press) *press = pd->pressure;
|
|
||||||
if (angle) *angle = pd->angle;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_touch_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, double r, double rx, double ry, double press, double angle)
|
|
||||||
{
|
|
||||||
pd->radius = r;
|
|
||||||
pd->radius_x = rx;
|
|
||||||
pd->radius_y = ry;
|
|
||||||
pd->pressure = press;
|
|
||||||
pd->angle = angle;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_efl_input_state_modifier_enabled_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, const char *name)
|
|
||||||
{
|
|
||||||
if (!pd->modifiers) return EINA_FALSE;
|
|
||||||
return evas_key_modifier_is_set(pd->modifiers, name);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_efl_input_state_lock_enabled_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, const char *name)
|
|
||||||
{
|
|
||||||
if (!pd->locks) return EINA_FALSE;
|
|
||||||
return evas_key_lock_is_set(pd->locks, name);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_double_click_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Eina_Bool val)
|
|
||||||
{
|
|
||||||
if (val)
|
|
||||||
pd->button_flags |= EFL_POINTER_BUTTON_FLAGS_DOUBLE_CLICK;
|
|
||||||
else
|
|
||||||
pd->button_flags &= ~EFL_POINTER_BUTTON_FLAGS_DOUBLE_CLICK;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_double_click_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return !!(pd->button_flags & EFL_POINTER_BUTTON_FLAGS_DOUBLE_CLICK);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_triple_click_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Eina_Bool val)
|
|
||||||
{
|
|
||||||
if (val)
|
|
||||||
pd->button_flags |= EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK;
|
|
||||||
else
|
|
||||||
pd->button_flags &= ~EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_triple_click_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return !!(pd->button_flags & EFL_POINTER_BUTTON_FLAGS_TRIPLE_CLICK);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_on_hold_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Eina_Bool val)
|
|
||||||
{
|
|
||||||
if (val)
|
|
||||||
pd->event_flags |= EFL_POINTER_EVENT_FLAGS_ON_HOLD;
|
|
||||||
else
|
|
||||||
pd->event_flags &= ~EFL_POINTER_EVENT_FLAGS_ON_HOLD;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_on_hold_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return !!(pd->event_flags & EFL_POINTER_EVENT_FLAGS_ON_HOLD);
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static void
|
|
||||||
_efl_pointer_event_on_scroll_set(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd, Eina_Bool val)
|
|
||||||
{
|
|
||||||
if (val)
|
|
||||||
pd->event_flags |= EFL_POINTER_EVENT_FLAGS_ON_SCROLL;
|
|
||||||
else
|
|
||||||
pd->event_flags &= ~EFL_POINTER_EVENT_FLAGS_ON_SCROLL;
|
|
||||||
}
|
|
||||||
|
|
||||||
EOLIAN static Eina_Bool
|
|
||||||
_efl_pointer_event_on_scroll_get(Eo *obj EINA_UNUSED, Efl_Pointer_Event_Data *pd)
|
|
||||||
{
|
|
||||||
return !!(pd->event_flags & EFL_POINTER_EVENT_FLAGS_ON_SCROLL);
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "efl_pointer_event.eo.c"
|
|
|
@ -100,7 +100,7 @@ _pointer_event_get(const _eo_evas_object_cb_info *info, const Eo_Event *event,
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_event_flags_adjust(void *ev, const Efl_Pointer_Event_Data *pedata)
|
_event_flags_adjust(void *ev, const Efl_Event_Pointer_Data *pedata)
|
||||||
{
|
{
|
||||||
#define EV_CASE(NEWTYPE, Type) \
|
#define EV_CASE(NEWTYPE, Type) \
|
||||||
case EFL_POINTER_ACTION_ ## NEWTYPE: \
|
case EFL_POINTER_ACTION_ ## NEWTYPE: \
|
||||||
|
@ -132,10 +132,10 @@ _eo_evas_object_cb(void *data, const Eo_Event *event)
|
||||||
pe = _pointer_event_get(info, event, &desc);
|
pe = _pointer_event_get(info, event, &desc);
|
||||||
if (pe)
|
if (pe)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *pedata;
|
Efl_Event_Pointer_Data *pedata;
|
||||||
Efl_Pointer_Event_Flags flags;
|
Efl_Event_Flags flags;
|
||||||
|
|
||||||
pedata = eo_data_scope_get(pe, EFL_POINTER_EVENT_CLASS);
|
pedata = eo_data_scope_get(pe, EFL_EVENT_POINTER_CLASS);
|
||||||
flags = pedata->event_flags;
|
flags = pedata->event_flags;
|
||||||
eo_event_callback_call(event->object, desc, pe);
|
eo_event_callback_call(event->object, desc, pe);
|
||||||
if (flags != pedata->event_flags)
|
if (flags != pedata->event_flags)
|
||||||
|
|
|
@ -115,7 +115,7 @@ class Evas.Canvas (Eo.Base, Evas.Common_Interface, Efl.Animator,
|
||||||
]]
|
]]
|
||||||
}
|
}
|
||||||
values {
|
values {
|
||||||
flags: Efl.Pointer.Event_Flags; [[The default flags to use.]]
|
flags: Efl.Event.Flags; [[The default flags to use.]]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@property output_method {
|
@property output_method {
|
||||||
|
|
|
@ -15,14 +15,14 @@ evas_event_list_copy(Eina_List *list);
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_move_internal(Eo *eo_e, Evas_Public_Data *e, int x, int y,
|
_canvas_event_feed_mouse_move_internal(Eo *eo_e, Evas_Public_Data *e, int x, int y,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe);
|
Efl_Event_Pointer_Data *parent_pe);
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_multi_up_internal(Evas *eo_e, void *_pd, int d, int x, int y,
|
_canvas_event_feed_multi_up_internal(Evas *eo_e, void *_pd, int d, int x, int y,
|
||||||
double rad, double radx, double rady, double pres, double ang,
|
double rad, double radx, double rady, double pres, double ang,
|
||||||
double fx, double fy, Evas_Button_Flags flags,
|
double fx, double fy, Evas_Button_Flags flags,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe);
|
Efl_Event_Pointer_Data *parent_pe);
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_evas_event_havemap_adjust(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Coord *x, Evas_Coord *y, Eina_Bool mouse_grabbed)
|
_evas_event_havemap_adjust(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Coord *x, Evas_Coord *y, Eina_Bool mouse_grabbed)
|
||||||
|
@ -46,12 +46,12 @@ _evas_event_havemap_adjust(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protecte
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline Efl_Pointer_Event *
|
static inline Efl_Event_Pointer *
|
||||||
_pointer_event_create(Evas_Callback_Type type, void *ev,
|
_pointer_event_create(Evas_Callback_Type type, void *ev,
|
||||||
Efl_Pointer_Event_Data *parentev,
|
Efl_Event_Pointer_Data *parentev,
|
||||||
Efl_Pointer_Event_Data **evdata)
|
Efl_Event_Pointer_Data **evdata)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event *evt = NULL;
|
Efl_Event_Pointer *evt = NULL;
|
||||||
|
|
||||||
if (!ev) return NULL;
|
if (!ev) return NULL;
|
||||||
|
|
||||||
|
@ -66,9 +66,9 @@ _pointer_event_create(Evas_Callback_Type type, void *ev,
|
||||||
|
|
||||||
#define EV_CASE(TYPE, Type) \
|
#define EV_CASE(TYPE, Type) \
|
||||||
case EVAS_CALLBACK_ ## TYPE: \
|
case EVAS_CALLBACK_ ## TYPE: \
|
||||||
evt = efl_pointer_event_instance_get(EFL_POINTER_EVENT_CLASS, \
|
evt = efl_event_pointer_instance_get(EFL_EVENT_POINTER_CLASS, \
|
||||||
parentev ? parentev->eo : NULL, (void **) evdata); \
|
parentev ? parentev->eo : NULL, (void **) evdata); \
|
||||||
efl_pointer_event_legacy_info_set(evt, ev, type); \
|
efl_event_pointer_legacy_info_set(evt, ev, type); \
|
||||||
((Evas_Event_ ## Type *) ev)->reserved = evt; \
|
((Evas_Event_ ## Type *) ev)->reserved = evt; \
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ _pointer_event_create(Evas_Callback_Type type, void *ev,
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
_pointer_event_flags_adjust(Efl_Pointer_Event_Data *pedata,
|
_pointer_event_flags_adjust(Efl_Event_Pointer_Data *pedata,
|
||||||
Evas_Callback_Type type, const void *ev)
|
Evas_Callback_Type type, const void *ev)
|
||||||
{
|
{
|
||||||
#define EV_CASE(TYPE, Type) \
|
#define EV_CASE(TYPE, Type) \
|
||||||
|
@ -122,7 +122,7 @@ _pointer_event_flags_adjust(Efl_Pointer_Event_Data *pedata,
|
||||||
|
|
||||||
#define EV_CALL(_eo_obj, _obj, _typ, _ev, _id, _pe) do { \
|
#define EV_CALL(_eo_obj, _obj, _typ, _ev, _id, _pe) do { \
|
||||||
if (!_pe) _pe = _pointer_event_create(_typ, _ev, parent_pe, & _pe ## data); \
|
if (!_pe) _pe = _pointer_event_create(_typ, _ev, parent_pe, & _pe ## data); \
|
||||||
else efl_pointer_event_legacy_info_set(_pe, _ev, _typ); \
|
else efl_event_pointer_legacy_info_set(_pe, _ev, _typ); \
|
||||||
evas_object_event_callback_call(_eo_obj, _obj, _typ, _ev, _id); \
|
evas_object_event_callback_call(_eo_obj, _obj, _typ, _ev, _id); \
|
||||||
_pointer_event_flags_adjust(_pe ## data, _typ, _ev); \
|
_pointer_event_flags_adjust(_pe ## data, _typ, _ev); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
@ -286,7 +286,7 @@ _transform_to_src_space(Evas_Object_Protected_Data *obj, Evas_Object_Protected_D
|
||||||
static void
|
static void
|
||||||
_evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_Down *ev, int event_id,
|
Evas_Event_Mouse_Down *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
|
@ -294,8 +294,8 @@ _evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->canvas;
|
Evas_Coord_Point canvas = ev->canvas;
|
||||||
Evas_Object_Protected_Data *child;
|
Evas_Object_Protected_Data *child;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Object *eo_child;
|
Evas_Object *eo_child;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
int no_rep = 0;
|
int no_rep = 0;
|
||||||
|
@ -367,15 +367,15 @@ _evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_mouse_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_mouse_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_Move *ev, int event_id,
|
Evas_Event_Mouse_Move *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->cur.canvas;
|
Evas_Coord_Point canvas = ev->cur.canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
||||||
|
|
||||||
|
@ -541,15 +541,15 @@ _evas_event_source_mouse_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_mouse_up_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_mouse_up_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_Up *ev, int event_id,
|
Evas_Event_Mouse_Up *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->canvas;
|
Evas_Coord_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
||||||
|
|
||||||
|
@ -620,15 +620,15 @@ _evas_event_source_hold_events(Evas_Object *eo_obj, Evas *eo_e EINA_UNUSED, void
|
||||||
static void
|
static void
|
||||||
_evas_event_source_wheel_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_wheel_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_Wheel *ev, int event_id,
|
Evas_Event_Mouse_Wheel *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->canvas;
|
Evas_Coord_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
||||||
|
|
||||||
|
@ -660,15 +660,15 @@ _evas_event_source_wheel_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_multi_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_multi_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Multi_Down *ev, int event_id,
|
Evas_Event_Multi_Down *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Precision_Point canvas = ev->canvas;
|
Evas_Coord_Precision_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
||||||
|
|
||||||
|
@ -715,15 +715,15 @@ _evas_event_source_multi_down_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_multi_up_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_multi_up_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Multi_Up *ev, int event_id,
|
Evas_Event_Multi_Up *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Precision_Point canvas = ev->canvas;
|
Evas_Coord_Precision_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
if (obj->delete_me || src->delete_me || obj->layer->evas->is_frozen) return;
|
||||||
|
|
||||||
|
@ -764,15 +764,15 @@ _evas_event_source_multi_up_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_multi_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_multi_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Multi_Move *ev, int event_id,
|
Evas_Event_Multi_Move *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Precision_Point canvas = ev->cur.canvas;
|
Evas_Coord_Precision_Point canvas = ev->cur.canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
if (obj->delete_me || src->delete_me || e->is_frozen) return;
|
||||||
|
|
||||||
|
@ -872,15 +872,15 @@ _evas_event_source_multi_move_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_mouse_in_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_mouse_in_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_In *ev, int event_id,
|
Evas_Event_Mouse_In *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->canvas;
|
Evas_Coord_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Object *eo_child;
|
Evas_Object *eo_child;
|
||||||
Eina_List *ins = NULL;
|
Eina_List *ins = NULL;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
|
@ -935,15 +935,15 @@ _evas_event_source_mouse_in_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
static void
|
static void
|
||||||
_evas_event_source_mouse_out_events(Evas_Object *eo_obj, Evas *eo_e,
|
_evas_event_source_mouse_out_events(Evas_Object *eo_obj, Evas *eo_e,
|
||||||
Evas_Event_Mouse_Out *ev, int event_id,
|
Evas_Event_Mouse_Out *ev, int event_id,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJECT_CLASS);
|
||||||
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
Evas_Object *eo_src = _evas_object_image_source_get(eo_obj);
|
||||||
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
Evas_Object_Protected_Data *src = eo_data_scope_get(eo_src, EVAS_OBJECT_CLASS);
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Point canvas = ev->canvas;
|
Evas_Coord_Point canvas = ev->canvas;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Object *eo_child;
|
Evas_Object *eo_child;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Eina_List *copy;
|
Eina_List *copy;
|
||||||
|
@ -1139,11 +1139,11 @@ evas_event_thaw_eval(Evas *eo_e)
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_down_internal(Eo *eo_e, int b, Evas_Button_Flags flags,
|
_canvas_event_feed_mouse_down_internal(Eo *eo_e, int b, Evas_Button_Flags flags,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Eina_List *l, *copy;
|
Eina_List *l, *copy;
|
||||||
Evas_Event_Mouse_Down ev;
|
Evas_Event_Mouse_Down ev;
|
||||||
Evas_Object *eo_obj;
|
Evas_Object *eo_obj;
|
||||||
|
@ -1243,11 +1243,11 @@ evas_event_feed_mouse_down(Eo *eo_e, int b, Evas_Button_Flags flags, unsigned in
|
||||||
|
|
||||||
static int
|
static int
|
||||||
_post_up_handle(Evas *eo_e, unsigned int timestamp, const void *data,
|
_post_up_handle(Evas *eo_e, unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Eina_List *l, *copy, *ins, *ll;
|
Eina_List *l, *copy, *ins, *ll;
|
||||||
Evas_Event_Mouse_Out ev;
|
Evas_Event_Mouse_Out ev;
|
||||||
Evas_Object *eo_obj;
|
Evas_Object *eo_obj;
|
||||||
|
@ -1369,11 +1369,11 @@ _post_up_handle(Evas *eo_e, unsigned int timestamp, const void *data,
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_up_internal(Eo *eo_e, int b, Evas_Button_Flags flags,
|
_canvas_event_feed_mouse_up_internal(Eo *eo_e, int b, Evas_Button_Flags flags,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Eina_List *l, *copy;
|
Eina_List *l, *copy;
|
||||||
|
|
||||||
INF("ButtonEvent:up time=%u x=%d y=%d button=%d downs=%d", timestamp, e->pointer.x, e->pointer.y, b, e->pointer.downs);
|
INF("ButtonEvent:up time=%u x=%d y=%d button=%d downs=%d", timestamp, e->pointer.x, e->pointer.y, b, e->pointer.downs);
|
||||||
|
@ -1475,7 +1475,7 @@ evas_event_feed_mouse_up(Eo *eo_e, int b, Evas_Button_Flags flags, unsigned int
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_cancel_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
_canvas_event_feed_mouse_cancel_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Evas_Coord_Touch_Point *point;
|
Evas_Coord_Touch_Point *point;
|
||||||
|
@ -1515,11 +1515,11 @@ evas_event_feed_mouse_cancel(Eo *eo_e, unsigned int timestamp, const void *data)
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_wheel_internal(Eo *eo_e, int direction, int z,
|
_canvas_event_feed_mouse_wheel_internal(Eo *eo_e, int direction, int z,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Eina_List *l, *copy;
|
Eina_List *l, *copy;
|
||||||
Evas_Event_Mouse_Wheel ev;
|
Evas_Event_Mouse_Wheel ev;
|
||||||
Evas_Object *eo_obj;
|
Evas_Object *eo_obj;
|
||||||
|
@ -1580,11 +1580,11 @@ evas_event_feed_mouse_wheel(Eo *eo_e, int direction, int z, unsigned int timesta
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_move_internal(Eo *eo_e, Evas_Public_Data *e, int x, int y,
|
_canvas_event_feed_mouse_move_internal(Eo *eo_e, Evas_Public_Data *e, int x, int y,
|
||||||
unsigned int timestamp, const void *data,
|
unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Object *nogrep_obj = NULL;
|
Evas_Object *nogrep_obj = NULL;
|
||||||
Efl_Pointer_Event_Data *pemovedata = NULL, *peoutdata = NULL, *peindata = NULL;
|
Efl_Event_Pointer_Data *pemovedata = NULL, *peoutdata = NULL, *peindata = NULL;
|
||||||
Efl_Pointer_Event *pemove = NULL, *peout = NULL, *pein = NULL;
|
Efl_Event_Pointer *pemove = NULL, *peout = NULL, *pein = NULL;
|
||||||
int px, py;
|
int px, py;
|
||||||
|
|
||||||
px = e->pointer.x;
|
px = e->pointer.x;
|
||||||
|
@ -2073,11 +2073,11 @@ evas_event_feed_mouse_move(Eo *eo_e, int x, int y, unsigned int timestamp, const
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_in_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
_canvas_event_feed_mouse_in_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Eina_List *ins;
|
Eina_List *ins;
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Evas_Event_Mouse_In ev;
|
Evas_Event_Mouse_In ev;
|
||||||
|
@ -2146,11 +2146,11 @@ evas_event_feed_mouse_in(Eo *eo_e, unsigned int timestamp, const void *data)
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_canvas_event_feed_mouse_out_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
_canvas_event_feed_mouse_out_internal(Eo *eo_e, unsigned int timestamp, const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Event_Mouse_Out ev;
|
Evas_Event_Mouse_Out ev;
|
||||||
int event_id = 0;
|
int event_id = 0;
|
||||||
|
|
||||||
|
@ -2224,13 +2224,13 @@ _canvas_event_feed_multi_down_internal(Evas *eo_e, void *_pd,
|
||||||
double pres, double ang,
|
double pres, double ang,
|
||||||
double fx, double fy,
|
double fx, double fy,
|
||||||
Evas_Button_Flags flags, unsigned int timestamp,
|
Evas_Button_Flags flags, unsigned int timestamp,
|
||||||
const void *data, Efl_Pointer_Event_Data *parent_pe)
|
const void *data, Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = _pd;
|
Evas_Public_Data *e = _pd;
|
||||||
Eina_List *l, *copy;
|
Eina_List *l, *copy;
|
||||||
Evas_Event_Multi_Down ev;
|
Evas_Event_Multi_Down ev;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Object *eo_obj;
|
Evas_Object *eo_obj;
|
||||||
int addgrab = 0;
|
int addgrab = 0;
|
||||||
int event_id = 0;
|
int event_id = 0;
|
||||||
|
@ -2337,10 +2337,10 @@ _canvas_event_feed_multi_up_internal(Evas *eo_e, void *_pd,
|
||||||
Evas_Button_Flags flags,
|
Evas_Button_Flags flags,
|
||||||
unsigned int timestamp,
|
unsigned int timestamp,
|
||||||
const void *data,
|
const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
Evas_Public_Data *e = _pd;
|
Evas_Public_Data *e = _pd;
|
||||||
Eina_List *l, *copy;
|
Eina_List *l, *copy;
|
||||||
Evas_Event_Multi_Up ev;
|
Evas_Event_Multi_Up ev;
|
||||||
|
@ -2442,11 +2442,11 @@ _canvas_event_feed_multi_move_internal(Eo *eo_e, void *_pd, int d, int x,
|
||||||
double fx, double fy,
|
double fx, double fy,
|
||||||
unsigned int timestamp,
|
unsigned int timestamp,
|
||||||
const void *data,
|
const void *data,
|
||||||
Efl_Pointer_Event_Data *parent_pe)
|
Efl_Event_Pointer_Data *parent_pe)
|
||||||
{
|
{
|
||||||
Evas_Public_Data *e = _pd;
|
Evas_Public_Data *e = _pd;
|
||||||
Efl_Pointer_Event_Data *pedata = NULL;
|
Efl_Event_Pointer_Data *pedata = NULL;
|
||||||
Efl_Pointer_Event *pe = NULL;
|
Efl_Event_Pointer *pe = NULL;
|
||||||
|
|
||||||
if (e->is_frozen) return;
|
if (e->is_frozen) return;
|
||||||
e->last_timestamp = timestamp;
|
e->last_timestamp = timestamp;
|
||||||
|
@ -3211,7 +3211,7 @@ _evas_canvas_event_down_count_get(Eo *eo_e EINA_UNUSED, Evas_Public_Data *e)
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_evas_canvas_event_pointer_cb(void *data, const Eo_Event *event)
|
_evas_canvas_event_pointer_cb(void *data, const Eo_Event *event)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev = eo_data_scope_get(event->info, EFL_POINTER_EVENT_CLASS);
|
Efl_Event_Pointer_Data *ev = eo_data_scope_get(event->info, EFL_EVENT_POINTER_CLASS);
|
||||||
Evas_Public_Data *e = data;
|
Evas_Public_Data *e = data;
|
||||||
Evas *eo_e = event->object;
|
Evas *eo_e = event->object;
|
||||||
int dir;
|
int dir;
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
#include "interfaces/efl_common_internal.h"
|
#include "interfaces/efl_common_internal.h"
|
||||||
|
|
||||||
Eina_Bool
|
Eina_Bool
|
||||||
efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info, Evas_Callback_Type type)
|
efl_event_pointer_legacy_info_set(Efl_Event_Pointer *evt, const void *event_info, Evas_Callback_Type type)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev = eo_data_scope_get(evt, EFL_POINTER_EVENT_CLASS);
|
Efl_Event_Pointer_Data *ev = eo_data_scope_get(evt, EFL_EVENT_POINTER_CLASS);
|
||||||
if (!ev || !event_info) return EINA_FALSE;
|
if (!ev || !event_info) return EINA_FALSE;
|
||||||
|
|
||||||
/* FIXME/TODO:
|
/* FIXME/TODO:
|
||||||
|
@ -210,9 +210,9 @@ efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info
|
||||||
}
|
}
|
||||||
|
|
||||||
const void *
|
const void *
|
||||||
efl_pointer_event_legacy_info_get(const Efl_Pointer_Event *evt, Evas_Callback_Type *ptype, Eina_Bool multi)
|
efl_event_pointer_legacy_info_get(const Efl_Event_Pointer *evt, Evas_Callback_Type *ptype, Eina_Bool multi)
|
||||||
{
|
{
|
||||||
Efl_Pointer_Event_Data *ev = eo_data_scope_get(evt, EFL_POINTER_EVENT_CLASS);
|
Efl_Event_Pointer_Data *ev = eo_data_scope_get(evt, EFL_EVENT_POINTER_CLASS);
|
||||||
if (!ev) return NULL;
|
if (!ev) return NULL;
|
||||||
|
|
||||||
switch (ev->action)
|
switch (ev->action)
|
||||||
|
|
|
@ -1937,8 +1937,8 @@ void _evas_device_cleanup(Evas *e);
|
||||||
Evas_Device *_evas_device_top_get(const Evas *e);
|
Evas_Device *_evas_device_top_get(const Evas *e);
|
||||||
|
|
||||||
/* legacy/eo events */
|
/* legacy/eo events */
|
||||||
Eina_Bool efl_pointer_event_legacy_info_set(Efl_Pointer_Event *evt, const void *event_info, Evas_Callback_Type type);
|
Eina_Bool efl_event_pointer_legacy_info_set(Efl_Event_Pointer *evt, const void *event_info, Evas_Callback_Type type);
|
||||||
const void *efl_pointer_event_legacy_info_get(const Efl_Pointer_Event *evt, Evas_Callback_Type *ptype, Eina_Bool multi);
|
const void *efl_event_pointer_legacy_info_get(const Efl_Event_Pointer *evt, Evas_Callback_Type *ptype, Eina_Bool multi);
|
||||||
|
|
||||||
Eina_Bool evas_vg_loader_svg(Evas_Object *vg, const Eina_File *f, const char *key EINA_UNUSED);
|
Eina_Bool evas_vg_loader_svg(Evas_Object *vg, const Eina_File *f, const char *key EINA_UNUSED);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue