rem: text = g_strdup_printf ( COLON(_("Result of the year %s (%d transactions)")),
add: text = g_strdup_printf ( COLON(_("Result for %s (%d transactions)")),
context: gint etat_affiche_affiche_total_periode ( struct structure_operation *operation, gint ligne, gint force ){    if ( etat_courant -> separation_par_plage )    {	gchar *text;	text = NULL;	/* si la date de dbut de priode est nulle, on la met au dbut de la priode la date de l'opration */	if ( !date_debut_periode )	{	    if ( operation )	    {		/*  il y a une opration, on va rechercher le dbut de la priode qui la contient */		/* a peut tre le dbut de la semaine, du mois ou de l'anne de l'op */		switch ( etat_courant -> type_separation_plage )		{		    case 0:			/* sparation par semaine : on recherche le dbut de la semaine qui contient l'op */			date_debut_periode = g_date_new_dmy ( g_date_day ( operation -> date ),							      g_date_month ( operation -> date ),							      g_date_year ( operation -> date ));			if ( g_date_weekday ( date_debut_periode )  != (etat_courant -> jour_debut_semaine + 1 ))			{			    if ( g_date_weekday ( date_debut_periode ) < (etat_courant -> jour_debut_semaine + 1 ))				g_date_subtract_days ( date_debut_periode,						       g_date_weekday ( date_debut_periode ) + etat_courant -> jour_debut_semaine - 2 );			    else				g_date_subtract_days ( date_debut_periode,						       g_date_weekday ( date_debut_periode ) - etat_courant -> jour_debut_semaine - 1 );			}			break;		    case 1:			/* sparation par mois */			date_debut_periode = g_date_new_dmy ( 1,							      g_date_month ( operation -> date ),							      g_date_year ( operation -> date ));			break;		    case 2:			/* sparation par an */			date_debut_periode = g_date_new_dmy ( 1,							      1,							      g_date_year ( operation -> date ));			break;		}	    }	    else		date_debut_periode = NULL;	    return ( ligne );	}	/* on vrifie maintenant s'il faut afficher un total ou pas */	switch ( etat_courant -> type_separation_plage )	{	    gchar buffer[30];	    GDate *date_tmp;	    case 0:	    /* sparation par semaine */	    /* 	  si c'est le mme jour que l'op prcdente, on fait rien */	    if ( !force		 &&		 !g_date_compare ( operation -> date,				   date_debut_periode ))		return ( ligne );	    /* 	  si on est en dbut de semaine, on met un sous total */	    date_tmp = g_date_new_dmy ( g_date_day ( date_debut_periode ),					g_date_month ( date_debut_periode ),					g_date_year ( date_debut_periode ));	    g_date_add_days ( date_tmp,			      7 );	    if ( !force		 &&		 ( g_date_weekday ( operation -> date )  != (etat_courant -> jour_debut_semaine + 1 )		   &&		   g_date_compare ( operation -> date,				    date_tmp ) < 0 ))		return ( ligne );	    /* on doit retrouver la date du dbut de semaine et y ajouter 6j pour afficher la priode */	    if ( g_date_weekday ( date_debut_periode )  != (etat_courant -> jour_debut_semaine + 1 ))	    {		if ( g_date_weekday ( date_debut_periode ) < (etat_courant -> jour_debut_semaine + 1 ))		    g_date_subtract_days ( date_debut_periode,					   g_date_weekday ( date_debut_periode ) + etat_courant -> jour_debut_semaine - 2 );		else		    g_date_subtract_days ( date_debut_periode,					   g_date_weekday ( date_debut_periode ) - etat_courant -> jour_debut_semaine - 1 );	    }	    g_date_free ( date_tmp );	    date_tmp = g_date_new_dmy ( g_date_day ( date_debut_periode ),					g_date_month ( date_debut_periode ),					g_date_year ( date_debut_periode ));	    g_date_add_days ( date_tmp,			      6 );	    if ( etat_courant -> afficher_nb_opes )		text = g_strdup_printf ( _("Result from %d/%d/%d to %d/%d/%d (%d transactions):"),					 g_date_day ( date_debut_periode ),					 g_date_month ( date_debut_periode ),					 g_date_year ( date_debut_periode ),					 g_date_day ( date_tmp ),					 g_date_month ( date_tmp ),					 g_date_year ( date_tmp ),					 nb_ope_periode_etat );	    else		text = g_strdup_printf ( _("Result from %d/%d/%d to %d/%d/%d:"),					 g_date_day ( date_debut_periode ),					 g_date_month ( date_debut_periode ),					 g_date_year ( date_debut_periode ),					 g_date_day ( date_tmp ),					 g_date_month ( date_tmp ),					 g_date_year ( date_tmp ));	    break;	    case 1:	    /* sparation par mois */	    if ( !force		 &&		 operation -> mois == g_date_month ( date_debut_periode ) )		return ( ligne );	    g_date_strftime ( buffer,			      29,			      "%B %Y",			      date_debut_periode );	    if ( etat_courant -> afficher_nb_opes )		text = g_strdup_printf ( COLON(_("Result of %s (%d transactions)")),					 buffer, nb_ope_periode_etat );	    else		text = g_strdup_printf ( COLON(_("Result of %s")),					 buffer );	    break;	    case 2:	    /* sparation par an */	    if ( !force		 &&		 operation -> annee == g_date_year ( date_debut_periode ) )		return ( ligne );	    g_date_strftime ( buffer,			      29,			      "%Y",			      date_debut_periode );	    if ( etat_courant -> afficher_nb_opes )		text = g_strdup_printf ( COLON(_("Result of the year %s (%d transactions)")),					 buffer, nb_ope_periode_etat );	    else		text = g_strdup_printf ( COLON(_("Result of the year %s")),					 buffer );	    break;	}	/*       si on arrive ici, c'est qu'il y a un chgt de priode ou que c'est forc */	etat_affiche_attach_label ( NULL, TEXT_NORMAL, 1, nb_colonnes - 1, ligne, ligne + 1, CENTER, NULL );	ligne++;	etat_affiche_attach_hsep ( 1, nb_colonnes, ligne, ligne + 1 );	ligne++;	etat_affiche_attach_label ( text, TEXT_NORMAL, 1, nb_colonnes - 1, ligne, ligne + 1, LEFT, NULL );	text = g_strdup_printf ( _("%4.2f %s"), montant_periode_etat, devise_name ( devise_generale_etat ) );	etat_affiche_attach_label ( text, TEXT_NORMAL, nb_colonnes - 1, nb_colonnes, ligne, ligne + 1, RIGHT, NULL );	ligne++;	etat_affiche_attach_label ( NULL, TEXT_NORMAL, 1, nb_colonnes - 1, ligne, ligne + 1, CENTER, NULL );	ligne++;	montant_periode_etat = 0;	nb_ope_periode_etat = 0;	/* comme il y a un changement de priode, on remet la date_debut_periode  celle du dbut de la priode */	/* de l'opration  en cours */	if ( operation )	{	    /*  il y a une opration, on va rechercher le dbut de la priode qui la contient */	    /* a peut tre le dbut de la semaine, du mois ou de l'anne de l'op */	    switch ( etat_courant -> type_separation_plage )	    {		case 0:		    /* sparation par semaine : on recherche le dbut de la semaine qui contient l'op */		    date_debut_periode = g_date_new_dmy ( g_date_day ( operation -> date ),							  g_date_month ( operation -> date ),							  g_date_year ( operation -> date ));		    if ( g_date_weekday ( date_debut_periode )  != (etat_courant -> jour_debut_semaine + 1 ))		    {			if ( g_date_weekday ( date_debut_periode ) < (etat_courant -> jour_debut_semaine + 1 ))			    g_date_subtract_days ( date_debut_periode,						   g_date_weekday ( date_debut_periode ) + etat_courant -> jour_debut_semaine - 2 );			else			    g_date_subtract_days ( date_debut_periode,						   g_date_weekday ( date_debut_periode ) - etat_courant -> jour_debut_semaine - 1 );		    }		    break;		case 1:		    /* sparation par mois */		    date_debut_periode = g_date_new_dmy ( 1,							  g_date_month ( operation -> date ),							  g_date_year ( operation -> date ));		    break;		case 2:		    /* sparation par an */		    date_debut_periode = g_date_new_dmy ( 1,							  1,							  g_date_year ( operation -> date ));		    break;	    }	}	else	    date_debut_periode = NULL;    }    return (ligne );}