rem: for ( j = 0 ; j < TRANSACTION_LIST_COL_NB ; j++ ) ligne_clist[i][j] = recherche_contenu_cellule ( operation, tab_affichage_ope[ligne_affichee][j]  );    ligne = gtk_clist_append ( GTK_CLIST ( CLIST_OPERATIONS ), ligne_clist[i] );    gtk_clist_set_row_data ( GTK_CLIST (CLIST_OPERATIONS), ligne, operation);    gtk_clist_set_row_style ( GTK_CLIST ( CLIST_OPERATIONS ), ligne, style_couleur [ couleur_en_cours ] );     if ( solde_courant_affichage_liste < 0 )
context: void remplissage_liste_operations ( gint compte ){  GSList *liste_operations_tmp;  gint couleur_en_cours;  gchar *ligne_clist[TRANSACTION_LIST_ROWS_NB][TRANSACTION_LIST_COL_NB];  gint i, j;  gint ligne;  gdouble montant;  p_tab_nom_de_compte_variable = p_tab_nom_de_compte + compte;/* freeze la clist */  gtk_clist_freeze ( GTK_CLIST ( CLIST_OPERATIONS ));  /* efface la clist */  gtk_clist_clear ( GTK_CLIST ( CLIST_OPERATIONS ));  /*   au dpart, les soldes courant et point sont = au solde init */  solde_courant_affichage_liste = SOLDE_INIT;  solde_pointe_affichage_liste = SOLDE_INIT;  couleur_en_cours = 0;  /* on commence la boucle : fait le tour de toutes les oprations */  /* met  jour les solde_courant_affichage_liste et solde_pointe_affichage_liste */  /* affiche l'opration  l'cran en fonction de l'affichage de R */  liste_operations_tmp = LISTE_OPERATIONS;  while ( liste_operations_tmp )    {      struct structure_operation *operation;      operation = liste_operations_tmp -> data;      /* si c'est une op de ventilation, on la saute */      if ( !operation -> no_operation_ventilee_associee )	{	  /* quelle que soit l'opration (releve ou non), on calcule les soldes courant */	  montant = calcule_montant_devise_renvoi ( operation -> montant,						    DEVISE,						    operation -> devise,						    operation -> une_devise_compte_egale_x_devise_ope,						    operation -> taux_change,						    operation -> frais_change );	  /*   dans tous les cas, on ajoute ce montant au solde courant */ 	  solde_courant_affichage_liste = solde_courant_affichage_liste + montant;	  /* si l'op est pointe ou releve, on ajoute ce montant au solde point */	  if ( operation -> pointe )	    solde_pointe_affichage_liste = solde_pointe_affichage_liste + montant;	  /* si l'opration est releve et qu'on ne dsire pas les afficher, on passe la suite  */	  if ( AFFICHAGE_R || operation -> pointe != 2 )	    {	      /* on fait le tour de tab_affichage_ope pour remplir les lignes du tableau */	      for ( i = 0 ; i < TRANSACTION_LIST_ROWS_NB ; i++ )		{		  /* on ne passe que si la ligne doit tre affiche */		  if ( !i ||		       NB_LIGNES_OPE == 4 ||		       (( i == 1 || i == 2 ) && NB_LIGNES_OPE == 3 ) ||		       ( i == 1 && NB_LIGNES_OPE == 2 ))		    {		      gint ligne_affichee;		      /*  en fonction de i (la ligne en cours) et NB_LIGNES_OPE, on retrouve la ligne qu'il faut */		      /* afficher selon les configurations */		      switch ( NB_LIGNES_OPE )			{			case 1:			  ligne_affichee = ligne_affichage_une_ligne;			  break;			case 2:			  if ( i )			    ligne_affichee = GPOINTER_TO_INT ( lignes_affichage_deux_lignes -> next -> data );			  else			    ligne_affichee = GPOINTER_TO_INT ( lignes_affichage_deux_lignes -> data );			  break;			case 3:			  switch ( i )			    {			    case 0:			      ligne_affichee = GPOINTER_TO_INT ( lignes_affichage_trois_lignes -> data );			      break;			    case 1:			      ligne_affichee = GPOINTER_TO_INT ( lignes_affichage_trois_lignes -> next -> data );			      break;			    case 2:			      ligne_affichee = GPOINTER_TO_INT ( lignes_affichage_trois_lignes -> next -> next -> data );			      break;			    default:			      ligne_affichee = 0;			    }			  break;			case 4:			  ligne_affichee = i;			  break;			default:			  ligne_affichee = 0;			}		      for ( j = 0 ; j < TRANSACTION_LIST_COL_NB ; j++ )			ligne_clist[i][j] = recherche_contenu_cellule ( operation,									tab_affichage_ope[ligne_affichee][j]  );		      /* on affiche la ligne */		      ligne = gtk_clist_append ( GTK_CLIST ( CLIST_OPERATIONS ),						 ligne_clist[i] );		      /* on associe  cette ligne l'adr de la struct de l'op */		      gtk_clist_set_row_data ( GTK_CLIST (CLIST_OPERATIONS),					       ligne,					       operation);		      /* on met la couleur de la ligne */		      gtk_clist_set_row_style ( GTK_CLIST ( CLIST_OPERATIONS ),						ligne,						style_couleur [ couleur_en_cours ] );		      /* si le solde courant est < 0, on recherche la position de l'affichage */		      /* du solde et on le met en rouge si on le trouve */		      if ( solde_courant_affichage_liste < 0 )			for ( j = 0 ; j < TRANSACTION_LIST_COL_NB ; j++ )			  if ( tab_affichage_ope[ligne_affichee][j] == 7 )			    gtk_clist_set_cell_style ( GTK_CLIST ( CLIST_OPERATIONS ),						       ligne,						       j,						       style_rouge_couleur [ couleur_en_cours ] );		    }		}	      couleur_en_cours = ( couleur_en_cours + 1 ) % 2;	    }	}      liste_operations_tmp = liste_operations_tmp -> next;    }  /* affiche la ligne blanche du bas */  for ( j = 0 ; j < NB_LIGNES_OPE ; j++ )    {      /* on met  NULL tout les pointeurs */      for ( i = 0 ; i < TRANSACTION_LIST_COL_NB ; i++ )	ligne_clist[0][i] = NULL;      ligne = gtk_clist_append ( GTK_CLIST ( CLIST_OPERATIONS ),				 ligne_clist[0] );      /* on associe  cette ligne  -1 */      gtk_clist_set_row_data ( GTK_CLIST ( CLIST_OPERATIONS ),			       ligne,			       GINT_TO_POINTER ( -1 ));      /* on met la couleur de la ligne */      gtk_clist_set_row_style ( GTK_CLIST ( CLIST_OPERATIONS ),				ligne,				style_couleur [ couleur_en_cours ] );    }  /* on enregistre le solde final */  SOLDE_COURANT = solde_courant_affichage_liste;  SOLDE_POINTE = solde_pointe_affichage_liste;  /* on met les soldes en bas */  gtk_label_set_text ( GTK_LABEL ( solde_label_pointe ),		       g_strdup_printf ( PRESPACIFY(_("Checked balance: %4.2f %s")),					 SOLDE_POINTE,					 devise_name ((struct struct_devise *)(g_slist_find_custom ( liste_struct_devises,											 GINT_TO_POINTER ( DEVISE ),											 (GCompareFunc) recherche_devise_par_no )-> data ))) );  gtk_label_set_text ( GTK_LABEL ( solde_label ),		       g_strdup_printf ( PRESPACIFY(_("Current balance: %4.2f %s")),					 SOLDE_COURANT,					 devise_name ((struct struct_devise *)(g_slist_find_custom ( liste_struct_devises,											 GINT_TO_POINTER ( DEVISE ),											 (GCompareFunc) recherche_devise_par_no )-> data ))) );  selectionne_ligne ( compte );  gtk_clist_thaw ( GTK_CLIST ( CLIST_OPERATIONS ));}