[grisbi-cvs] grisbi/src gsb_file.c,1.48,1.49
Pierre Biava
pbiava at users.sourceforge.net
Sun May 10 18:08:08 CEST 2009
- Previous message: [grisbi-cvs] grisbi/src affichage.c, 1.157, 1.158 affichage_liste.c, 1.107, 1.108 barre_outils.c, 1.126, 1.127 fenetre_principale.c, 1.111, 1.112 gsb_account.c, 1.45, 1.46 gsb_account_property.c, 1.36, 1.37 gsb_autofunc.c, 1.22, 1.23 gsb_automem.c, 1.25, 1.26 gsb_bank.c, 1.22, 1.23 gsb_currency_config.c, 1.51, 1.52 gsb_currency_link_config.c, 1.11, 1.12 gsb_data_account.c, 1.72, 1.73 gsb_debug.c, 1.12, 1.13 gsb_file.c, 1.47, 1.48 gsb_form.c, 1.121, 1.122 gsb_form_config.c, 1.30, 1.31 gsb_form_widget.c, 1.30, 1.31 gsb_fyear.c, 1.8, 1.9 gsb_payment_method.c, 1.16, 1.17 gsb_payment_method_config.c, 1.35, 1.36 gsb_real.c, 1.33, 1.34 gsb_real.h, 1.13, 1.14 gsb_reconcile.c, 1.37, 1.38 gsb_reconcile_config.c, 1.28, 1.29 gsb_reconcile_sort_config.c, 1.10, 1.11 gsb_scheduler.c, 1.24, 1.25 gsb_scheduler_list.c, 1.64, 1.65 gsb_transactions_list.c, 1.161, 1.162 gsb_transactions_list_sort.c, 1.13, 1.14 import.c, 1.277, 1.278 parametres.c, 1.193, 1.194 traitement_variables.c, 1.172, 1.173 transaction_list.c, 1.35, 1.36
- Next message: [grisbi-cvs] grisbi/src gsb_account_property.c,1.37,1.38
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/grisbi/grisbi/src
In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv2107
Modified Files:
gsb_file.c
Log Message:
fixes a bug of updating the list of recently used files
Index: gsb_file.c
===================================================================
RCS file: /cvsroot/grisbi/grisbi/src/gsb_file.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -d -r1.48 -r1.49
--- gsb_file.c 10 May 2009 13:06:56 -0000 1.48
+++ gsb_file.c 10 May 2009 16:08:05 -0000 1.49
@@ -64,8 +64,8 @@
/*START_STATIC*/
static void gsb_file_append_name_to_opened_list ( gchar * path_fichier );
static gboolean gsb_file_automatic_backup ( gpointer null );
-static gchar *gsb_file_dialog_ask_name ( void );
-static gint gsb_file_dialog_save ( void );
+static gchar *gsb_file_dialog_ask_name ( void );
+static gint gsb_file_dialog_save ( void );
static gboolean gsb_file_save_backup ( void );
static gboolean gsb_file_save_file ( gint origine );
/*END_STATIC*/
@@ -980,59 +980,62 @@
if ( !nb_max_derniers_fichiers_ouverts ||
!path_fichier)
- return;
+ return;
if ( nb_derniers_fichiers_ouverts < 0 )
- nb_derniers_fichiers_ouverts = 0;
+ nb_derniers_fichiers_ouverts = 0;
if ( !g_path_is_absolute ( nom_fichier_comptes ) )
{
- real_name = g_strdup( (gchar*)realpath ( nom_fichier_comptes, NULL ));
- if ( ! real_name )
- {
- notice_debug ( "could not resolve relative file name" );
- return;
- }
- devel_debug ( real_name );
+ real_name = g_strdup( (gchar*)realpath ( nom_fichier_comptes, NULL ));
+ if ( ! real_name )
+ {
+ notice_debug ( "could not resolve relative file name" );
+ return;
+ }
+ devel_debug ( real_name );
}
else
{
- real_name = g_strdup ( path_fichier );
+ real_name = g_strdup ( path_fichier );
}
- /* on commence par vérifier si ce fichier n'est pas dans les nb_derniers_fichiers_ouverts noms */
+ /* on commence par vérifier si ce fichier n'est pas dans les nb_derniers_fichiers_ouverts
+ * noms */
position = 0;
- for ( i=0 ; i<nb_derniers_fichiers_ouverts ; i++ )
- if ( !strcmp ( real_name, tab_noms_derniers_fichiers_ouverts[i] ))
- {
- /* si ce fichier est déjà le dernier ouvert, on laisse tomber */
- if ( !i )
- return;
+ for ( i = 0; i < nb_derniers_fichiers_ouverts; i++ )
+ {
+ if ( !strcmp ( real_name, tab_noms_derniers_fichiers_ouverts[i] ))
+ {
+ /* si ce fichier est déjà le dernier ouvert, on laisse tomber */
+ if ( !i )
+ return;
- position = i;
- }
+ position = i;
+ }
+ }
- efface_derniers_fichiers_ouverts();
+ efface_derniers_fichiers_ouverts ( );
if ( position )
{
- /* le fichier a été trouvé, on fait juste une rotation */
- for ( i=position ; i>0 ; i-- )
- tab_noms_derniers_fichiers_ouverts[i] = tab_noms_derniers_fichiers_ouverts[i-1];
- if ( real_name )
- tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
- else
- tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( "<no file>" );
+ /* le fichier a été trouvé, on fait juste une rotation */
+ for ( i = position; i > 0 ; i-- )
+ tab_noms_derniers_fichiers_ouverts[i] = tab_noms_derniers_fichiers_ouverts[i-1];
+ if ( real_name )
+ tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( real_name );
+ else
+ tab_noms_derniers_fichiers_ouverts[0] = my_strdup ( "<no file>" );
- affiche_derniers_fichiers_ouverts();
+ affiche_derniers_fichiers_ouverts ( );
- return;
+ return;
}
- /* le fichier est nouveau, on décale tout d'un cran et on met le nouveau à 0 */
+ /* le fichier est nouveau, on décale tout d'un cran et on met le nouveau à 0 */
- /* si on est déjà au max, c'est juste un décalage avec perte du dernier */
+ /* si on est déjà au max, c'est juste un décalage avec perte du dernier */
/* on garde le ptit dernier dans le cas contraire */
if ( nb_derniers_fichiers_ouverts )
@@ -1068,17 +1071,20 @@
{
gint i, j;
+ devel_debug ( filename );
efface_derniers_fichiers_ouverts();
+ devel_debug_int ( nb_derniers_fichiers_ouverts );
- for ( i = 0 ; i < nb_derniers_fichiers_ouverts ; i++ )
+ for ( i = 0 ; i < nb_derniers_fichiers_ouverts; i++ )
{
- if ( ! strcmp (filename, tab_noms_derniers_fichiers_ouverts[i]) )
- {
- nb_derniers_fichiers_ouverts--;
-
- for ( j = i; ( j + 1 ) < nb_derniers_fichiers_ouverts; j++ )
- tab_noms_derniers_fichiers_ouverts[j] = tab_noms_derniers_fichiers_ouverts[j+1];
- }
+ if ( strcmp (filename, tab_noms_derniers_fichiers_ouverts[i]) == 0 )
+ {
+ for ( j = i; ( j + 1 ) < nb_derniers_fichiers_ouverts; j++ )
+ {
+ tab_noms_derniers_fichiers_ouverts[j] = tab_noms_derniers_fichiers_ouverts[j+1];
+ }
+ nb_derniers_fichiers_ouverts--;
+ }
}
affiche_derniers_fichiers_ouverts();
}
- Previous message: [grisbi-cvs] grisbi/src affichage.c, 1.157, 1.158 affichage_liste.c, 1.107, 1.108 barre_outils.c, 1.126, 1.127 fenetre_principale.c, 1.111, 1.112 gsb_account.c, 1.45, 1.46 gsb_account_property.c, 1.36, 1.37 gsb_autofunc.c, 1.22, 1.23 gsb_automem.c, 1.25, 1.26 gsb_bank.c, 1.22, 1.23 gsb_currency_config.c, 1.51, 1.52 gsb_currency_link_config.c, 1.11, 1.12 gsb_data_account.c, 1.72, 1.73 gsb_debug.c, 1.12, 1.13 gsb_file.c, 1.47, 1.48 gsb_form.c, 1.121, 1.122 gsb_form_config.c, 1.30, 1.31 gsb_form_widget.c, 1.30, 1.31 gsb_fyear.c, 1.8, 1.9 gsb_payment_method.c, 1.16, 1.17 gsb_payment_method_config.c, 1.35, 1.36 gsb_real.c, 1.33, 1.34 gsb_real.h, 1.13, 1.14 gsb_reconcile.c, 1.37, 1.38 gsb_reconcile_config.c, 1.28, 1.29 gsb_reconcile_sort_config.c, 1.10, 1.11 gsb_scheduler.c, 1.24, 1.25 gsb_scheduler_list.c, 1.64, 1.65 gsb_transactions_list.c, 1.161, 1.162 gsb_transactions_list_sort.c, 1.13, 1.14 import.c, 1.277, 1.278 parametres.c, 1.193, 1.194 traitement_variables.c, 1.172, 1.173 transaction_list.c, 1.35, 1.36
- Next message: [grisbi-cvs] grisbi/src gsb_account_property.c,1.37,1.38
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the cvs
mailing list