add: gsb_gui_headings_update ( g_strconcat ( "Grisbi : " , titre_fichier, NULL ), "" );
context: void ouverture_confirmee ( void ){    gint i;    GtkWidget * widget;    gchar * item_name = NULL;    GSList *list_tmp;    if ( DEBUG )	printf ( "ouverture_confirmee\n" );    mise_en_route_attente ( _("Load an accounts file") );    /*  si charge opérations renvoie FALSE, c'est qu'il y a eu un pb et un message est déjà affiché */    if ( !charge_operations ( nom_fichier_comptes ) )    {	/* 	  le chargement du fichier a planté, si l'option sauvegarde à l'ouverture est activée, on */	/* propose de charger l'ancien fichier */	annulation_attente ();	if ( etat.sauvegarde_demarrage )	{	    gchar *nom;	    gint result;	    gchar **parametres;	    /* on crée le nom de la sauvegarde */	    nom = g_strdup ( nom_fichier_comptes );	    i=0;	    parametres = g_strsplit ( nom, C_DIRECTORY_SEPARATOR, 0);	    while ( parametres[i] )		i++;	    nom = g_strconcat ( my_get_gsb_file_default_dir(),				C_DIRECTORY_SEPARATOR,				parametres [i-1],				".bak",				NULL );	    g_strfreev ( parametres );	    result = utf8_open ( nom, O_RDONLY);	    if (result == -1)		return;	    else		close (result);	    mise_en_route_attente ( _("Loading backup") );	    if ( charge_operations ( nom ) )	    {		/* on a réussi a charger la sauvegarde */		dialogue_error_hint ( _("Grisbi was unable to load file.  However, Grisbi loaded a backup file instead but all changes made since this backup were possibly lost."),				      g_strdup_printf ( _("Error loading file '%s'"), nom_fichier_comptes) );	    }	    else	    {		/* le chargement de la sauvegarde a échoué */		annulation_attente ();		dialogue_error_hint ( _("Grisbi was unable to load file.  Additionally, Grisbi was unable to load a backup file instead."),				      g_strdup_printf ( _("Error loading file '%s'"), nom_fichier_comptes) );		return;	    }	}	else	{	    menus_sensitifs ( FALSE );	    return;	}    }    else    {	/* 	    l'ouverture du fichier s'est bien passée */	/* 	si on veut faire une sauvegarde auto à chaque ouverture, c'est ici */	if ( etat.sauvegarde_demarrage )	{	    gchar *nom;	    gchar **parametres;	    update_attente ( _("Autosave") );	    nom = g_strdup ( nom_fichier_comptes );	    i=0;	    /* 	      on récupère uniquement le nom du fichier, pas le chemin */	    parametres = g_strsplit ( nom,				      C_DIRECTORY_SEPARATOR,				      0);	    while ( parametres[i] )		i++;	    nom = g_strconcat ( my_get_gsb_file_default_dir(),				C_DIRECTORY_SEPARATOR,#ifndef _WIN32                                ".",#endif				parametres [i-1],				".bak",				NULL );	    g_strfreev ( parametres );	    /* on force l'enregistrement */	    enregistre_fichier ( nom );	}    }    update_attente ( _("Checking schedulers"));    /*     on vérifie si des échéances sont à récupérer */    gsb_scheduler_check_scheduled_transactions_time_limit ();    /* affiche le nom du fichier de comptes dans le titre de la fenetre */    affiche_titre_fenetre();    /* on save le nom du fichier dans les derniers ouverts */    if (nom_fichier_comptes)	ajoute_new_file_liste_ouverture ( nom_fichier_comptes );    /*     récupère l'organisation des colonnes  */    recuperation_noms_colonnes_et_tips ();    /*  on calcule les soldes courants */    /*     important de le faire avant l'affichage de l'accueil */    /* 	va afficher le message qu'une fois tous les comptes remplis */    /* 	(donc après l'idle ) */        update_attente ( _("Checking amounts"));    list_tmp = gsb_account_get_list_accounts ();    while ( list_tmp )    {	gint i;	i = gsb_account_get_no_account ( list_tmp -> data );	gsb_account_set_current_balance ( i, 					  calcule_solde_compte ( i ));	gsb_account_set_marked_balance ( i, 					 calcule_solde_pointe_compte ( i ));	/* 	on met à jour les affichage solde mini et autres */	gsb_account_set_mini_balance_authorized_message ( i,							  gsb_account_get_current_balance (i) < gsb_account_get_mini_balance_authorized (i));	gsb_account_set_mini_balance_wanted_message ( i,						      gsb_account_get_current_balance (i) < gsb_account_get_mini_balance_wanted (i) );	list_tmp = list_tmp -> next;    }    /*     on va afficher la page d'accueil */    /*     l'appel se fera lors de la création de la fenêtre principale */    mise_a_jour_liste_comptes_accueil = 1;    mise_a_jour_soldes_minimaux = 1;    mise_a_jour_fin_comptes_passifs = 1;    /*     création de la liste des tiers pour le combofix */        creation_liste_tiers_combofix ();    /* creation de la liste des categ pour le combofix */    creation_liste_categ_combofix ();    /* creation de la liste des imputations pour le combofix */    creation_liste_imputation_combofix ();    /* on crée le notebook principal */    update_attente ( _("Making main window"));    create_main_widget();        /*     on dégrise les menus */    menus_sensitifs ( TRUE );    /* On met à jour l'affichage des opérations rapprochées */    block_menu_cb = TRUE;    widget = gtk_item_factory_get_item ( item_factory_menu_general,					 menu_name(_("View"), _("Show reconciled transactions"), NULL) );    /* FIXME : à vérifier pour les 2 prochains gsb_account, mis gsb_account_get_current_account () en attendant */    gtk_check_menu_item_set_active( GTK_CHECK_MENU_ITEM(widget), gsb_account_get_r (gsb_account_get_current_account ()) );    /* On met à jour le contrôle dans le menu du nombre de lignes affichées */    switch ( gsb_account_get_nb_rows ( gsb_account_get_current_account () ) )      {      case 1 :	item_name = menu_name ( _("View"), _("Show one line per transaction"), NULL );	break;      case 2 :	item_name = menu_name ( _("View"), _("Show two lines per transaction"), NULL );	break;      case 3 :	item_name = menu_name ( _("View"), _("Show three lines per transaction"), NULL );	break;      case 4 :	item_name = menu_name ( _("View"), _("Show four lines per transaction"), NULL );	break;      }    widget = gtk_item_factory_get_item ( item_factory_menu_general, item_name );    gtk_check_menu_item_set_active( GTK_CHECK_MENU_ITEM(widget), TRUE );    block_menu_cb = FALSE;    /* Fill menus with list of accounts. */    gsb_account_list_gui_create_list ();    /*     on ajoute la fentre principale à la window */    gtk_box_pack_start ( GTK_BOX ( window_vbox_principale), main_vbox, TRUE, TRUE, 0 );    gtk_widget_show ( main_vbox );    mise_a_jour_accueil ();    annulation_attente ();}