widget: Make cursor_add/del internal

This API is meant to be used internally to elm, not from outside.
The public API only exposes part_cursor_set on layout, and a series
of cursor EAPIs.
This commit is contained in:
Jean-Philippe Andre 2017-06-14 20:17:29 +09:00
parent 19b704b700
commit ece89aaaa8
3 changed files with 13 additions and 17 deletions

View File

@ -4030,15 +4030,21 @@ _elm_widget_tooltip_del(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, Elm_Tool
sd->tooltips = eina_list_remove(sd->tooltips, tt);
}
EOLIAN static void
_elm_widget_cursor_add(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, Elm_Cursor *cur)
EAPI void
elm_widget_cursor_add(Eo *obj, Elm_Cursor *cur)
{
Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
if (!sd) return;
sd->cursors = eina_list_append(sd->cursors, cur);
}
EOLIAN static void
_elm_widget_cursor_del(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, Elm_Cursor *cur)
EAPI void
elm_widget_cursor_del(Eo *obj, Elm_Cursor *cur)
{
Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
if (!sd) return;
sd->cursors = eina_list_remove(sd->cursors, cur);
}

View File

@ -27,7 +27,6 @@ enum Elm.Theme.Apply
}
struct Elm.Tooltip; [[Elementary tooltip]]
struct Elm.Cursor; [[Elementary cursor]]
struct @extern Elm.Theme; [[Elementary theme]]
abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
@ -401,12 +400,6 @@ abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
scroll_hold_push {
[[Push scroll hold]]
}
cursor_add {
[[Add cursor]]
params {
@in cur: ptr(Elm.Cursor); [[Cursor to be added]]
}
}
focus_next_object_set {
[[Set the next object with specific focus direction.
@ -512,12 +505,6 @@ abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
}
legacy: null;
}
cursor_del {
[[Delete cursor]]
params {
@in cur: ptr(Elm.Cursor); [[Cursor to be deleted]]
}
}
on_focus {
[['Virtual' function handling focus in/out events on the widget]]
params {

View File

@ -487,6 +487,9 @@ typedef struct _Elm_Access_Item Elm_Access_Item;
typedef struct _Elm_Action Elm_Action;
/** Internal type for mouse cursors */
typedef struct _Elm_Cursor Elm_Cursor;
#define ELM_ACCESS_DONE -1 /* sentence done - send done event here */
#define ELM_ACCESS_CANCEL -2 /* stop reading immediately */