/[graveman]/graveman/current/src/mkisofs.c
ViewVC logotype

Diff of /graveman/current/src/mkisofs.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.8 by scresto, Tue Feb 15 22:44:44 2005 UTC revision 1.9 by scresto, Sat Feb 19 17:49:08 2005 UTC
# Line 53  gboolean check_mkisofs() Line 53  gboolean check_mkisofs()
53  }  }
54    
55  /* recherche les parametres supplementaires a passer a mkisofs */  /* recherche les parametres supplementaires a passer a mkisofs */
56  gchar *make_image_getextrapara(GHashTable *Ahash, gchar *Aop)  gchar *make_image_getextrapara(Tgrave *Ag, gchar *Aop)
57  {  {
58    const gchar *Ldatavoli = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%svoli", Aop)));    const gchar *Ldatavoli = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%svoli", Aop)));
59    const gchar *Ldatapubl = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%spubl", Aop)));    const gchar *Ldatapubl = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%spubl", Aop)));
60    const gchar *Ldataprep = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%sprep", Aop)));    const gchar *Ldataprep = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%sprep", Aop)));
61    const gchar *Ldatabibl = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%sbibl", Aop)));    const gchar *Ldatabibl = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%sbibl", Aop)));
62    const gchar *Ldatacopy = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%scopy", Aop)));    const gchar *Ldatacopy = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%scopy", Aop)));
63    const gchar *Ldataabst = gtk_entry_get_text(GTK_ENTRY(sc_hash_table_lookupv(Ahash, "%sabst", Aop)));    const gchar *Ldataabst = gtk_entry_get_text(GTK_ENTRY(sc_grave_get_widgetv(Ag, "%sabst", Aop)));
64    gchar *Lreturn;    gchar *Lreturn;
65    gchar *Lextra = NULL;    gchar *Lextra = NULL;
66    GtkTextIter Lstart, Lend;    GtkTextIter Lstart, Lend;
67    GtkTextBuffer *Lbufappi = gtk_text_view_get_buffer (GTK_TEXT_VIEW (sc_hash_table_lookupv(Ahash, "%sappi", Aop)));    GtkTextBuffer *Lbufappi = gtk_text_view_get_buffer (GTK_TEXT_VIEW (sc_grave_get_widgetv(Ag, "%sappi", Aop)));
68    char *Ldataappi, *Ltmpappi;    char *Ldataappi, *Ltmpappi;
69    gtk_text_buffer_get_bounds (Lbufappi, &Lstart, &Lend);    gtk_text_buffer_get_bounds (Lbufappi, &Lstart, &Lend);
70    Ltmpappi = gtk_text_iter_get_text (&Lstart, &Lend);    Ltmpappi = gtk_text_iter_get_text (&Lstart, &Lend);
# Line 72  gchar *make_image_getextrapara(GHashTabl Line 72  gchar *make_image_getextrapara(GHashTabl
72    g_free(Ltmpappi);    g_free(Ltmpappi);
73    
74    if (!strcmp(Aop, "data")) { /* data cd */    if (!strcmp(Aop, "data")) { /* data cd */
75      gboolean Lrockridge = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(g_hash_table_lookup(Ahash, "datarockridge")));      gboolean Lrockridge = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Ag, "datarockridge")));
76      gboolean Ljoliet = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(g_hash_table_lookup(Ahash, "datajoliet")));      gboolean Ljoliet = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Ag, "datajoliet")));
77      gchar *Lisolevel = get_combo_value(g_hash_table_lookup(Ahash, "dataisolevel"));      gchar *Lisolevel = get_combo_value(sc_grave_get_widget(Ag, "dataisolevel"));
78    
79      Lextra = g_strdup_printf("%s %s -iso-level %s", Lrockridge == TRUE ? "-r" : "", Ljoliet ? "-J" : "", Lisolevel);      Lextra = g_strdup_printf("%s %s -iso-level %s", Lrockridge == TRUE ? "-r" : "", Ljoliet ? "-J" : "", Lisolevel);
80      g_free(Lisolevel);      g_free(Lisolevel);
# Line 94  gchar *make_image_getextrapara(GHashTabl Line 94  gchar *make_image_getextrapara(GHashTabl
94  gboolean mkisofs_makeimage_callback(GIOChannel *Astd, GIOCondition Acond, gpointer Adata)  gboolean mkisofs_makeimage_callback(GIOChannel *Astd, GIOCondition Acond, gpointer Adata)
95  {  {
96    GIOStatus Lstatus;    GIOStatus Lstatus;
97    GHashTable *Lhash = (GHashTable *)Adata;    Tgrave *Lg = (Tgrave *)Adata;
98    gint *Lcont = (gint *) g_hash_table_lookup(Lhash, "cont"); /* on traite encore des donnees ? */    gint *Lcont = (gint *) sc_grave_get_data(Lg, "cont"); /* on traite encore des donnees ? */
99    GError **Lerreur = (GError **) g_hash_table_lookup(Lhash, "gerror"); /* pointeur erreur */    GError **Lerreur = (GError **) sc_grave_get_data(Lg, "gerror"); /* pointeur erreur */
100    gint *Ltodo = (gint *) g_hash_table_lookup(Lhash, "todo"); /* nombre de piste a traiter */    gint *Ltodo = (gint *) sc_grave_get_data(Lg, "todo"); /* nombre de piste a traiter */
101    gint *Ldone = (gint *) g_hash_table_lookup(Lhash, "done"); /* nombre de piste deja traite */    gint *Ldone = (gint *) sc_grave_get_data(Lg, "done"); /* nombre de piste deja traite */
102    GtkProgressBar *Lprogressbar = GTK_PROGRESS_BAR(g_hash_table_lookup(Lhash, "pb_total"));    GtkProgressBar *Lprogressbar = GTK_PROGRESS_BAR(sc_grave_get_widget(Lg, "pb_total"));
103    GtkProgressBar *Lprogressbar2 = GTK_PROGRESS_BAR(g_hash_table_lookup(Lhash, "pb_step"));    GtkProgressBar *Lprogressbar2 = GTK_PROGRESS_BAR(sc_grave_get_widget(Lg, "pb_step"));
104    gchar *Lbuffer = NULL, *f, *Ltxt;    gchar *Lbuffer = NULL, *f, *Ltxt;
105    gdouble Lpct, Ltava;    gdouble Lpct, Ltava;
106    gchar Lsbuf[100], Lsbuf2[100];    gchar Lsbuf[100], Lsbuf2[100];
# Line 140  _DEB("on recoi => '%s'\n", Lbuffer); Line 140  _DEB("on recoi => '%s'\n", Lbuffer);
140      g_free(Ltxt);      g_free(Ltxt);
141      return FALSE;      return FALSE;
142    } else if (!strncmp(Lbuffer, MKISOFS_OK, strlen(MKISOFS_OK))) {    } else if (!strncmp(Lbuffer, MKISOFS_OK, strlen(MKISOFS_OK))) {
143      gboolean *Lopstatus = (gboolean *) g_hash_table_lookup(Lhash, "operationstatus");      gboolean *Lopstatus = (gboolean *) sc_grave_get_data(Lg, "operationstatus");
144      /* ok tout s'est bien passe ! */      /* ok tout s'est bien passe ! */
145      gtk_progress_bar_set_fraction(Lprogressbar2, 1);      gtk_progress_bar_set_fraction(Lprogressbar2, 1);
146      gtk_progress_bar_set_text(Lprogressbar2, "100%");      gtk_progress_bar_set_text(Lprogressbar2, "100%");
# Line 156  _DEB("on recoi => '%s'\n", Lbuffer); Line 156  _DEB("on recoi => '%s'\n", Lbuffer);
156  }  }
157    
158  /* creation image iso */  /* creation image iso */
159  gboolean make_iso(GHashTable *Ahash, GError **Aerror)  gboolean make_iso(Tgrave *Ag, GError **Aerror)
160  {  {
161    gboolean Lstatus = FALSE;    gboolean Lstatus = FALSE;
162    gchar **Lcmd;    gchar **Lcmd;
163    gchar *Lcommandline;    gchar *Lcommandline;
164    GIOChannel *Lcomerr, *Lcom;    GIOChannel *Lcomerr, *Lcom;
165    guint Lcomerrevent, Lcomevent;    guint Lcomerrevent, Lcomevent;
166    gint *Lcont = (gint *)g_hash_table_lookup(Ahash, "cont");    gint *Lcont = (gint *)sc_grave_get_data(Ag, "cont");
167    gboolean *Labort = (gboolean *) g_hash_table_lookup(Ahash, "gabort");    gboolean *Labort = (gboolean *) sc_grave_get_data(Ag, "gabort");
168    gchar **Ltmpdir = (gchar **)g_hash_table_lookup(Ahash, "tmpdir");    gchar **Ltmpdir = (gchar **)sc_grave_get_data(Ag, "tmpdir");
169    gchar **Lextrapara = (gchar **)g_hash_table_lookup(Ahash, "extrapara");    gchar **Lextrapara = (gchar **)sc_grave_get_data(Ag, "extrapara");
170    gint *Lpid = (gint *) g_hash_table_lookup(Ahash, "pid");    gint *Lpid = (gint *) sc_grave_get_data(Ag, "pid");
171    gint *Ldone = (gint *)g_hash_table_lookup(Ahash, "done"); /* fais */    gint *Ldone = (gint *)sc_grave_get_data(Ag, "done"); /* fais */
172    gchar **Liso = (gchar **)g_hash_table_lookup(Ahash, "iso"); /* image iso */    gchar **Liso = (gchar **)sc_grave_get_data(Ag, "iso"); /* image iso */
173    gboolean *Loperationstatus = (gboolean *)g_hash_table_lookup(Ahash, "operationstatus");    gboolean *Loperationstatus = (gboolean *)sc_grave_get_data(Ag, "operationstatus");
174    GtkLabel *Ltitle = GTK_LABEL(g_hash_table_lookup(Ahash, "gravetitle"));    GtkLabel *Ltitle = GTK_LABEL(sc_grave_get_widget(Ag, "gravetitle"));
175    gint g_out, g_err, Lnbrarg;    gint g_out, g_err, Lnbrarg;
176    
177    *Loperationstatus = FALSE;    *Loperationstatus = FALSE;
# Line 202  gboolean make_iso(GHashTable *Ahash, GEr Line 202  gboolean make_iso(GHashTable *Ahash, GEr
202    g_io_channel_set_encoding (Lcom, NULL, NULL);    g_io_channel_set_encoding (Lcom, NULL, NULL);
203    g_io_channel_set_flags( Lcom, G_IO_FLAG_NONBLOCK, NULL );    g_io_channel_set_flags( Lcom, G_IO_FLAG_NONBLOCK, NULL );
204    Lcomevent = g_io_add_watch (Lcom, (G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI),    Lcomevent = g_io_add_watch (Lcom, (G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI),
205                                        mkisofs_makeimage_callback, Ahash);                                        mkisofs_makeimage_callback, Ag);
206    
207    Lcomerr = g_io_channel_unix_new( g_err );    Lcomerr = g_io_channel_unix_new( g_err );
208    g_io_channel_set_encoding (Lcomerr, NULL, NULL);    g_io_channel_set_encoding (Lcomerr, NULL, NULL);
209    g_io_channel_set_flags( Lcomerr, G_IO_FLAG_NONBLOCK, NULL );    g_io_channel_set_flags( Lcomerr, G_IO_FLAG_NONBLOCK, NULL );
210    Lcomerrevent = g_io_add_watch (Lcomerr, (G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI),    Lcomerrevent = g_io_add_watch (Lcomerr, (G_IO_IN | G_IO_HUP | G_IO_ERR | G_IO_PRI),
211                                        mkisofs_makeimage_callback, Ahash);                                        mkisofs_makeimage_callback, Ag);
212  _DEB("debut !!");  _DEB("debut !!");
213    while (*Lcont > 0 && *Labort == FALSE) {    while (*Lcont > 0 && *Labort == FALSE) {
214     gtk_main_iteration();     gtk_main_iteration();

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26