diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am index d3594ba0c..03b972cda 100644 --- a/src/bin/Makefile.am +++ b/src/bin/Makefile.am @@ -119,6 +119,7 @@ e_livethumb.h \ e_int_border_border.h \ e_widget_ilist.h \ e_widget_tlist.h \ +e_widget_config_list.h \ e_slider.h \ e_widget_slider.h \ e_int_config_window_manipulation.h \ @@ -249,6 +250,7 @@ e_livethumb.c \ e_int_border_border.c \ e_widget_ilist.c \ e_widget_tlist.c \ +e_widget_config_list.c \ e_slider.c \ e_widget_slider.c \ e_int_config_window_manipulation.c \ diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h index cb2e025af..c857f140e 100644 --- a/src/bin/e_includes.h +++ b/src/bin/e_includes.h @@ -97,6 +97,7 @@ #include "e_livethumb.h" #include "e_int_border_border.h" #include "e_widget_ilist.h" +#include "e_widget_config_list.h" #include "e_slider.h" #include "e_widget_slider.h" #include "e_int_config_window_manipulation.h" diff --git a/src/bin/e_int_config_fonts.c b/src/bin/e_int_config_fonts.c index 48d13a94d..2b2654fbf 100644 --- a/src/bin/e_int_config_fonts.c +++ b/src/bin/e_int_config_fonts.c @@ -14,13 +14,7 @@ static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Co static void _ilist_font_cb_change(void *data, Evas_Object *obj); static void _enabled_font_cb_change(void *data, Evas_Object *obj); -static void _ilist_fallback_cb_change(void *data, Evas_Object *obj); static void _enabled_fallback_cb_change(void *data, Evas_Object *obj); -static void _button_fallback_cb_add(void *data, void *obj); -static void _button_fallback_cb_remove(void *data, void *obj); -static void _button_fallback_cb_up(void *data, void *obj); -static void _button_fallback_cb_down(void *data, void *obj); -static void _list_select_num(E_Config_Dialog_Data *cfdata, int indx); struct _E_Text_Class_Pair { @@ -80,7 +74,6 @@ struct _E_Config_Dialog_Data int cur_index; /* Font Fallbacks */ - char *cur_fallback; int cur_fallbacks_enabled; /* Font Hinting */ @@ -97,12 +90,6 @@ struct _E_Config_Dialog_Data /* Font Fallbacks */ Evas_Object *fallback_list; /* Selecting a list entry starts edit*/ - - Evas_Object *fallback; /* Text Entry */ - Evas_Object *fallback_up; /* Move selected list entry up */ - Evas_Object *fallback_down; /* Move selected list entry down */ - Evas_Object *fallback_add; /* create and select a new list entry */ - Evas_Object *fallback_remove; /* remove the selected entry */ } gui; }; @@ -249,10 +236,10 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) if (cfdata->cur_fallbacks_enabled) { - for (i = 0; i < e_widget_ilist_count(cfdata->gui.fallback_list); i++) + for (i = 0; i < e_widget_config_list_count(cfdata->gui.fallback_list); i++) { const char *fallback; - fallback = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, i); + fallback = e_widget_config_list_nth_get(cfdata->gui.fallback_list, i); if (fallback != NULL && strlen(fallback) > 0) e_font_fallback_append(fallback); } @@ -369,88 +356,35 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf e_widget_list_object_append(o, of, 1, 1, 0.5); /* Create Fallbacks Widgets */ - option_enable = (e_font_fallback_list() != NULL); - of = e_widget_frametable_add(evas, _("Font Fallbacks"), 1); + of = e_widget_framelist_add(evas, _("Font Fallbacks"), 0); + e_widget_framelist_content_align_set(of, 0.5, 0.5); - ob = e_widget_button_add(evas, _("Move Up"), "widget/up_arrow", _button_fallback_cb_up, cfdata, NULL); - cfdata->gui.fallback_up = ob; - e_widget_disabled_set(ob, 1); - e_widget_frametable_object_append( of, - ob, - 1, 0, 1, 1, - 1, 1, 1, 1); + ob = e_widget_config_list_add(evas, e_widget_entry_add, _("Fallback Name")); + cfdata->gui.fallback_list = ob; + e_widget_framelist_object_append(of, ob); - - ob = e_widget_button_add(evas, _("Move Down"), "widget/down_arrow", _button_fallback_cb_down, cfdata, NULL); - cfdata->gui.fallback_down = ob; - e_widget_disabled_set(ob, 1); - e_widget_frametable_object_append( of, - ob, - 1, 3, 1, 1, - 1, 1, 1, 1); - - - cfdata->gui.fallback_list = e_widget_ilist_add(evas, 16, 16, NULL); - e_widget_disabled_set(cfdata->gui.fallback_list, !option_enable); - e_widget_min_size_set(cfdata->gui.fallback_list, 100, 100); - e_widget_on_change_hook_set(cfdata->gui.fallback_list, _ilist_fallback_cb_change, cfdata); /* Fill In Ilist */ + option_enable = 0; for (i = 0; i < evas_list_count(e_font_fallback_list()); i++) { E_Font_Fallback *eff; eff = evas_list_nth(e_font_fallback_list(), i); - e_widget_ilist_append(cfdata->gui.fallback_list, NULL, eff->name, NULL, NULL, NULL); + e_widget_config_list_append(ob, eff->name); + option_enable = 1; } - e_widget_ilist_go(cfdata->gui.fallback_list); - e_widget_frametable_object_append( of, - cfdata->gui.fallback_list, - 2, /* Col Start*/ - 0, /* Row Start */ - 1, /* Col Span*/ - 4, /* Row Span*/ - 1, 1, 1, 1); - - ob = e_widget_label_add(evas, _("Fallback Name")); - e_widget_frametable_object_append( of, - ob, - 0, 0, 1, 1, - 1, 1, 1, 1); - cfdata->gui.fallback = e_widget_entry_add(evas, &(cfdata->cur_fallback)); - e_widget_disabled_set(cfdata->gui.fallback, !option_enable); - e_widget_min_size_set(cfdata->gui.fallback, 100, 25); - e_widget_frametable_object_append(of, cfdata->gui.fallback, - 0, 1, 1, 1, - 1, 1, 1, 1); - - cfdata->gui.fallback_add = e_widget_button_add(evas, _("Add"), NULL, _button_fallback_cb_add, cfdata, NULL); - e_widget_disabled_set(cfdata->gui.fallback_add, !option_enable); - e_widget_frametable_object_append( of, - cfdata->gui.fallback_add, - 1, 1, 1, 1, - 1, 1, 1, 1); - - cfdata->gui.fallback_remove = e_widget_button_add(evas, _("Remove"), NULL, _button_fallback_cb_remove, cfdata, NULL); - e_widget_disabled_set(cfdata->gui.fallback_remove, !option_enable); - e_widget_frametable_object_append( of, - cfdata->gui.fallback_remove , - 1, 2, 1, 1, - 1, 1, 1, 1); - ob = e_widget_check_add(evas, _("Enable Fallbacks"), &(cfdata->cur_fallbacks_enabled)); - e_widget_frametable_object_append(of, ob, + e_widget_config_list_object_append( cfdata->gui.fallback_list, + ob, 0, 3, 1, 1, 1, 1, 1, 1); + e_widget_on_change_hook_set(ob, _enabled_fallback_cb_change, cfdata); e_widget_check_checked_set(ob, option_enable); - e_widget_on_change_hook_set(ob, _enabled_fallback_cb_change, cfdata); - - if (e_widget_ilist_count(cfdata->gui.fallback_list) > 0) - { - e_widget_ilist_selected_set(cfdata->gui.fallback_list, 0); - } + e_widget_change(ob); e_widget_list_object_append(o, of, 1, 1, 0.5); + return o; } @@ -511,171 +445,13 @@ _enabled_font_cb_change(void *data, Evas_Object *obj) } /* Private Font Fallback Functions */ -static void _ilist_fallback_cb_change(void *data, Evas_Object *obj) -{ - int indx; - E_Config_Dialog_Data *cfdata; - - cfdata = data; - if (!cfdata) return; - - indx = e_widget_ilist_selected_get(cfdata->gui.fallback_list); - _list_select_num(cfdata, indx); -} static void _enabled_fallback_cb_change(void *data, Evas_Object *obj) { E_Config_Dialog_Data *cfdata; cfdata = data; if (!cfdata) return; - - if (cfdata->cur_fallbacks_enabled) - { - e_widget_disabled_set(cfdata->gui.fallback_list, 0); - e_widget_disabled_set(cfdata->gui.fallback_add, 0); - e_widget_disabled_set(cfdata->gui.fallback, 0); - } - else - { - _list_select_num(cfdata, -1); - e_widget_disabled_set(cfdata->gui.fallback_list, 1); - e_widget_disabled_set(cfdata->gui.fallback, 1); - e_widget_disabled_set(cfdata->gui.fallback_add, 1); - } -} -static void _button_fallback_cb_add(void *data, void *obj) -{ - E_Config_Dialog_Data *cfdata; - - cfdata = data; - if (!cfdata) return; - - if (cfdata->cur_fallback && strlen(cfdata->cur_fallback) > 0) - { - int count; - int i; - - /* If it already esists just select the existing one */ - for (i = 0; i < e_widget_ilist_count(cfdata->gui.fallback_list); i++) - { - const char *fallback; - fallback = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, i); - if ( fallback != NULL && - strlen(fallback) > 0 && - !strcmp(fallback, cfdata->cur_fallback) ) - { - e_widget_ilist_selected_set(cfdata->gui.fallback_list, i); - return; - } - } - - e_widget_ilist_append(cfdata->gui.fallback_list, NULL, cfdata->cur_fallback, NULL, NULL, NULL); - e_widget_ilist_go(cfdata->gui.fallback_list); - count = e_widget_ilist_count(cfdata->gui.fallback_list); - e_widget_ilist_selected_set(cfdata->gui.fallback_list, count - 1); - - e_widget_entry_text_set(cfdata->gui.fallback, ""); - } + + e_widget_disabled_set(cfdata->gui.fallback_list, !cfdata->cur_fallbacks_enabled); } -static void _button_fallback_cb_remove(void *data, void *obj) -{ - int indx; - int count; - E_Config_Dialog_Data *cfdata; - - cfdata = data; - if (!cfdata) return; - - indx = e_widget_ilist_selected_get(cfdata->gui.fallback_list); - count = e_widget_ilist_count(cfdata->gui.fallback_list); - - e_widget_ilist_remove_num(cfdata->gui.fallback_list, indx); - - e_widget_ilist_go(cfdata->gui.fallback_list); - e_widget_ilist_selected_set(cfdata->gui.fallback_list, indx); - if (count == 1) - { - _list_select_num(cfdata, -1); - } -} -static void _button_fallback_cb_up(void *data, void *obj) -{ - E_Config_Dialog_Data *cfdata; - int idx_sel; - const char *label_sel; - const char *label_rep; - - cfdata = data; - if (!cfdata) return; - - idx_sel = e_widget_ilist_selected_get(cfdata->gui.fallback_list); - - label_sel = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel); - label_rep = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel - 1); - - e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel - 1, label_sel); - e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel, label_rep); - - e_widget_ilist_selected_set(cfdata->gui.fallback_list, idx_sel - 1); -} -static void _button_fallback_cb_down(void *data, void *obj) -{ - E_Config_Dialog_Data *cfdata; - int idx_sel; - const char *label_sel; - const char *label_rep; - - cfdata = data; - if (!cfdata) return; - - idx_sel = e_widget_ilist_selected_get(cfdata->gui.fallback_list); - - label_sel = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel); - label_rep = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel + 1); - - e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel + 1, label_sel); - e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel, label_rep); - - e_widget_ilist_selected_set(cfdata->gui.fallback_list, idx_sel + 1); -} - -static void _list_select_num(E_Config_Dialog_Data *cfdata, int indx) -{ - int count; - - /* Disable selecting the list while we are disabled */ - if (indx >= 0 && !cfdata->cur_fallbacks_enabled) return; - - count = e_widget_ilist_count(cfdata->gui.fallback_list); - - if (count == 0 || indx < 0) - { - e_widget_disabled_set(cfdata->gui.fallback_remove, 1); - } - else - { - e_widget_disabled_set(cfdata->gui.fallback_remove, 0); - } - - if (count == 1 || indx < 0) - { - e_widget_disabled_set(cfdata->gui.fallback_up, 1); - e_widget_disabled_set(cfdata->gui.fallback_down, 1); - } - else if (indx == 0) - { - e_widget_disabled_set(cfdata->gui.fallback_up, 1); - e_widget_disabled_set(cfdata->gui.fallback_down, 0); - } - else if (indx + 1 == count) - { - e_widget_disabled_set(cfdata->gui.fallback_up, 0); - e_widget_disabled_set(cfdata->gui.fallback_down, 1); - } - else - { - e_widget_disabled_set(cfdata->gui.fallback_up, 0); - e_widget_disabled_set(cfdata->gui.fallback_down, 0); - } -} diff --git a/src/bin/e_widget_config_list.c b/src/bin/e_widget_config_list.c new file mode 100644 index 000000000..f3b660ef6 --- /dev/null +++ b/src/bin/e_widget_config_list.c @@ -0,0 +1,348 @@ +/* + * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 + */ +#include "e.h" + +typedef struct _E_Widget_Data E_Widget_Data; + +/* subsystem functions */ +static void _list_cb_change(void *data, Evas_Object *obj); +static void _button_cb_add(void *data, void *obj); +static void _button_cb_remove(void *data, void *obj); +static void _button_cb_up(void *data, void *obj); +static void _button_cb_down(void *data, void *obj); +static void _list_select_num(E_Widget_Data *wd, int indx); + +static void _e_wid_disable_hook(Evas_Object *obj); +static void _e_wid_del_hook(Evas_Object *obj); + +struct _E_Widget_Data +{ + /* Current Data */ + char *cur_entry; + int cur_enabled; + + struct + { + Evas_Object *list; /* Selecting a list entry starts edit*/ + Evas_Object *table; + + Evas_Object *entry; /* Generic Entry */ + Evas_Object *up; /* Move selected list entry up */ + Evas_Object *down; /* Move selected list entry down */ + Evas_Object *add; /* create and select a new list entry */ + Evas_Object *remove; /* remove the selected entry */ + } + gui; +}; + +/* Externally accessible functions */ +EAPI Evas_Object * +e_widget_config_list_add(Evas *evas, Evas_Object* (*func_entry_add) (Evas *evas, char **val), const char *label) +{ + Evas_Object *obj, *o; + E_Widget_Data *wd; + Evas_Coord mw, mh; + + obj = e_widget_add(evas); + e_widget_del_hook_set(obj, _e_wid_del_hook); + e_widget_disable_hook_set(obj, _e_wid_disable_hook); + wd = E_NEW(E_Widget_Data, 1); + e_widget_data_set(obj, wd); + + o = e_widget_table_add(evas, 1); + wd->gui.table = o; + e_widget_sub_object_add(obj, o); + + o = e_widget_button_add(evas, _("Move Up"), "widget/up_arrow", _button_cb_up, wd, NULL); + wd->gui.up = o; + e_widget_disabled_set(o, 1); + e_widget_table_object_append( wd->gui.table, + o, + 1, 0, 1, 1, + 1, 1, 1, 1); + + + o = e_widget_button_add(evas, _("Move Down"), "widget/down_arrow", _button_cb_down, wd, NULL); + wd->gui.down = o; + e_widget_disabled_set(o, 1); + e_widget_table_object_append( wd->gui.table, + o, + 1, 3, 1, 1, + 1, 1, 1, 1); + + + o = e_widget_ilist_add(evas, 16, 16, NULL); + wd->gui.list = o; + e_widget_disabled_set(o, 1); + e_widget_min_size_set(o, 100, 100); + e_widget_on_change_hook_set(o, _list_cb_change, wd); + e_widget_ilist_go(o); + e_widget_table_object_append( wd->gui.table, + o, + 2, 0, 1, 4, + 1, 1, 1, 1); + + o = e_widget_label_add(evas, label); + e_widget_table_object_append( wd->gui.table, + o, + 0, 0, 1, 1, + 1, 1, 1, 1); + + o = func_entry_add(evas, &(wd->cur_entry)); + wd->gui.entry = o; + e_widget_disabled_set(o, 1); + e_widget_min_size_set(o, 100, 25); + e_widget_table_object_append( wd->gui.table, + o, + 0, 1, 1, 1, + 1, 1, 1, 1); + + o = e_widget_button_add(evas, _("Add"), NULL, _button_cb_add, wd, obj); + wd->gui.add = o; + e_widget_disabled_set(o, 1); + e_widget_table_object_append( wd->gui.table, + o, + 1, 1, 1, 1, + 1, 1, 1, 1); + + o = e_widget_button_add(evas, _("Remove"), NULL, _button_cb_remove, wd, obj); + wd->gui.remove = o; + e_widget_disabled_set(o, 1); + e_widget_table_object_append( wd->gui.table, + o, + 1, 2, 1, 1, + 1, 1, 1, 1); + + e_widget_min_size_get(wd->gui.table, &mw, &mh); + e_widget_min_size_set(obj, mw, mh); + e_widget_resize_object_set(obj, wd->gui.table); + + return obj; +} + +EAPI int +e_widget_config_list_count(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + return e_widget_ilist_count(wd->gui.list); +} + +EAPI const char * +e_widget_config_list_nth_get(Evas_Object *obj, int n) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + return e_widget_ilist_nth_label_get(wd->gui.list, n); +} + +EAPI void +e_widget_config_list_append(Evas_Object *obj, const char *entry) +{ + E_Widget_Data *wd; + int count; + + wd = e_widget_data_get(obj); + e_widget_ilist_append(wd->gui.list, NULL, entry, NULL, NULL, NULL); + e_widget_ilist_go(wd->gui.list); + count = e_widget_ilist_count(wd->gui.list); + e_widget_ilist_selected_set(wd->gui.list, count - 1); +} + +EAPI void +e_widget_config_list_object_append(Evas_Object *obj, Evas_Object *sobj, int col, int row, int colspan, int rowspan, int fill_w, int fill_h, int expand_w, int expand_h) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + e_widget_table_object_append(wd->gui.table, sobj, col, row, colspan, rowspan, fill_w, fill_h, expand_w, expand_h); +} + +/* Private Function defs */ +static void _list_cb_change(void *data, Evas_Object *obj) +{ + int indx; + E_Widget_Data *wd; + + wd = data; + if (!wd) return; + + indx = e_widget_ilist_selected_get(wd->gui.list); + _list_select_num(wd, indx); +} + + +static void _button_cb_add(void *data, void *obj) +{ + E_Widget_Data *wd; + Evas_Object *o; + + o = obj; + wd = data; + if (!o) return; + if (!wd) return; + + if (wd->cur_entry && strlen(wd->cur_entry) > 0) + { + int i; + + /* If it already esists just select the existing one */ + for (i = 0; i < e_widget_ilist_count(wd->gui.list); i++) + { + const char *label; + label = e_widget_ilist_nth_label_get(wd->gui.list, i); + if ( label != NULL && + strlen(label) > 0 && + !strcmp(label, wd->cur_entry) ) + { + e_widget_ilist_selected_set(wd->gui.list, i); + return; + } + } + e_widget_config_list_append(o, wd->cur_entry); + e_widget_entry_text_set(wd->gui.entry, ""); + } +} + +static void _button_cb_remove(void *data, void *obj) +{ + int indx; + int count; + E_Widget_Data *wd; + + wd = data; + if (!wd) return; + + indx = e_widget_ilist_selected_get(wd->gui.list); + count = e_widget_ilist_count(wd->gui.list); + + e_widget_ilist_remove_num(wd->gui.list, indx); + + e_widget_ilist_go(wd->gui.list); + e_widget_ilist_selected_set(wd->gui.list, indx); + if (count == 1) + { + _list_select_num(wd, -1); + } +} + +static void _button_cb_up(void *data, void *obj) +{ + E_Widget_Data *wd; + int idx_sel; + const char *label_sel; + const char *label_rep; + + wd = data; + if (!wd) return; + + idx_sel = e_widget_ilist_selected_get(wd->gui.list); + + label_sel = e_widget_ilist_nth_label_get(wd->gui.list, idx_sel); + label_rep = e_widget_ilist_nth_label_get(wd->gui.list, idx_sel - 1); + + e_widget_ilist_nth_label_set(wd->gui.list, idx_sel - 1, label_sel); + e_widget_ilist_nth_label_set(wd->gui.list, idx_sel, label_rep); + + e_widget_ilist_selected_set(wd->gui.list, idx_sel - 1); +} + +static void _button_cb_down(void *data, void *obj) +{ + E_Widget_Data *wd; + int idx_sel; + const char *label_sel; + const char *label_rep; + + wd = data; + if (!wd) return; + + idx_sel = e_widget_ilist_selected_get(wd->gui.list); + + label_sel = e_widget_ilist_nth_label_get(wd->gui.list, idx_sel); + label_rep = e_widget_ilist_nth_label_get(wd->gui.list, idx_sel + 1); + + e_widget_ilist_nth_label_set(wd->gui.list, idx_sel + 1, label_sel); + e_widget_ilist_nth_label_set(wd->gui.list, idx_sel, label_rep); + + e_widget_ilist_selected_set(wd->gui.list, idx_sel + 1); +} + +static void _list_select_num(E_Widget_Data *wd, int indx) +{ + int count; + + /* Disable selecting the list while we are disabled */ + if (indx >= 0 && !wd->cur_enabled) return; + + count = e_widget_ilist_count(wd->gui.list); + + if (count == 0 || indx < 0) + { + e_widget_disabled_set(wd->gui.remove, 1); + } + else + { + e_widget_disabled_set(wd->gui.remove, 0); + } + + if (count == 1 || indx < 0) + { + e_widget_disabled_set(wd->gui.up, 1); + e_widget_disabled_set(wd->gui.down, 1); + } + else if (indx == 0) + { + e_widget_disabled_set(wd->gui.up, 1); + e_widget_disabled_set(wd->gui.down, 0); + } + else if (indx + 1 == count) + { + e_widget_disabled_set(wd->gui.up, 0); + e_widget_disabled_set(wd->gui.down, 1); + } + else + { + e_widget_disabled_set(wd->gui.up, 0); + e_widget_disabled_set(wd->gui.down, 0); + } +} + +/* Callback Functions */ +static void +_e_wid_del_hook(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + free(wd); +} + +static void +_e_wid_disable_hook(Evas_Object *obj) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + if (!wd) return; + + wd->cur_enabled = !e_widget_disabled_get(obj); + + if (wd->cur_enabled) + { + e_widget_disabled_set(wd->gui.list, 0); + e_widget_disabled_set(wd->gui.add, 0); + e_widget_disabled_set(wd->gui.entry, 0); + } + else + { + _list_select_num(wd, -1); + e_widget_disabled_set(wd->gui.list, 1); + e_widget_disabled_set(wd->gui.entry, 1); + e_widget_disabled_set(wd->gui.add, 1); + } +} + diff --git a/src/bin/e_widget_config_list.h b/src/bin/e_widget_config_list.h new file mode 100644 index 000000000..a77e97c90 --- /dev/null +++ b/src/bin/e_widget_config_list.h @@ -0,0 +1,16 @@ +/* + * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 + */ +#ifdef E_TYPEDEFS +#else +#ifndef E_WIDGET_CONFIG_LIST_H +#define E_WIDGET_CONFIG_LIST_H + +EAPI Evas_Object *e_widget_config_list_add(Evas *evas, Evas_Object* (*func_entry_add) (Evas *evas, char **val), const char *label); +EAPI int e_widget_config_list_count(Evas_Object *obj); +EAPI const char *e_widget_config_list_nth_get(Evas_Object *obj, int n); +EAPI void e_widget_config_list_append(Evas_Object *obj, const char *entry); +EAPI void e_widget_config_list_object_append(Evas_Object *obj, Evas_Object *sobj, int col, int row, int colspan, int rowspan, int fill_w, int fill_h, int expand_w, int expand_h); + +#endif +#endif diff --git a/src/bin/e_widget_label.c b/src/bin/e_widget_label.c index afe139967..5d73f7ff6 100644 --- a/src/bin/e_widget_label.c +++ b/src/bin/e_widget_label.c @@ -7,7 +7,7 @@ /* externally accessible functions */ EAPI Evas_Object * -e_widget_label_add(Evas *evas, char *label) +e_widget_label_add(Evas *evas, const char *label) { Evas_Object *obj, *o; Evas_Coord mw, mh; diff --git a/src/bin/e_widget_label.h b/src/bin/e_widget_label.h index 31fa6d72a..733c63260 100644 --- a/src/bin/e_widget_label.h +++ b/src/bin/e_widget_label.h @@ -6,7 +6,7 @@ #ifndef E_WIDGET_LABEL_H #define E_WIDGET_LABEL_H -EAPI Evas_Object *e_widget_label_add(Evas *evas, char *label); +EAPI Evas_Object *e_widget_label_add(Evas *evas, const char *label); #endif #endif