rem: combofix -> liste_completion = g_slist_sort ( combofix -> liste_completion, (GCompareFunc) classe_alphabetique );  if ( classement_auto ) gtk_combofix_sort ( GTK_COMBOFIX ( combofix ));
context: GtkWidget *gtk_combofix_new ( GSList *liste,			      gint force_text,			      gint affiche_liste,			      gint classement_auto ){  GSList *pointeur;  gchar *derniere_categ;  GSList *nouvelle_liste;  GtkComboFix *combofix = GTK_COMBOFIX ( gtk_type_new ( gtk_combofix_get_type () ) );  /* recopie la liste originale */  nouvelle_liste = NULL;  pointeur = liste;  while ( pointeur )    {      nouvelle_liste = g_slist_append ( nouvelle_liste,					g_strdup ( pointeur -> data ) );      pointeur = pointeur -> next;    }/* remplit les champs de la combofix */  combofix -> force_text = force_text;  combofix -> liste = nouvelle_liste;  combofix -> affiche_liste = affiche_liste;  combofix -> complex = 0;  combofix -> auto_sort = classement_auto;  if ( affiche_liste )    gtk_arrow_set ( GTK_ARROW ( GTK_BIN ( combofix -> arrow ) -> child ),		    GTK_ARROW_DOWN,		    GTK_SHADOW_ETCHED_OUT);  else    gtk_arrow_set ( GTK_ARROW ( GTK_BIN ( combofix -> arrow ) -> child ),		    GTK_ARROW_UP,		    GTK_SHADOW_ETCHED_OUT);  /* cration de la liste des compltions : systme de catgories - sous catgories */  /* toutes catgorie est mise dans la liste */  /*   les sous-catg sont mises sous la forme catg : sous-catg */  /* on trie  la fin la liste par ordre alphabtique pour que lors d'une compltion, c'est le 1er qui sorte */  /* protge de l'erreur si on met une sous categ en 1er */  derniere_categ = "";  combofix -> liste_completion = NULL;  pointeur = liste;  while ( pointeur )    {      gchar *string;      string = pointeur -> data;      if ( string[0] == '\t' )	string = g_strconcat ( derniere_categ,			       " : ",			       string + 1,			       NULL );      else	derniere_categ = string;      combofix -> liste_completion = g_slist_append ( combofix -> liste_completion,						      string );      pointeur = pointeur -> next;    }/*   classe la liste de completion */  combofix -> liste_completion = g_slist_sort ( combofix -> liste_completion,						(GCompareFunc) classe_alphabetique );  if ( classement_auto )    gtk_combofix_sort ( GTK_COMBOFIX ( combofix ));  return ( GTK_WIDGET ( combofix ) );}