Change diskpicker items functions names

elm_diskpicker_item_prev/next ->
elm_diskpicker_item_prev_get/next_get

elm_diskpicker_item_selected_set(it) ->
elm_diskpicker_item_selected_set(it, bool selected)

elm_diskpicker_item_selected_get(obj) ->
elm_diskpicker_selected_item_get(obj)

Added bool elm_diskpicker_item_selected_get(it)
      item elm_diskpicker_first_item_get
      item elm_diskpicker_last_item_get



SVN revision: 54379
This commit is contained in:
Bruno Dilly 2010-11-09 20:27:32 +00:00
parent 317226eef6
commit 37a717a578
3 changed files with 100 additions and 17 deletions

View File

@ -15,8 +15,8 @@ static void
_disk_next(void *data __UNUSED__, Evas_Object * obj __UNUSED__, void *event_info)
{
Elm_Diskpicker_Item *next, *prev, *it = event_info;
prev = elm_diskpicker_item_prev(it);
next = elm_diskpicker_item_next(it);
prev = elm_diskpicker_item_prev_get(it);
next = elm_diskpicker_item_next_get(it);
printf("Prev: %s, Next: %s\n", elm_diskpicker_item_label_get(prev),
elm_diskpicker_item_label_get(next));
}
@ -49,7 +49,7 @@ _disk_create(Evas_Object *win, Eina_Bool round)
elm_diskpicker_item_append(di, "November", NULL, NULL, NULL);
elm_diskpicker_item_append(di, "December", NULL, NULL, NULL);
elm_diskpicker_item_selected_set(it);
elm_diskpicker_item_selected_set(it, EINA_TRUE);
elm_diskpicker_round_set(di, round);
return di;
@ -59,6 +59,7 @@ void
test_diskpicker(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
{
Evas_Object *win, *bg, *bx, *disk, *ic;
Elm_Diskpicker_Item *it;
char buf[PATH_MAX];
win = elm_win_add(NULL, "diskpicker", ELM_WIN_BASIC);
@ -83,6 +84,8 @@ test_diskpicker(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_
elm_box_pack_end(bx, disk);
evas_object_show(disk);
evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
it = elm_diskpicker_selected_item_get(disk);
elm_diskpicker_item_selected_set(it, EINA_FALSE);
disk = _disk_create(win, EINA_FALSE);
evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
@ -90,6 +93,9 @@ test_diskpicker(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_
elm_box_pack_end(bx, disk);
evas_object_show(disk);
evas_object_smart_callback_add(disk, "selected", _print_disk_info_cb, NULL);
it = elm_diskpicker_first_item_get(disk);
it = elm_diskpicker_item_next_get(it);
elm_diskpicker_item_selected_set(it, EINA_TRUE);
disk = _disk_create(win, EINA_FALSE);
evas_object_size_hint_weight_set(disk, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

View File

@ -2245,17 +2245,20 @@ extern "C" {
EAPI void elm_diskpicker_clear(Evas_Object *obj);
EAPI const Eina_List *elm_diskpicker_items_get(const Evas_Object *obj);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_append(Evas_Object *obj, const char *label, Evas_Object *icon, Evas_Smart_Cb func, const void *data);
EAPI void elm_diskpicker_item_del(Elm_Diskpicker_Item *it);
EAPI void elm_diskpicker_item_del(Elm_Diskpicker_Item *item);
EAPI void elm_diskpicker_item_del_cb_set(Elm_Diskpicker_Item *item, Evas_Smart_Cb func);
EAPI void *elm_diskpicker_item_data_get(const Elm_Diskpicker_Item *item);
EAPI Evas_Object *elm_diskpicker_item_icon_get(const Elm_Diskpicker_Item *item);
EAPI void elm_diskpicker_item_icon_set(Elm_Diskpicker_Item *item, Evas_Object *icon);
EAPI const char *elm_diskpicker_item_label_get(const Elm_Diskpicker_Item *it);
EAPI void elm_diskpicker_item_label_set(Elm_Diskpicker_Item *it, const char *label);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_selected_get(const Evas_Object *obj);
EAPI void elm_diskpicker_item_selected_set(Elm_Diskpicker_Item *it);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_prev(const Elm_Diskpicker_Item *it);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_next(const Elm_Diskpicker_Item *it);
EAPI const char *elm_diskpicker_item_label_get(const Elm_Diskpicker_Item *item);
EAPI void elm_diskpicker_item_label_set(Elm_Diskpicker_Item *item, const char *label);
EAPI Elm_Diskpicker_Item *elm_diskpicker_selected_item_get(const Evas_Object *obj);
EAPI void elm_diskpicker_item_selected_set(Elm_Diskpicker_Item *item, Eina_Bool selected);
EAPI Eina_Bool elm_diskpicker_item_selected_get(const Elm_Diskpicker_Item *item);
EAPI Elm_Diskpicker_Item *elm_diskpicker_first_item_get(const Evas_Object *obj);
EAPI Elm_Diskpicker_Item *elm_diskpicker_last_item_get(const Evas_Object *obj);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_prev_get(const Elm_Diskpicker_Item *item);
EAPI Elm_Diskpicker_Item *elm_diskpicker_item_next_get(const Elm_Diskpicker_Item *item);
EAPI void elm_diskpicker_item_tooltip_text_set(Elm_Diskpicker_Item *item, const char *text);
EAPI void elm_diskpicker_item_tooltip_content_cb_set(Elm_Diskpicker_Item *item, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb);
EAPI void elm_diskpicker_item_tooltip_unset(Elm_Diskpicker_Item *item);

View File

@ -1119,7 +1119,7 @@ elm_diskpicker_item_label_set(Elm_Diskpicker_Item * it, const char *label)
* @ingroup Diskpicker
*/
EAPI Elm_Diskpicker_Item *
elm_diskpicker_item_selected_get(const Evas_Object *obj)
elm_diskpicker_selected_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd = elm_widget_data_get(obj);
@ -1128,25 +1128,57 @@ elm_diskpicker_item_selected_get(const Evas_Object *obj)
}
/**
* Set the selected item
* Set the selected state of an item
*
* @param it The item of diskpicker
* This sets the selected state (EINA_TRUE selected, EINA_FALSE not selected)
* of the given item @p it.
* If a new item is selected the previosly selected will be unselected.
* If the item @p it is unselected, the first item will be selected.
*
* @param it The diskpicker item
* @param selected The selected state
*
* @ingroup Diskpicker
*/
EAPI void
elm_diskpicker_item_selected_set(Elm_Diskpicker_Item * it)
elm_diskpicker_item_selected_set(Elm_Diskpicker_Item *it, Eina_Bool selected)
{
ELM_DISKPICKER_ITEM_CHECK_OR_RETURN(it);
Widget_Data *wd;
wd = elm_widget_data_get(it->base.widget);
if (!wd) return;
wd->selected_item = it;
if ((wd->selected_item == it) && (selected))
return;
if ((wd->selected_item == it) && (!selected))
wd->selected_item = eina_list_data_get(wd->items);
else
wd->selected_item = it;
if (!wd->idler)
ecore_idler_add(_move_scroller, it->base.widget);
}
/*
* Get the selected state of @p item.
*
* @param it The diskpicker item
* @return If true, the item is selected
*
* @ingroup Diskpicker
*/
EAPI Eina_Bool
elm_diskpicker_item_selected_get(const Elm_Diskpicker_Item *it)
{
ELM_DISKPICKER_ITEM_CHECK_OR_RETURN(it, EINA_FALSE);
Widget_Data *wd;
wd = elm_widget_data_get(it->base.widget);
if (!wd) return EINA_FALSE;
return (wd->selected_item == it);
}
/**
* Set the function called when a diskpicker item is freed.
*
@ -1225,7 +1257,7 @@ elm_diskpicker_item_icon_set(Elm_Diskpicker_Item *it, Evas_Object *icon)
* @ingroup Diskpicker
*/
EAPI Elm_Diskpicker_Item *
elm_diskpicker_item_prev(const Elm_Diskpicker_Item *it)
elm_diskpicker_item_prev_get(const Elm_Diskpicker_Item *it)
{
ELM_DISKPICKER_ITEM_CHECK_OR_RETURN(it, NULL);
if (it->node->prev) return it->node->prev->data;
@ -1241,13 +1273,55 @@ elm_diskpicker_item_prev(const Elm_Diskpicker_Item *it)
* @ingroup Diskpicker
*/
EAPI Elm_Diskpicker_Item *
elm_diskpicker_item_next(const Elm_Diskpicker_Item *it)
elm_diskpicker_item_next_get(const Elm_Diskpicker_Item *it)
{
ELM_DISKPICKER_ITEM_CHECK_OR_RETURN(it, NULL);
if (it->node->next) return it->node->next->data;
else return NULL;
}
/**
* Get the first item in the diskpicker
*
* @param obj The diskpicker object
* @return The first item, or NULL if none
*
* @ingroup Diskpicker
*/
EAPI Elm_Diskpicker_Item *
elm_diskpicker_first_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
wd = elm_widget_data_get(obj);
if (!wd || !wd->items)
return NULL;
return eina_list_data_get(wd->items);
}
/**
* Get the last item in the diskpicker
*
* @param obj The diskpicker object
* @return The last item, or NULL if none
*
* @ingroup Diskpicker
*/
EAPI Elm_Diskpicker_Item *
elm_diskpicker_last_item_get(const Evas_Object *obj)
{
ELM_CHECK_WIDTYPE(obj, widtype) NULL;
Widget_Data *wd;
wd = elm_widget_data_get(obj);
if (!wd || !wd->items)
return NULL;
return eina_list_data_get(eina_list_last(wd->items));
}
/**
* Set the text to be shown in the diskpicker item.
*