Sauvegarder un fichier en GTK

zaibacker Messages postés 97 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 24 janvier 2018 - 21 mars 2007 à 14:21
zaibacker Messages postés 97 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 24 janvier 2018 - 22 mars 2007 à 11:18
Bonjour, jai un soucis avec la sauvegarde de fichier en gtk.
Aucun probleme ni à l'éxécution ni à la compilation , seulement que le fichier n'est pas créer :


GtkWidget *p_dialog = NULL;
gchar *sChemin=NULL;

p_dialog = gtk_file_chooser_dialog_new (TEXTE_1, NULL,
GTK_FILE_CHOOSER_ACTION_SAVE,
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
NULL);

if (gtk_dialog_run (GTK_DIALOG (p_dialog)) == GTK_RESPONSE_ACCEPT)
{
sChemin = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (p_dialog));
puts(sChemin);
}

gtk_widget_destroy (p_dialog);
g_free(sChemin);

2 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
21 mars 2007 à 16:49
Bas c'est pas fait pour créer un fichier, juste pour demander un nom de fichier ....
0
zaibacker Messages postés 97 Date d'inscription vendredi 17 février 2006 Statut Membre Dernière intervention 24 janvier 2018
22 mars 2007 à 11:18
Oui je men suis rendu compte après, merci lol.
Mon but est de sauvegarder mon document sous forme de .jpeg
Mon code étant celui-ci et j'ai une erreur du type
(test:20574): GdkPixbuf-CRITICAL **: gdk_pixbuf_new: assertion `width > 0' failed etc......


GtkWidget *p_dialog = NULL;
gchar *sChemin = NULL;

p_dialog = gtk_file_chooser_dialog_new (TEXTE_1, NULL,GTK_FILE_CHOOSER_ACTION_SAVE,GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,NULL);

if (gtk_dialog_run (GTK_DIALOG (p_dialog)) == GTK_RESPONSE_ACCEPT)
{
sChemin = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (p_dialog));

gtk_widget_destroy (p_dialog);

GdkPixbuf *pixbuf;
/* getting pixbuf */
pixbuf = gdk_pixbuf_get_from_drawable(
NULL,
(GdkDrawable *)drawing_area->window,gtk_widget_get_colormap((GtkWidget*)drawing_area),
0,0,
0,0,
-1,-1);

/* saving pixbuf to jpeg */
gdk_pixbuf_save(pixbuf, sChemin, "jpeg", NULL);

g_object_unref(pixbuf); /* freeing pixbuf */

}
g_free(sChemin);
0
Rejoignez-nous