jackdanielz pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=e3dddb8bdeac9ff0b745c16fba3e6da99d57953b
commit e3dddb8bdeac9ff0b745c16fba3e6da99d57953b Author: Daniel Zaoui <daniel.za...@samsung.com> Date: Thu Apr 3 08:42:02 2014 +0300 Eolian: Integration of App Access Object --- src/lib/Makefile.am | 4 +++ src/lib/elm_app_access_object.eo | 13 ++++++++ src/lib/elm_atspi_object.c | 67 ++++++++++------------------------------ 3 files changed, 34 insertions(+), 50 deletions(-) diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am index fe81000..e38583f 100644 --- a/src/lib/Makefile.am +++ b/src/lib/Makefile.am @@ -545,6 +545,8 @@ BUILT_SOURCES = \ elm_access.eo.h \ elm_actionslider.eo.c \ elm_actionslider.eo.h \ + elm_app_access_object.eo.c \ + elm_app_access_object.eo.h \ elm_app_client.eo.c \ elm_app_client.eo.h \ elm_app_client_view.eo.c \ @@ -704,6 +706,7 @@ EXTRA_DIST += \ elm_hover.eo \ elm_access.eo \ elm_actionslider.eo \ + elm_app_access_object.eo \ elm_app_client.eo \ elm_app_client_view.eo \ elm_app_server.eo \ @@ -789,6 +792,7 @@ nodist_includesunstable_HEADERS = \ elm_access.eo.h \ elm_hover.eo.h \ elm_actionslider.eo.h \ + elm_app_access_object.eo.h \ elm_app_client.eo.h \ elm_app_client_view.eo.h \ elm_app_server.eo.h \ diff --git a/src/lib/elm_app_access_object.eo b/src/lib/elm_app_access_object.eo new file mode 100644 index 0000000..5184a94 --- /dev/null +++ b/src/lib/elm_app_access_object.eo @@ -0,0 +1,13 @@ +class Elm_App_Access_Object (Elm_Atspi_Object) +{ + data:null; + implements { + Eo_Base::constructor; + Elm_Atspi_Object::name::get; + Elm_Atspi_Object::parent::get; + Elm_Atspi_Object::role::get; + Elm_Atspi_Object::children::get; + } + +} + diff --git a/src/lib/elm_atspi_object.c b/src/lib/elm_atspi_object.c index a5d6d94..9a9e179 100644 --- a/src/lib/elm_atspi_object.c +++ b/src/lib/elm_atspi_object.c @@ -534,12 +534,11 @@ _elm_widget_access_object_elm_interface_atspi_component_focus_grab(Eo *obj, void #include "elm_widget_access_object.eo.c" /// Elm_Atspi_App base class -#define ELM_ATSPI_APP_CLASS elm_atspi_app_obj_class_get() +#include "elm_app_access_object.eo.h" -static void -_app_children_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list) +EOLIAN static Eina_List* +_elm_app_access_object_elm_atspi_object_children_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED) { - EO_PARAMETER_GET(Eina_List **, ret, list); Eina_List *l, *accs = NULL; Elm_Atspi_Object *aobj; Evas_Object *win; @@ -552,66 +551,34 @@ _app_children_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list) accs = eina_list_append(accs, aobj); } - if (ret) *ret = accs; + return accs; } -static void -_app_constructor(Eo *obj, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) +EOLIAN static void +_elm_app_access_object_eo_base_constructor(Eo *obj, void *_pd EINA_UNUSED) { eo_do_super(obj, ELM_ATSPI_OBJ_CLASS, eo_constructor()); } -static void -_app_name_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) -{ - EO_PARAMETER_GET(const char **, name, list); - if (name) *name = elm_app_name_get(); -} - -static void -_app_role_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) +EOLIAN static const char* +_elm_app_access_object_elm_atspi_object_name_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED) { - EO_PARAMETER_GET(AtspiRole *, ret, list); - if (ret) *ret = ATSPI_ROLE_APPLICATION; + return elm_app_name_get(); } -static void -_app_parent_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list *list EINA_UNUSED) +EOLIAN static AtspiRole +_elm_app_access_object_elm_atspi_object_role_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED) { - EO_PARAMETER_GET(Elm_Atspi_Object **, ret, list); - if (ret) *ret = NULL; + return ATSPI_ROLE_APPLICATION; } -static void -_app_class_constructor(Eo_Class *klass) +EOLIAN static Elm_Atspi_Object* +_elm_app_access_object_elm_atspi_object_parent_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED) { - const Eo_Op_Func_Description func_desc[] = { - EO_OP_FUNC(EO_BASE_ID(EO_BASE_SUB_ID_CONSTRUCTOR), _app_constructor), - EO_OP_FUNC(ELM_ATSPI_OBJ_ID(ELM_ATSPI_OBJ_SUB_ID_NAME_GET), _app_name_get), - EO_OP_FUNC(ELM_ATSPI_OBJ_ID(ELM_ATSPI_OBJ_SUB_ID_ROLE_GET), _app_role_get), - EO_OP_FUNC(ELM_ATSPI_OBJ_ID(ELM_ATSPI_OBJ_SUB_ID_PARENT_GET), _app_parent_get), - EO_OP_FUNC(ELM_ATSPI_OBJ_ID(ELM_ATSPI_OBJ_SUB_ID_CHILDREN_GET), _app_children_get), - EO_OP_FUNC_SENTINEL - }; - eo_class_funcs_set(klass, func_desc); + return NULL; } -static const Eo_Op_Description app_op_desc[] = { - EO_OP_DESCRIPTION_SENTINEL -}; - -static const Eo_Class_Description app_class_desc = { - EO_VERSION, - "Elm_App_Access_Object", - EO_CLASS_TYPE_REGULAR, - EO_CLASS_DESCRIPTION_OPS(NULL, NULL, 0), - NULL, - 0, - _app_class_constructor, - NULL -}; - -EO_DEFINE_CLASS(elm_atspi_app_obj_class_get, &app_class_desc, ELM_ATSPI_OBJ_CLASS, NULL); +#include "elm_app_access_object.eo.c" // elm_win wrapper @@ -702,7 +669,7 @@ Elm_Atspi_Object* _elm_atspi_root_object_get(void) { if (!_app) - _app = eo_add(ELM_ATSPI_APP_CLASS, NULL); + _app = eo_add(ELM_APP_ACCESS_OBJECT_CLASS, NULL); else eo_ref(_app); --