1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| void Aff_Fichiers_Recents(GtkMenuItem *menuitem, struct widgets * widgets)
{
GtkRecentManager * GestionMenuRecents= gtk_recent_manager_get_default (); /*GTK_RECENT_MANAGER(gtk_builder_get_object(widgets->builder,"Gestion_Derniers_Fichiers"));*/
char aff[LONG],* ch1;
FILE * fp;
unsigned short i,j;
GError *error = NULL;
if (GestionMenuRecents==NULL)
{
printf("Erreur : impossible de trouver l'item du menu \"Gestion_Derniers_Fichiers\"\n");
}
else
{
gtk_recent_manager_purge_items (GestionMenuRecents, &error);
if (error)
{
g_warning ("Erreur pour la gestion des derniers fichiers : %s\n", error->message);
g_error_free (error);
error=NULL;
}
else
{
}
ch1=getenv(MEM_PROG);
sprintf(aff,"%s%c.perso.add%chist",ch1,SEPARATEUR,SEPARATEUR);
fp = g_fopen(aff, "r");
if (fp!=NULL)
{ /* lecture du fichier historique : une entrée par ligne */
for (i=0;i<MEM_FICH_MAX-1;i++)
{
ch1=fgets(aff,LONG-1,fp);
if (aff!=NULL && ch1!=NULL)
{
printf("%s\n",aff);
for(j=0;aff[j]!='\n' && aff[j]!=0;j++);
aff[j]=0;
if (gtk_recent_manager_add_item (GestionMenuRecents,aff))
{
if (gtk_recent_manager_has_item (GestionMenuRecents, aff))
{
GtkRecentInfo *info;
error=NULL;
info = gtk_recent_manager_lookup_item (GestionMenuRecents, aff, &error);
if (error)
{
g_warning ("Ne trouve pas le fichier %s avec l'erreur %s",aff, error->message);
g_error_free (error);
error=NULL;
}
else
{
}
if (info)
{
printf("%s\n",gtk_recent_info_get_description (info));
gtk_recent_info_unref (info);
}
else
{
}
}
else
{
printf("Ne trouve pas le fichier %s\n",aff);
}
/* insertion bien passée */
}
else
{
g_warning ("Incapable de rajouter '%s' à la liste des documents récemment utilisés\n",aff);
g_error_free (error);
}
}
else
{
i=MEM_FICH_MAX;
}
}
fclose(fp);
}
else
{
/* pas encore d'entrée */
}
g_object_unref (GestionMenuRecents);
}
} |
Partager