rem: if ( echeance -> periodicite == 2 )
add: if ( gsb_data_scheduled_get_frequency (scheduled_number) == 2 )
context: void mise_a_jour_calendrier ( void ){    GDate *date_calendrier;    time_t temps;    GSList *pointeur;    date_calendrier = g_date_new_dmy ( 1,				       GTK_CALENDAR ( calendrier_echeances ) -> month + 1,				       GTK_CALENDAR ( calendrier_echeances ) -> year );    gtk_calendar_clear_marks ( GTK_CALENDAR ( calendrier_echeances ));    /* si le jour courant doit y apparaitre, on le sÃ©lectionne */    time ( &temps );    if ( ( localtime ( &temps ) -> tm_mon == GTK_CALENDAR ( calendrier_echeances ) -> month )	 &&	 ( ( localtime ( &temps ) -> tm_year + 1900 ) == GTK_CALENDAR ( calendrier_echeances ) -> year ) )	gtk_calendar_select_day ( GTK_CALENDAR ( calendrier_echeances ),				  localtime ( &temps ) -> tm_mday );    else	gtk_calendar_select_day ( GTK_CALENDAR ( calendrier_echeances ),				  FALSE );    /* on fait le tour de toutes les Ã©chÃ©ances, les amÃšne au mois du calendrier       et mise en gras du jour de l'Ã©chÃ©ance */    pointeur = liste_struct_echeances;    while ( pointeur )    {	GDate *copie_date_ech;	struct operation_echeance *echeance;	echeance = pointeur -> data;	copie_date_ech = g_date_new_dmy ( echeance -> jour,					  echeance -> mois,					  echeance -> annee );	if ( !g_date_valid_dmy ( echeance -> jour, echeance -> mois, echeance -> annee ) )	    break;	/* si c'est une fois */	/* ou si c'est personnalisÃ© mais la periodicitÃ© est de 0, */	/* on passe */	if ( echeance -> periodicite	     &&	     !(	       echeance -> periodicite == 4	       &&	       !echeance -> periodicite_personnalisee ))	    while ( g_date_compare ( copie_date_ech,				     date_calendrier ) < 0 )	    {		/* pÃ©riodicitÃ© hebdomadaire */		if ( echeance -> periodicite == 1 )		    g_date_add_days ( copie_date_ech,				      7 );		else		    /* pÃ©riodicitÃ© mensuelle */		    if ( echeance -> periodicite == 2 )			g_date_add_months ( copie_date_ech,					    1 );		    else			/* pÃ©riodicitÃ© annuelle */			if ( echeance -> periodicite == 3 )			    g_date_add_years ( copie_date_ech,					       1 );			else			    /* pÃ©riodicitÃ© perso */			    if ( !echeance -> intervalle_periodicite_personnalisee )				g_date_add_days ( copie_date_ech,						  echeance -> periodicite_personnalisee );			    else				if ( echeance -> intervalle_periodicite_personnalisee == 1 )				    g_date_add_months ( copie_date_ech,							echeance -> periodicite_personnalisee );				else				    g_date_add_years ( copie_date_ech,						       echeance -> periodicite_personnalisee );	    }  	/* Ã  ce niveau, soit l'Ã©chÃ©ance est sur le mois du calendrier,	   soit elle l'a dÃ©passÃ©, soit elle a dÃ©passÃ© sa date limite */	if ( !( copie_date_ech -> month != date_calendrier -> month		||		( echeance -> date_limite		  &&		  g_date_compare ( copie_date_ech,				   echeance -> date_limite ) > 0 )		||		( !echeance -> periodicite		  &&		  copie_date_ech -> year != date_calendrier -> year )))	    gtk_calendar_mark_day ( GTK_CALENDAR ( calendrier_echeances ),				    copie_date_ech -> day );	pointeur = pointeur -> next;    }}