elm widget: move some types used in elm_widget.eo to Eolian files

Move declarations of types used in elm_widget.eo to elm_general.eot and
elm_widget.eo.
Give them a Eolian name and use it instead of the old ones.

Correct the type name of some other types used as method parameters, by
using the Eolian names instead of legacy/generated names.

Reorganize the positions of elm_widget.eo.h inclusion and
of callback type declarations in elm_widget.h.
This make a clearer distinction of the types in elm_widget.h that are
still required in elm_widget.eo.h.
This commit is contained in:
Vitor Sousa 2016-02-15 23:57:10 -02:00 committed by Felipe Magno de Almeida
parent 144135d896
commit 76c45e2b2c
5 changed files with 70 additions and 74 deletions

View File

@ -1656,19 +1656,6 @@ EAPI Eina_Bool elm_config_focus_highlight_clip_disabled_get(void);
*/
EAPI void elm_config_focus_highlight_clip_disabled_set(Eina_Bool disable);
/**
* Focus Movement Policy
*
* @since 1.10
* @ingroup Focus
*/
typedef enum
{
ELM_FOCUS_MOVE_POLICY_CLICK, /**< move focus by mouse click or touch. Elementary focus is set on mouse click and this is checked at mouse up time. (default) */
ELM_FOCUS_MOVE_POLICY_IN, /**< move focus by mouse in. Elementary focus is set on mouse move when the mouse pointer is moved into an object. */
ELM_FOCUS_MOVE_POLICY_KEY_ONLY /**< move focus by key. Elementary focus is set on key input like Left, Right, Up, Down, Tab, or Shift+Tab.*/
} Elm_Focus_Move_Policy;
/**
* Get the focus movement policy
*

View File

@ -33,17 +33,6 @@
* some of these functions.
*/
/**
* Focus region show mode.
*
* @ingroup Focus
*/
typedef enum
{
ELM_FOCUS_REGION_SHOW_WIDGET, /**< as a widget */
ELM_FOCUS_REGION_SHOW_ITEM, /**< as an item */
} Elm_Focus_Region_Show_Mode;
/**
* Get the whether an Elementary object has the focus or not.
*

View File

@ -178,6 +178,26 @@ enum Elm.Focus_Direction
left, [[ left direction ]]
}
enum Elm.Focus.Region.Show_Mode
{
[[Focus region show mode.]]
legacy: elm_focus_region_show;
widget, [[As a widget.]]
item, [[As an item.]]
}
enum Elm.Focus.Move_Policy
{
[[Focus Movement Policy.
@since 1.10]]
click, [[Move focus by mouse click or touch. Elementary focus is set on mouse
click and this is checked at mouse up time. (default)]]
in, [[Move focus by mouse in. Elementary focus is set on mouse move when the
mouse pointer is moved into an object.]]
key_only, [[Move focus by key. Elementary focus is set on key input like
Left, Right, Up, Down, Tab, or Shift+Tab.]]
}
enum Elm.App.View_State
{
unknown = 0,

View File

@ -1,5 +1,20 @@
import elm_general;
enum Elm.Activate
{
[[ Used in 'Virtual' function @Elm.Widget.activate. ]]
default = 0,
up,
down,
right,
left,
back,
}
struct Elm.Tooltip;
struct Elm.Cursor;
struct @extern Elm.Theme;
abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Interface_Atspi_Component)
{
eo_prefix: elm_obj_widget;
@ -82,7 +97,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
get {
}
values {
th: Elm_Theme * @nullable;
th: Elm.Theme * @nullable;
}
}
@property disabled {
@ -234,7 +249,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
get {
}
values {
mode: Elm_Focus_Region_Show_Mode;
mode: Elm.Focus.Region.Show_Mode;
}
}
@property parent_highlight {
@ -266,7 +281,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
set {
}
values {
dispmode: Evas_Display_Mode;
dispmode: Evas.Display_Mode;
}
}
@property on_show_region_hook {
@ -442,7 +457,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
}
cursor_add {
params {
@in cur: Elm_Cursor *;
@in cur: Elm.Cursor *;
}
}
focus_next_object_set {
@ -514,7 +529,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
activate {
[['Virtual' function to activate widget.]]
params {
@in act: Elm_Activate;
@in act: Elm.Activate;
}
return: bool;
legacy: null; /* the legacy API has not the same number of parameter to we don't generate it. */
@ -535,7 +550,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
[['Virtual' function handling input events on the widget.]]
params {
@in source: Evas.Object *;
@in type: Evas_Callback_Type;
@in type: Evas.Callback_Type;
@in event_info: void *;
}
return: bool;
@ -555,7 +570,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
}
cursor_del {
params {
@in cur: Elm_Cursor *;
@in cur: Elm.Cursor *;
}
}
event_callback_del {
@ -603,16 +618,16 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
event_propagate {
return: bool;
params {
@in type: Evas_Callback_Type;
@in type: Evas.Callback_Type;
@in event_info: void *;
@in event_flags: Evas_Event_Flags *;
@in event_flags: Evas.Event_Flags *;
}
}
signal_callback_add {
params {
@in emission: const(char)*;
@in source: const(char)*;
@in func: Edje_Signal_Cb;
@in func: Edje.Signal_Cb;
@in data: void *;
}
}
@ -668,7 +683,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
}
tooltip_del {
params {
@in tt: Elm_Tooltip *;
@in tt: Elm.Tooltip *;
}
}
focus_next_get @const {
@ -754,7 +769,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
params {
@in emission: const(char)*;
@in source: const(char)*;
@in func: Edje_Signal_Cb;
@in func: Edje.Signal_Cb;
}
}
signal_emit {
@ -776,7 +791,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
}
tooltip_add {
params {
@in tt: Elm_Tooltip *;
@in tt: Elm.Tooltip *;
}
}
focus_region_show @const {
@ -803,7 +818,7 @@ abstract Elm.Widget (Evas.Object_Smart, Elm.Interface_Atspi_Accessible, Elm.Inte
[[Returns the widget's focus move policy.]]
}
values {
policy: Elm_Focus_Move_Policy; [[Object's focus move policy.]]
policy: Elm.Focus.Move_Policy; [[Object's focus move policy.]]
}
}
}

View File

@ -297,23 +297,32 @@
* @image latex elm-widget-tree.eps
*/
typedef void (*Elm_Widget_Text_Set_Cb)(void *data, const char *part, const char *text);
typedef void (*Elm_Widget_Content_Set_Cb)(void *data, const char *part, Evas_Object *content);
typedef const char *(*Elm_Widget_Text_Get_Cb)(const void *data, const char *part);
typedef Evas_Object *(*Elm_Widget_Content_Get_Cb)(const void *data, const char *part);
typedef Evas_Object *(*Elm_Widget_Content_Unset_Cb)(const void *data, const char *part);
typedef void (*Elm_Widget_Signal_Emit_Cb)(void *data, const char *emission, const char *source);
typedef void (*Elm_Widget_Disable_Cb)(void *data);
typedef Eina_Bool (*Elm_Widget_Del_Pre_Cb)(void *data);
typedef void (*Elm_Widget_Item_Signal_Cb)(void *data, Elm_Object_Item *item, const char *emission, const char *source);
typedef void (*Elm_Widget_Style_Set_Cb)(void *data, const char *style);
typedef const char *(*Elm_Widget_Style_Get_Cb)(const void *data);
typedef void (*Elm_Widget_Focus_Set_Cb)(void *data, Eina_Bool focused);
typedef Eina_Bool (*Elm_Widget_Focus_Get_Cb)(const void *data);
typedef void (*Elm_Access_On_Highlight_Cb)(void *data);
typedef void (*region_hook_func_type)(void *data, Evas_Object *obj);
typedef void * (*list_data_get_func_type)(const Eina_List * l);
#include "elm_widget.eo.h"
/**
* @addtogroup Widget
* @{
*/
/* Elm_Activate is used in 'Virtual' function Eina_Bool (*activate)
* (Evas_Object *obj, Elm_Activate act); of Elm_Widget_Smart_Class */
typedef enum
{
ELM_ACTIVATE_DEFAULT = 0,
ELM_ACTIVATE_UP,
ELM_ACTIVATE_DOWN,
ELM_ACTIVATE_RIGHT,
ELM_ACTIVATE_LEFT,
ELM_ACTIVATE_BACK
} Elm_Activate;
/* Please, ALWAYS update the ELM_WIDGET_SMART_CLASS_INIT macro
* whenever you change the following struct! */
@ -450,9 +459,6 @@ typedef struct _Elm_Widget_Smart_Data
* @}
*/
typedef struct _Elm_Tooltip Elm_Tooltip;
typedef struct _Elm_Cursor Elm_Cursor;
/**< base structure for all widget items that are not Elm_Widget themselves */
typedef struct _Elm_Widget_Item_Data Elm_Widget_Item_Data;
typedef struct _Elm_Widget_Item_Signal_Data Elm_Widget_Item_Signal_Data;
@ -465,25 +471,9 @@ typedef struct _Elm_Access_Item Elm_Access_Item;
typedef struct _Elm_Action Elm_Action;
typedef void (*Elm_Widget_Text_Set_Cb)(void *data, const char *part, const char *text);
typedef void (*Elm_Widget_Content_Set_Cb)(void *data, const char *part, Evas_Object *content);
typedef const char *(*Elm_Widget_Text_Get_Cb)(const void *data, const char *part);
typedef Evas_Object *(*Elm_Widget_Content_Get_Cb)(const void *data, const char *part);
typedef Evas_Object *(*Elm_Widget_Content_Unset_Cb)(const void *data, const char *part);
typedef void (*Elm_Widget_Signal_Emit_Cb)(void *data, const char *emission, const char *source);
typedef void (*Elm_Widget_Disable_Cb)(void *data);
typedef Eina_Bool (*Elm_Widget_Del_Pre_Cb)(void *data);
typedef void (*Elm_Widget_Item_Signal_Cb)(void *data, Elm_Object_Item *item, const char *emission, const char *source);
typedef void (*Elm_Widget_Style_Set_Cb)(void *data, const char *style);
typedef const char *(*Elm_Widget_Style_Get_Cb)(const void *data);
typedef void (*Elm_Widget_Focus_Set_Cb)(void *data, Eina_Bool focused);
typedef Eina_Bool (*Elm_Widget_Focus_Get_Cb)(const void *data);
#define ELM_ACCESS_DONE -1 /* sentence done - send done event here */
#define ELM_ACCESS_CANCEL -2 /* stop reading immediately */
typedef void (*Elm_Access_On_Highlight_Cb)(void *data);
struct _Elm_Access_Item
{
int type;
@ -852,11 +842,6 @@ EAPI Eina_Bool _elm_widget_item_onscreen_is(Elm_Object_Item *item);
EAPI Eina_Bool elm_selection_selection_has_owner(Evas_Object *obj);
typedef void (*region_hook_func_type)(void *data, Evas_Object *obj);
typedef void * (*list_data_get_func_type)(const Eina_List * l);
#include "elm_widget.eo.h"
#define ELM_WIDGET_ITEM_PROTECTED
#include "elm_widget_item.eo.h"