2013/9/9 José Roberto de Souza - Enlightenment Git < no-re...@enlightenment.org>
> zehortigoza pushed a commit to branch master. > > commit 381cf28dbfef619f851f0b997f777f1dd171cca5 > Author: José Roberto de Souza <jose.so...@intel.com> > Date: Mon Sep 9 18:48:29 2013 -0300 > > Add elm_table_child_get() > --- > src/lib/elm_table.c | 25 +++++++++++++++++++++++++ > src/lib/elm_table_eo.h | 15 +++++++++++++++ > src/lib/elm_table_legacy.h | 11 +++++++++++ > 3 files changed, 51 insertions(+) > > No news/changelog needed for this ? > diff --git a/src/lib/elm_table.c b/src/lib/elm_table.c > index 9e68884..c967f4b 100644 > --- a/src/lib/elm_table.c > +++ b/src/lib/elm_table.c > @@ -403,6 +403,16 @@ elm_table_pack_get(Evas_Object *subobj, > eo_do(obj, elm_obj_table_pack_get(subobj, col, row, colspan, rowspan)); > } > > +EAPI Evas_Object * > +elm_table_child_get(Evas_Object *obj, int col, int row) > +{ > + Evas_Object *ret; > + ELM_TABLE_CHECK(obj) NULL; > + > + eo_do(obj, elm_obj_table_child_get(col, row, &ret)); > + return ret; > +} > + > static void > _pack_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list) > { > @@ -441,6 +451,19 @@ _clear(Eo *obj, void *_pd EINA_UNUSED, va_list *list) > } > > static void > +_child_get(Eo *obj, void *_pd EINA_UNUSED, va_list *list) > +{ > + int col = va_arg(*list, int); > + int row = va_arg(*list, int); > + Evas_Object **ret = va_arg(*list, Evas_Object **); > + > + ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd); > + > + if (ret) > + *ret = evas_object_table_child_get(wd->resize_obj, col, row); > +} > + > +static void > _class_constructor(Eo_Class *klass) > { > const Eo_Op_Func_Description func_desc[] = { > @@ -465,6 +488,7 @@ _class_constructor(Eo_Class *klass) > EO_OP_FUNC(ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_PACK_SET), > _pack_set), > EO_OP_FUNC(ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_PACK_GET), > _pack_get), > EO_OP_FUNC(ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_CLEAR), _clear), > + EO_OP_FUNC(ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_CHILD_GET), > _child_get), > EO_OP_FUNC_SENTINEL > }; > eo_class_funcs_set(klass, func_desc); > @@ -482,6 +506,7 @@ static const Eo_Op_Description op_desc[] = { > EO_OP_DESCRIPTION(ELM_OBJ_TABLE_SUB_ID_PACK_SET, "Set the packing > location of an existing child of the table."), > EO_OP_DESCRIPTION(ELM_OBJ_TABLE_SUB_ID_PACK_GET, "Get the packing > location of an existing child of the table."), > EO_OP_DESCRIPTION(ELM_OBJ_TABLE_SUB_ID_CLEAR, "Faster way to remove > all child objects from a table object."), > + EO_OP_DESCRIPTION(ELM_OBJ_TABLE_SUB_ID_CHILD_GET, "Get child object > of table at given coordinates."), > EO_OP_DESCRIPTION_SENTINEL > }; > > diff --git a/src/lib/elm_table_eo.h b/src/lib/elm_table_eo.h > index 5f8f770..dbb3a73 100644 > --- a/src/lib/elm_table_eo.h > +++ b/src/lib/elm_table_eo.h > @@ -15,6 +15,7 @@ enum > ELM_OBJ_TABLE_SUB_ID_PACK_SET, > ELM_OBJ_TABLE_SUB_ID_PACK_GET, > ELM_OBJ_TABLE_SUB_ID_CLEAR, > + ELM_OBJ_TABLE_SUB_ID_CHILD_GET, > ELM_OBJ_TABLE_SUB_ID_LAST > }; > > @@ -160,3 +161,17 @@ enum > * @ingroup Table > */ > #define elm_obj_table_clear(clear) > ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_CLEAR), EO_TYPECHECK(Eina_Bool, clear) > + > +/** > + * @def elm_obj_table_child_get > + * @since 1.8 > + * > + * @brief Get child object of table at given coordinates. > + * > + * @param[in] col column number of child object > + * @param[in] row row number of child object > + * @param[out] ret object at given col and row > + * > + * @ingroup Table > + */ > +#define elm_obj_table_child_get(col, row, ret) > ELM_OBJ_TABLE_ID(ELM_OBJ_TABLE_SUB_ID_CHILD_GET), EO_TYPECHECK(int, col), > EO_TYPECHECK(int, row), EO_TYPECHECK(Evas_Object **, ret) > diff --git a/src/lib/elm_table_legacy.h b/src/lib/elm_table_legacy.h > index 018fb0e..0f5d160 100644 > --- a/src/lib/elm_table_legacy.h > +++ b/src/lib/elm_table_legacy.h > @@ -125,3 +125,14 @@ EAPI void elm_table_pack_get(Evas_Object > *subobj, int *col, int *row, int * > * @ingroup Table > */ > EAPI void elm_table_clear(Evas_Object *obj, Eina_Bool clear); > + > +/** > + * @brief Get child object of table at given coordinates. > + * > + * @param obj The table object > + * @param col Column number of child object > + * @param row Row number of child object > + * > + * @return Child of object if find if not return NULL. > + */ > +EAPI Evas_Object *elm_table_child_get(Evas_Object *obj, int col, int row); > > -- > > > ------------------------------------------------------------------------------ > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! > Discover the easy way to master current and previous Microsoft technologies > and advance your career. Get an incredible 1,500+ hours of step-by-step > tutorial videos with LearnDevNow. Subscribe today and save! > http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk ------------------------------------------------------------------------------ How ServiceNow helps IT people transform IT departments: 1. Consolidate legacy IT systems to a single system of record for IT 2. Standardize and globalize service processes across IT 3. Implement zero-touch automation to replace manual, redundant tasks http://pubads.g.doubleclick.net/gampad/clk?id=51271111&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel