forked from enlightenment/efl
efl: notify when the path change.
This is an easier and safer way than forcing all object inheriting this class to override all function that modify the path.
This commit is contained in:
parent
f5f48a8265
commit
d14f805793
|
@ -148,8 +148,10 @@ typedef enum _Efl_Gfx_Fill_Spread
|
||||||
#include "interfaces/efl_text_properties.eo.h"
|
#include "interfaces/efl_text_properties.eo.h"
|
||||||
|
|
||||||
EAPI extern const Eo_Event_Description _EFL_GFX_CHANGED;
|
EAPI extern const Eo_Event_Description _EFL_GFX_CHANGED;
|
||||||
|
EAPI extern const Eo_Event_Description _EFL_GFX_PATH_CHANGED;
|
||||||
|
|
||||||
#define EFL_GFX_CHANGED (&(_EFL_GFX_CHANGED))
|
#define EFL_GFX_CHANGED (&(_EFL_GFX_CHANGED))
|
||||||
|
#define EFL_GFX_PATH_CHANGED (&(_EFL_GFX_PATH_CHANGED))
|
||||||
|
|
||||||
#include "interfaces/efl_gfx_base.eo.h"
|
#include "interfaces/efl_gfx_base.eo.h"
|
||||||
#include "interfaces/efl_gfx_stack.eo.h"
|
#include "interfaces/efl_gfx_stack.eo.h"
|
||||||
|
|
|
@ -180,7 +180,9 @@ _efl_gfx_shape_path_set(Eo *obj, Efl_Gfx_Shape_Data *pd,
|
||||||
&pd->current_ctrl.x, &pd->current_ctrl.y);
|
&pd->current_ctrl.x, &pd->current_ctrl.y);
|
||||||
|
|
||||||
end:
|
end:
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -292,7 +294,9 @@ _efl_gfx_shape_interpolate(Eo *obj, Efl_Gfx_Shape_Data *pd,
|
||||||
to_pd->current_ctrl.y,
|
to_pd->current_ctrl.y,
|
||||||
pos_map);
|
pos_map);
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
|
|
||||||
return EINA_TRUE;
|
return EINA_TRUE;
|
||||||
}
|
}
|
||||||
|
@ -345,7 +349,9 @@ _efl_gfx_shape_dup(Eo *obj, Efl_Gfx_Shape_Data *pd, Eo *dup_from)
|
||||||
|
|
||||||
_efl_gfx_shape_path_set(obj, pd, from->commands, from->points);
|
_efl_gfx_shape_path_set(obj, pd, from->commands, from->points);
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -364,7 +370,9 @@ _efl_gfx_shape_reset(Eo *obj, Efl_Gfx_Shape_Data *pd)
|
||||||
pd->current_ctrl.x = 0;
|
pd->current_ctrl.x = 0;
|
||||||
pd->current_ctrl.y = 0;
|
pd->current_ctrl.y = 0;
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -383,7 +391,9 @@ _efl_gfx_shape_append_move_to(Eo *obj, Efl_Gfx_Shape_Data *pd,
|
||||||
pd->current.x = x;
|
pd->current.x = x;
|
||||||
pd->current.y = y;
|
pd->current.y = y;
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -402,7 +412,9 @@ _efl_gfx_shape_append_line_to(Eo *obj, Efl_Gfx_Shape_Data *pd,
|
||||||
pd->current.x = x;
|
pd->current.x = x;
|
||||||
pd->current.y = y;
|
pd->current.y = y;
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -429,7 +441,9 @@ _efl_gfx_shape_append_cubic_to(Eo *obj, Efl_Gfx_Shape_Data *pd,
|
||||||
pd->current_ctrl.x = ctrl_x1;
|
pd->current_ctrl.x = ctrl_x1;
|
||||||
pd->current_ctrl.y = ctrl_y1;
|
pd->current_ctrl.y = ctrl_y1;
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -697,7 +711,9 @@ _efl_gfx_shape_append_close(Eo *obj, Efl_Gfx_Shape_Data *pd)
|
||||||
efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_CLOSE,
|
efl_gfx_path_grow(EFL_GFX_PATH_COMMAND_TYPE_CLOSE,
|
||||||
pd, &offset_point);
|
pd, &offset_point);
|
||||||
|
|
||||||
eo_do(obj, eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
eo_do(obj,
|
||||||
|
eo_event_callback_call(EFL_GFX_PATH_CHANGED, NULL),
|
||||||
|
eo_event_callback_call(EFL_GFX_CHANGED, NULL));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -22,3 +22,6 @@
|
||||||
|
|
||||||
EAPI const Eo_Event_Description _EFL_GFX_CHANGED =
|
EAPI const Eo_Event_Description _EFL_GFX_CHANGED =
|
||||||
EO_EVENT_DESCRIPTION("Graphics changed", "The visual representation of the object changed");
|
EO_EVENT_DESCRIPTION("Graphics changed", "The visual representation of the object changed");
|
||||||
|
|
||||||
|
EAPI const Eo_Event_Description _EFL_GFX_PATH_CHANGED =
|
||||||
|
EO_EVENT_DESCRIPTION("Graphics path changed", "The path of a shape object changed");
|
||||||
|
|
Loading…
Reference in New Issue