Enlightenment CVS committal Author : devilhorns Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_int_config_fonts.c Log Message: Much better Basic Mode for Fonts config, including a font list now for easy selection. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_fonts.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- e_int_config_fonts.c 11 Oct 2006 10:18:38 -0000 1.24 +++ e_int_config_fonts.c 11 Oct 2006 20:31:10 -0000 1.25 @@ -110,6 +110,7 @@ { /* Font Classes */ Evas_Object *class_list; + Evas_Object *font_list; Evas_Object *font; Evas_Object *size; @@ -249,7 +250,7 @@ { Evas_List *next; CFText_Class *tc; - + /* Save current data */ if (cfdata->cur_index >= 0) { @@ -259,7 +260,7 @@ if (cfdata->cur_font) tc->font = evas_stringshare_add(cfdata->cur_font); } - + for (next = cfdata->text_classes; next; next = next->next) { tc = next->data; @@ -281,7 +282,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { Evas_Object *o, *of, *ob, *ot, *ott; - Evas_List *next; + Evas_List *next, *fonts; int option_enable; cfdata->cur_index = -1; @@ -296,35 +297,40 @@ e_widget_on_change_hook_set(cfdata->gui.class_list, _ilist_font_cb_change, cfdata); _fill_ilist(cfdata); e_widget_framelist_object_append(of, cfdata->gui.class_list); - e_widget_table_object_append(ot, of, 0, 0, 1, 3, 1, 1, 1, 1); + e_widget_table_object_append(ot, of, 0, 0, 1, 5, 1, 1, 1, 1); ott = e_widget_table_add(evas, 0); - cfdata->gui.enabled = e_widget_check_add(evas, _("Enable Font Class"), &(cfdata->cur_enabled)); e_widget_disabled_set(cfdata->gui.enabled, 1); - e_widget_table_object_append(ott, cfdata->gui.enabled, - 0, 0, 2, 1, 1, 1, 1, 1); + e_widget_table_object_append(ott, cfdata->gui.enabled, 0, 0, 2, 1, 1, 0, 1, 0); e_widget_on_change_hook_set(cfdata->gui.enabled, _enabled_font_cb_change, cfdata); - - ob = e_widget_label_add(evas, _("Font")); - e_widget_table_object_append(ott, ob, 0, 1, 1, 1, 1, 1, 1, 1); - - cfdata->gui.font = e_widget_entry_add(evas, &(cfdata->cur_font)); - e_widget_disabled_set(cfdata->gui.font, 1); - e_widget_min_size_set(cfdata->gui.font, 100, 25); - e_widget_table_object_append(ott, cfdata->gui.font, - 1, 1, 1, 1, 1, 1, 1, 1); - - ob = e_widget_label_add(evas, _("Font Size")); - e_widget_table_object_append(ott, ob, 0, 2, 1, 1, 1, 1, 1, 1); + + ob = e_widget_label_add(evas, _("Font Size:")); + e_widget_table_object_append(ott, ob, 0, 1, 1, 1, 1, 0, 1, 0); cfdata->gui.size = e_widget_slider_add(evas, 1, 0, _("%2.1f pixels"), 5.0, 25.0, 0.5, 0, &(cfdata->cur_size), NULL, 25); e_widget_disabled_set(cfdata->gui.size, 1); e_widget_min_size_set(cfdata->gui.size, 180, 25); e_widget_table_object_append(ott, cfdata->gui.size, - 1, 2, 1, 1, 1, 1, 1, 1); + 1, 1, 1, 1, 1, 0, 1, 0); + e_widget_table_object_append(ot, ott, + 1, 0, 1, 1, 1, 1, 1, 1); + + of = e_widget_framelist_add(evas, _("Fonts"), 0); + cfdata->gui.font_list = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_font)); - e_widget_table_object_append(ot, ott, 1, 1, 1, 1, 1, 1, 1, 1); + for (fonts = evas_font_available_list(evas); fonts; fonts = fonts->next) + { + char *f; + + f = fonts->data; + if (strstr(f, ":")) continue; + e_widget_ilist_append(cfdata->gui.font_list, NULL, f, NULL, NULL, f); + } + e_widget_ilist_go(cfdata->gui.font_list); + e_widget_min_size_set(cfdata->gui.font_list, 100, 200); + e_widget_framelist_object_append(of, cfdata->gui.font_list); + e_widget_table_object_append(ot, of, 1, 1, 2, 4, 1, 1, 1, 1); e_widget_list_object_append(o, ot, 1, 1, 0.5); @@ -532,7 +538,7 @@ cfdata = data; if (!cfdata) return; - + /* Save old data */ if (cfdata->cur_index >= 0) { @@ -553,9 +559,24 @@ e_widget_disabled_set(cfdata->gui.size, !tc->enabled); e_widget_check_checked_set(cfdata->gui.enabled, tc->enabled); - e_widget_entry_text_set(cfdata->gui.font, tc->font); - e_widget_slider_value_double_set(cfdata->gui.size, tc->size); + if (cfdata->gui.font_list) + { + for (indx = 0; indx < e_widget_ilist_count(cfdata->gui.font_list); indx++) + { + const char *f; + + f = e_widget_ilist_nth_label_get(cfdata->gui.font_list, indx); + if (!strcmp(f, tc->font)) + { + e_widget_ilist_selected_set(cfdata->gui.font_list, indx); + break; + } + } + } + if (cfdata->gui.font) + e_widget_entry_text_set(cfdata->gui.font, tc->font); + e_widget_slider_value_double_set(cfdata->gui.size, tc->size); } static void ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs