forked from enlightenment/efl
Add elm_table_child_get()
This commit is contained in:
parent
38e651dee1
commit
e9103fffb2
|
@ -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)
|
||||
{
|
||||
|
@ -440,6 +450,19 @@ _clear(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
|
|||
evas_object_table_clear(wd->resize_obj, clear);
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
|
@ -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
|
||||
};
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue