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:
Sort the font list.

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_fonts.c,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -3 -r1.27 -r1.28
--- e_int_config_fonts.c        11 Oct 2006 21:29:57 -0000      1.27
+++ e_int_config_fonts.c        11 Oct 2006 23:33:49 -0000      1.28
@@ -19,8 +19,8 @@
 
 static void _ilist_font_cb_change(void *data, Evas_Object *obj);
 static void _enabled_font_cb_change(void *data, Evas_Object *obj);
-
 static void _enabled_fallback_cb_change(void *data, Evas_Object *obj);
+static int  _sort_fonts(void *data1, void *data2);
 
 struct _E_Text_Class_Pair
 {
@@ -282,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, *fonts;
+   Evas_List *next, *fonts, *l = NULL;
    int option_enable;
 
    cfdata->cur_index = -1;
@@ -327,8 +327,20 @@
        
        f = fonts->data;
        if (strstr(f, ":")) continue;
-       e_widget_ilist_append(cfdata->gui.font_list, NULL, f, NULL, NULL, f);
+       l = evas_list_append(l, strdup(f));
+     }
+   if (l) 
+     {
+       l = evas_list_sort(l, evas_list_count(l), _sort_fonts);
+       for (fonts = l; fonts; fonts = fonts->next) 
+         {
+            char *f;
+            
+            f = fonts->data;
+            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);
@@ -621,3 +633,11 @@
    e_widget_disabled_set(cfdata->gui.fallback_list, 
!cfdata->cur_fallbacks_enabled); 
 }
 
+static int 
+_sort_fonts(void *data1, void *data2) 
+{
+   if (!data1) return 1;
+   if (!data2) return -1;
+   
+   return e_util_strcmp((const char *)data1, (const char *)data2);
+}



-------------------------------------------------------------------------
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

Reply via email to