forked from enlightenment/enlightenment
parent
0b9f1a9c17
commit
19b2f51f80
|
@ -8,7 +8,7 @@ struct _E_Widget_Data
|
||||||
{
|
{
|
||||||
Evas_Object *o_widget, *o_scrollframe, *o_ilist;
|
Evas_Object *o_widget, *o_scrollframe, *o_ilist;
|
||||||
Eina_List *callbacks;
|
Eina_List *callbacks;
|
||||||
char **value;
|
const char **value;
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
Eina_List *queue;
|
Eina_List *queue;
|
||||||
|
@ -23,7 +23,7 @@ struct _E_Widget_Callback
|
||||||
{
|
{
|
||||||
void (*func)(void *data);
|
void (*func)(void *data);
|
||||||
void *data;
|
void *data;
|
||||||
char *value;
|
const char *value;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _E_Widget_Queue_Item
|
struct _E_Widget_Queue_Item
|
||||||
|
@ -97,7 +97,7 @@ _queue_timer(void *data)
|
||||||
if (!wcb) break;
|
if (!wcb) break;
|
||||||
wcb->func = qi->func;
|
wcb->func = qi->func;
|
||||||
wcb->data = qi->data;
|
wcb->data = qi->data;
|
||||||
if (qi->val) wcb->value = strdup(qi->val);
|
if (qi->val) wcb->value = eina_stringshare_add(qi->val);
|
||||||
if (qi->use_relative == CMD_APPEND)
|
if (qi->use_relative == CMD_APPEND)
|
||||||
{
|
{
|
||||||
wd->callbacks = eina_list_append(wd->callbacks, wcb);
|
wd->callbacks = eina_list_append(wd->callbacks, wcb);
|
||||||
|
@ -182,7 +182,7 @@ _queue_timer(void *data)
|
||||||
if (item)
|
if (item)
|
||||||
{
|
{
|
||||||
wcb = eina_list_data_get(item);
|
wcb = eina_list_data_get(item);
|
||||||
if (wcb && wcb->value) free(wcb->value);
|
if (wcb && wcb->value) eina_stringshare_del(wcb->value);
|
||||||
free(wcb);
|
free(wcb);
|
||||||
wd->callbacks = eina_list_remove_list(wd->callbacks, item);
|
wd->callbacks = eina_list_remove_list(wd->callbacks, item);
|
||||||
}
|
}
|
||||||
|
@ -309,7 +309,7 @@ e_widget_ilist_add(Evas *evas, int icon_w, int icon_h, const char **value)
|
||||||
e_widget_disable_hook_set(obj, _e_wid_disable_hook);
|
e_widget_disable_hook_set(obj, _e_wid_disable_hook);
|
||||||
e_widget_data_set(obj, wd);
|
e_widget_data_set(obj, wd);
|
||||||
|
|
||||||
wd->value = (char **)value;
|
wd->value = value;
|
||||||
|
|
||||||
o = e_scrollframe_add(evas);
|
o = e_scrollframe_add(evas);
|
||||||
wd->o_scrollframe = o;
|
wd->o_scrollframe = o;
|
||||||
|
@ -562,7 +562,7 @@ e_widget_ilist_clear(Evas_Object *obj)
|
||||||
e_scrollframe_child_pos_set(wd->o_scrollframe, 0, 0);
|
e_scrollframe_child_pos_set(wd->o_scrollframe, 0, 0);
|
||||||
EINA_LIST_FREE(wd->callbacks, wcb)
|
EINA_LIST_FREE(wd->callbacks, wcb)
|
||||||
{
|
{
|
||||||
if (wcb->value) free(wcb->value);
|
eina_stringshare_del(wcb->value);
|
||||||
free(wcb);
|
free(wcb);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -930,7 +930,7 @@ e_widget_ilist_remove_num(Evas_Object *obj, int n)
|
||||||
if (item)
|
if (item)
|
||||||
{
|
{
|
||||||
wcb = eina_list_data_get(item);
|
wcb = eina_list_data_get(item);
|
||||||
if (wcb && wcb->value) free(wcb->value);
|
if (wcb) eina_stringshare_del(wcb->value);
|
||||||
free(wcb);
|
free(wcb);
|
||||||
wd->callbacks = eina_list_remove_list(wd->callbacks, item);
|
wd->callbacks = eina_list_remove_list(wd->callbacks, item);
|
||||||
}
|
}
|
||||||
|
@ -1004,7 +1004,7 @@ _e_wid_del_hook(Evas_Object *obj)
|
||||||
_queue_clear(obj);
|
_queue_clear(obj);
|
||||||
EINA_LIST_FREE(wd->callbacks, wcb)
|
EINA_LIST_FREE(wd->callbacks, wcb)
|
||||||
{
|
{
|
||||||
if (wcb->value) free(wcb->value);
|
if (wcb) eina_stringshare_del(wcb->value);
|
||||||
free(wcb);
|
free(wcb);
|
||||||
}
|
}
|
||||||
free(wd);
|
free(wd);
|
||||||
|
@ -1060,7 +1060,7 @@ _e_wid_cb_item_sel(void *data, void *data2)
|
||||||
{
|
{
|
||||||
if (*(wd->value)) eina_stringshare_del(*(wd->value));
|
if (*(wd->value)) eina_stringshare_del(*(wd->value));
|
||||||
if (wcb->value)
|
if (wcb->value)
|
||||||
*(wd->value) = (char *)eina_stringshare_add(wcb->value);
|
*(wd->value) = eina_stringshare_ref(wcb->value);
|
||||||
else
|
else
|
||||||
*(wd->value) = NULL;
|
*(wd->value) = NULL;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue