gengrid/genlist: added Eo compatibles for elm_genlist/gengrid_multi_select_mode_set/get() APIs.

This commit is contained in:
Daniel Juyung Seo 2013-11-04 01:15:58 +09:00
parent d58512321d
commit 9509986a05
4 changed files with 128 additions and 8 deletions

View File

@ -3034,18 +3034,38 @@ elm_gengrid_multi_select_mode_set(Evas_Object *obj,
Elm_Object_Multi_Select_Mode mode)
{
ELM_GENGRID_CHECK(obj);
ELM_GENGRID_DATA_GET(obj, sd);
eo_do(obj, elm_obj_gengrid_multi_select_mode_set(mode));
}
sd->multi_select_mode = mode;
static void
_multi_select_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
{
Elm_Object_Multi_Select_Mode mode = va_arg(*list, Elm_Object_Multi_Select_Mode);
Elm_Gengrid_Smart_Data *sd = _pd;
if (mode >= ELM_OBJECT_MULTI_SELECT_MODE_MAX)
return;
if (sd->multi_select_mode != mode)
sd->multi_select_mode = mode;
}
EAPI Elm_Object_Multi_Select_Mode
elm_gengrid_multi_select_mode_get(const Evas_Object *obj)
{
ELM_GENGRID_CHECK(obj) ELM_OBJECT_MULTI_SELECT_MODE_MAX;
ELM_GENGRID_DATA_GET(obj, sd);
Elm_Object_Multi_Select_Mode ret = ELM_OBJECT_MULTI_SELECT_MODE_MAX;
eo_do((Eo *)obj, elm_obj_gengrid_multi_select_mode_get(&ret));
return ret;
}
return sd->multi_select_mode;
static void
_multi_select_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
{
Elm_Object_Multi_Select_Mode *ret = va_arg(*list, Elm_Object_Multi_Select_Mode *);
Elm_Gengrid_Smart_Data *sd = _pd;
*ret = sd->multi_select_mode;
}
EAPI Elm_Object_Item *
@ -4075,6 +4095,8 @@ _class_constructor(Eo_Class *klass)
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_CLEAR), _clear),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET), _multi_select_set),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET), _multi_select_get),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET), _multi_select_mode_set),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET), _multi_select_mode_get),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET), _selected_item_get),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET), _selected_items_get),
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET), _realized_items_get),
@ -4120,6 +4142,8 @@ static const Eo_Op_Description op_desc[] = {
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_CLEAR, "Remove all items from a given gengrid widget."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET, "Enable or disable multi-selection in a given gengrid widget."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET, "Get whether multi-selection is enabled or disabled for a given gengrid widget."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET, "Set the gengrid multi select mode."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET, "Get the gengrid multi select mode."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET, "Get the selected item in a given gengrid widget."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET, "Get a list of selected items in a given gengrid."),
EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET, "Get a list of realized items in gengrid."),

View File

@ -31,6 +31,8 @@ enum
ELM_OBJ_GENGRID_SUB_ID_CLEAR,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET,
ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET,
ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET,
ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET,
@ -279,6 +281,40 @@ enum
*/
#define elm_obj_gengrid_multi_select_get(ret) ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET), EO_TYPECHECK(Eina_Bool *, ret)
/**
* @def elm_obj_gengrid_multi_select_mode_set
* @since 1.8
*
* Set the gengrid multi select mode.
*
* @param[in] mode
*
* - ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT : select/unselect items whenever each
* item is clicked.
* - ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL : Only one item will be selected
* although multi-selection is enabled, if clicked without pressing control
* key. This mode is only available with multi-selection.
*
* @see elm_gengrid_multi_select_set()
* @see elm_gengrid_multi_select_mode_get()
*/
#define elm_obj_gengrid_multi_select_mode_set(mode) ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET), EO_TYPECHECK(Elm_Object_Multi_Select_Mode, mode)
/**
* @def elm_obj_gengrid_multi_select_mode_get
* @since 1.8
*
* Get the gengrid multi select mode.
*
* @param[out] ret
*
* (If getting mode is failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
*
* @see elm_gengrid_multi_select_set()
* @see elm_gengrid_multi_select_mode_set()
*/
#define elm_obj_gengrid_multi_select_mode_get(ret) ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET), EO_TYPECHECK(Elm_Object_Multi_Select_Mode *, ret)
/**
* @def elm_obj_gengrid_selected_item_get
* @since 1.8

View File

@ -5811,18 +5811,38 @@ elm_genlist_multi_select_mode_set(Evas_Object *obj,
Elm_Object_Multi_Select_Mode mode)
{
ELM_GENLIST_CHECK(obj);
ELM_GENLIST_DATA_GET(obj, sd);
eo_do(obj, elm_obj_genlist_multi_select_mode_set(mode));
}
sd->multi_select_mode = mode;
static void
_multi_select_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
{
Elm_Object_Multi_Select_Mode mode = va_arg(*list, Elm_Object_Multi_Select_Mode);
Elm_Genlist_Smart_Data *sd = _pd;
if (mode >= ELM_OBJECT_MULTI_SELECT_MODE_MAX)
return;
if (sd->multi_select_mode != mode)
sd->multi_select_mode = mode;
}
EAPI Elm_Object_Multi_Select_Mode
elm_genlist_multi_select_mode_get(const Evas_Object *obj)
{
ELM_GENLIST_CHECK(obj) ELM_OBJECT_MULTI_SELECT_MODE_MAX;
ELM_GENLIST_DATA_GET(obj, sd);
Elm_Object_Multi_Select_Mode ret = ELM_OBJECT_MULTI_SELECT_MODE_MAX;
eo_do((Eo *)obj, elm_obj_genlist_multi_select_mode_get(&ret));
return ret;
}
return sd->multi_select_mode;
static void
_multi_select_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
{
Elm_Object_Multi_Select_Mode *ret = va_arg(*list, Elm_Object_Multi_Select_Mode *);
Elm_Genlist_Smart_Data *sd = _pd;
*ret = sd->multi_select_mode;
}
EAPI Elm_Object_Item *
@ -7550,6 +7570,8 @@ _class_constructor(Eo_Class *klass)
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_CLEAR), _clear_eo),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_SET), _multi_select_set),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_GET), _multi_select_get),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_SET), _multi_select_mode_set),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_GET), _multi_select_mode_get),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEM_GET), _selected_item_get),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEMS_GET), _selected_items_get),
EO_OP_FUNC(ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_REALIZED_ITEMS_GET), _realized_items_get),
@ -7598,6 +7620,8 @@ static const Eo_Op_Description op_desc[] = {
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_CLEAR, "Remove all items from a given genlist widget."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_SET, "Enable or disable multi-selection in the genlist."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_GET, "Get if multi-selection in genlist is enabled or disabled."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_SET, "Set the genlist multi select mode."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_GET, "Get the genlist multi select mode."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEM_GET, "Get the selected item in the genlist."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEMS_GET, "Get a list of selected items in the genlist."),
EO_OP_DESCRIPTION(ELM_OBJ_GENLIST_SUB_ID_REALIZED_ITEMS_GET, "Get a list of realized items in genlist."),

View File

@ -24,6 +24,8 @@ enum
ELM_OBJ_GENLIST_SUB_ID_CLEAR,
ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_SET,
ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_GET,
ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_SET,
ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_GET,
ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEM_GET,
ELM_OBJ_GENLIST_SUB_ID_SELECTED_ITEMS_GET,
ELM_OBJ_GENLIST_SUB_ID_REALIZED_ITEMS_GET,
@ -198,6 +200,40 @@ enum
*/
#define elm_obj_genlist_multi_select_get(ret) ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_GET), EO_TYPECHECK(Eina_Bool *, ret)
/**
* @def elm_obj_genlist_multi_select_mode_set
* @since 1.8
*
* Set the genlist multi select mode.
*
* @param[in] mode
*
* - ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT : select/unselect items whenever each
* item is clicked.
* - ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL : Only one item will be selected
* although multi-selection is enabled, if clicked without pressing control
* key. This mode is only available with multi-selection.
*
* @see elm_genlist_multi_select_set()
* @see elm_genlist_multi_select_mode_get()
*/
#define elm_obj_genlist_multi_select_mode_set(mode) ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_SET), EO_TYPECHECK(Elm_Object_Multi_Select_Mode, mode)
/**
* @def elm_obj_genlist_multi_select_mode_get
* @since 1.8
*
* Get the genlist multi select mode.
*
* @param[out] ret
*
* (If getting mode is failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
*
* @see elm_genlist_multi_select_set()
* @see elm_genlist_multi_select_mode_set()
*/
#define elm_obj_genlist_multi_select_mode_get(ret) ELM_OBJ_GENLIST_ID(ELM_OBJ_GENLIST_SUB_ID_MULTI_SELECT_MODE_GET), EO_TYPECHECK(Elm_Object_Multi_Select_Mode *, ret)
/**
* @def elm_obj_genlist_selected_item_get
* @since 1.8