228 |
gboolean Lselok = FALSE; |
gboolean Lselok = FALSE; |
229 |
gchar *Lcurdrive; |
gchar *Lcurdrive; |
230 |
|
|
231 |
gtk_list_store_clear(Ldata); |
if (GTK_IS_LIST_STORE(Ldata)) { |
232 |
|
gtk_list_store_clear(Ldata); |
233 |
|
} |
234 |
|
printf("toto la !\n"); |
235 |
for (Lcur = Glistdrives, i=0; Lcur; Lcur = g_slist_next(Lcur), i++) { |
for (Lcur = Glistdrives, i=0; Lcur; Lcur = g_slist_next(Lcur), i++) { |
236 |
Ldrive = (Tdriveinfo *)Lcur->data; |
Ldrive = (Tdriveinfo *)Lcur->data; |
237 |
if ((Aquoi & TYPE_ALLWRITER) && (! DRIVE_WRITER(Ldrive))) continue; |
if ((Aquoi & TYPE_ALLWRITER) && (! DRIVE_WRITER(Ldrive))) continue; |
593 |
} |
} |
594 |
|
|
595 |
/* fenetre principal */ |
/* fenetre principal */ |
596 |
GtkWidget* manage_main_window (guint64 *Aaudiolen, guint64 *Aaudiomaxlen, |
Tgrave *manage_main_window (guint64 *Aaudiolen, guint64 *Aaudiomaxlen, |
597 |
guint64 *Adatasize, guint64 *Adatamaxsize, guint64 *Advddatasize, guint64 *Advddatamaxsize) |
guint64 *Adatasize, guint64 *Adatamaxsize, guint64 *Advddatasize, guint64 *Advddatamaxsize) |
598 |
{ |
{ |
599 |
Tgrave *Lg = sc_grave_load(window_main.glade); |
Tgrave *Lg = sc_grave_load("window_main.glade"); |
600 |
GtkWidget *Lwindow; |
GtkWidget *Lwindow; |
601 |
GtkNotebook *Lbodycdaudio, *Lbodycddata, *Lbodycdcopy, *Lbodycdother, *Lbodydvddata; |
GtkNotebook *Lbodycdaudio, *Lbodycddata, *Lbodycdcopy, *Lbodycdother, *Lbodydvddata; |
602 |
GtkHBox *Lmainbody; |
GtkHBox *Lmainbody; |
603 |
GtkComboBox *Lcombo; |
GtkComboBox *Lcombo; |
|
GtkButton *Lbtnerasecdrw, *Lbtnformatdvdrw; |
|
604 |
GtkTreeView *Ltreeaudio, *Ltreedata, *Ltopmenu, *Ltreedvddata; |
GtkTreeView *Ltreeaudio, *Ltreedata, *Ltopmenu, *Ltreedvddata; |
605 |
|
|
606 |
g_assert(Lg); |
g_assert(Lg); |
608 |
Lmainbody = GTK_HBOX(sc_grave_get_widget(Lg, "mainbody")); |
Lmainbody = GTK_HBOX(sc_grave_get_widget(Lg, "mainbody")); |
609 |
Lwindow = GTK_WIDGET(sc_grave_get_widget(Lg, "topwindow")); |
Lwindow = GTK_WIDGET(sc_grave_get_widget(Lg, "topwindow")); |
610 |
|
|
|
|
|
611 |
/* onglets page de droite */ |
/* onglets page de droite */ |
612 |
Lbodycdaudio = GTK_NOTEBOOK(sc_grave_get_widget(Lg, "bodycdaudio")); |
Lbodycdaudio = GTK_NOTEBOOK(sc_grave_get_widget(Lg, "bodycdaudio")); |
613 |
gtk_widget_reparent(GTK_WIDGET(Lbodycdaudio), GTK_WIDGET(Lmainbody)); |
gtk_widget_reparent(GTK_WIDGET(Lbodycdaudio), GTK_WIDGET(Lmainbody)); |
627 |
g_signal_connect(G_OBJECT(Lbodydvddata), "switch-page", G_CALLBACK(switchpage), Lg); |
g_signal_connect(G_OBJECT(Lbodydvddata), "switch-page", G_CALLBACK(switchpage), Lg); |
628 |
|
|
629 |
/* bouttons barre de gauche */ |
/* bouttons barre de gauche */ |
630 |
Ltopmenu = sc_grave_get_widget(Lg, "topmenu"); |
Ltopmenu = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "topmenu")); |
631 |
|
|
632 |
manage_interface(Lg, MENU_NEW + COMBO_UPDATE); |
manage_interface(Lg, MENU_NEW + COMBO_UPDATE); |
633 |
update_status_bar_display(Lg); |
update_status_bar_display(Lg); |
656 |
G_CALLBACK(menu_quit), Lg); |
G_CALLBACK(menu_quit), Lg); |
657 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "menuabout")), "activate", |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "menuabout")), "activate", |
658 |
G_CALLBACK(on_about), Lg); |
G_CALLBACK(on_about), Lg); |
|
|
|
659 |
|
|
660 |
prepare_combobox_vitesse(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dstaudiospeed"))); |
prepare_combobox_vitesse(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dstaudiospeed"))); |
661 |
prepare_combobox_vitesse(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dstcopyspeed"))); |
prepare_combobox_vitesse(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dstcopyspeed"))); |
675 |
prepare_combobox_graveur(Lg, "dstcopy"); |
prepare_combobox_graveur(Lg, "dstcopy"); |
676 |
|
|
677 |
prepare_combobox_graveur(Lg, "dstother"); |
prepare_combobox_graveur(Lg, "dstother"); |
678 |
prepare_disable_when(lg, "dstothercombo_notcdrw", "btnerasecdrwother1", NULL); |
prepare_disable_when(Lg, "dstothercombo_notcdrw", "btnerasecdrwother1", NULL); |
679 |
prepare_disable_when(lg, "dstothercombo_notdvdrw", "btnformatdvdrwother1", NULL); |
prepare_disable_when(Lg, "dstothercombo_notdvdrw", "btnformatdvdrwother1", NULL); |
680 |
|
|
681 |
/* on rempli les autres combo */ |
/* on rempli les autres combo */ |
682 |
remplirecombo(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dataformat")), "", Gformatcd, |
remplirecombo(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "dataformat")), "", Gformatcd, |
712 |
|
|
713 |
/* boutons de la page "autres operations" */ |
/* boutons de la page "autres operations" */ |
714 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnerasecdrwother1")), "clicked", G_CALLBACK(confirm_erasecdrw), Lg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnerasecdrwother1")), "clicked", G_CALLBACK(confirm_erasecdrw), Lg); |
715 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnformatdvdrw")), "clicked", G_CALLBACK(popup_formatdvdrw), Lg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnformatdvdrwother1")), "clicked", G_CALLBACK(popup_formatdvdrw), Lg); |
716 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnfixcdother1")), "clicked", G_CALLBACK(confirm_fixcd), Lg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnfixcdother1")), "clicked", G_CALLBACK(confirm_fixcd), Lg); |
717 |
|
|
718 |
update_combo_graveur(Lg); |
update_combo_graveur(Lg); |
719 |
|
|
720 |
/* menu popup sur les listes */ |
/* menu popup sur les listes */ |
721 |
Ltreeaudio = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEAUDIO")); |
Ltreeaudio = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEAUDIO")); |
722 |
|
|
723 |
prepare_popups(Lg); |
prepare_popups(Lg); |
724 |
prepare_listeaudio(Ltreeaudio); |
prepare_listeaudio(Ltreeaudio); |
725 |
|
|
726 |
g_signal_connect(G_OBJECT(Ltreeaudio), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lg); |
g_signal_connect(G_OBJECT(Ltreeaudio), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lg); |
727 |
g_signal_connect(G_OBJECT(Ltreeaudio), "popup-menu", G_CALLBACK(key_popupmenu_addaudio), Lg); |
g_signal_connect(G_OBJECT(Ltreeaudio), "popup-menu", G_CALLBACK(key_popupmenu_addaudio), Lg); |
728 |
g_signal_connect(G_OBJECT(glade_xml_get_widget(Lxml, "btnaddtrack")), "clicked", G_CALLBACK(gtk_audio_addtrack), Lg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnaddtrack")), "clicked", G_CALLBACK(gtk_audio_addtrack), Lg); |
729 |
|
|
730 |
Ltreedata = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEDATA")); |
Ltreedata = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEDATA")); |
731 |
prepare_listedata(Ltreedata, _("New CD")); |
prepare_listedata(Ltreedata, _("New CD")); |
732 |
g_signal_connect(G_OBJECT(Ltreedata), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lg); |
g_signal_connect(G_OBJECT(Ltreedata), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lg); |
733 |
g_signal_connect(G_OBJECT(Ltreedata), "popup-menu", G_CALLBACK(key_popupmenu_addfile), Lg); |
g_signal_connect(G_OBJECT(Ltreedata), "popup-menu", G_CALLBACK(key_popupmenu_addfile), Lg); |
734 |
g_signal_connect(G_OBJECT(glade_xml_get_widget(Lxml, "btnaddfile")), "clicked", G_CALLBACK(gtk_data_addfile), Lg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnaddfile")), "clicked", G_CALLBACK(gtk_data_addfile), Lg); |
735 |
g_signal_connect(G_OBJECT(glade_xml_get_widget(Lxml, "btnadddirectory")), "clicked", |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "btnadddirectory")), "clicked", |
736 |
G_CALLBACK(gtk_data_adddirectory), Lg); |
G_CALLBACK(gtk_data_adddirectory), Lg); |
737 |
|
|
738 |
Ltreedvddata = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEDVDDATA")); |
Ltreedvddata = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "LISTEDVDDATA")); |
778 |
|
|
779 |
gtk_widget_show(Lwindow); |
gtk_widget_show(Lwindow); |
780 |
|
|
781 |
return Lwindow; |
return Lg; |
782 |
} |
} |
783 |
|
|
784 |
/* mise a jour des listes contenant les lecteurs */ |
/* mise a jour des listes contenant les lecteurs */ |
790 |
GtkComboBox *Ldstdvddatacombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstdvddatacombo")); |
GtkComboBox *Ldstdvddatacombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstdvddatacombo")); |
791 |
GtkComboBox *Ldstaudiocombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstaudiocombo")); |
GtkComboBox *Ldstaudiocombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstaudiocombo")); |
792 |
GtkComboBox *Ldstothercombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstothercombo")); |
GtkComboBox *Ldstothercombo = GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dstothercombo")); |
793 |
GtkButton *Lbtnburnaudio1 = sc_grave_get_widget(Ag, "btnburnaudio1"); |
GtkButton *Lbtnburnaudio2 = GTK_BUTTON(sc_grave_get_widget(Ag, "btnburnaudio2")); |
794 |
GtkButton *Lbtnburnaudio2 = sc_grave_get_widget(Ag, "btnburnaudio2"); |
GtkButton *Lbtnburncopy1 = GTK_BUTTON(sc_grave_get_widget(Ag, "btnburncopy1")); |
795 |
GtkButton *Lbtnburncopy1 = sc_grave_get_widget(Ag, "btnburncopy1"); |
GtkButton *Lbtnfixcdother1 = GTK_BUTTON(sc_grave_get_widget(Ag, "btnfixcdother1")); |
796 |
GtkButton *Lbtnfixcdother1 = sc_grave_get_widget(Ag, "btnfixcdother1"); |
GtkButton *Lbtnerasecdrwother1 = GTK_BUTTON(sc_grave_get_widget(Ag, "btnerasecdrwother1")); |
|
GtkButton *Lbtnerasecdrwother1 = sc_grave_get_widget(Ag, "btnerasecdrwother1"); |
|
797 |
gboolean Lreadcd, Lwritecdr, Lwritecdrw, Lreaddvd, Lwritedvd; |
gboolean Lreadcd, Lwritecdr, Lwritecdrw, Lreaddvd, Lwritedvd; |
798 |
|
|
799 |
get_current_matos(&Lreadcd, &Lwritecdr, &Lwritecdrw, &Lreaddvd, &Lwritedvd); |
get_current_matos(&Lreadcd, &Lwritecdr, &Lwritecdrw, &Lreaddvd, &Lwritedvd); |
800 |
|
printf("toto\n"); |
801 |
|
if (GTK_IS_WIDGET(Lsrccopycombo)) { |
802 |
|
printf("oui !\n"); |
803 |
|
} |
804 |
remplirecombograveur(Lsrccopycombo, TYPE_ALL + TYPE_ISO, conf_get_string("srccopycombo")); |
remplirecombograveur(Lsrccopycombo, TYPE_ALL + TYPE_ISO, conf_get_string("srccopycombo")); |
805 |
|
printf("toto2\n"); |
806 |
|
|
807 |
remplirecombograveur(Ldstcopycombo, TYPE_ALLWRITER + TYPE_ISO, conf_get_string("dstcopycombo")); |
remplirecombograveur(Ldstcopycombo, TYPE_ALLWRITER + TYPE_ISO, conf_get_string("dstcopycombo")); |
808 |
|
|
818 |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnburncopy1), FALSE); |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnburncopy1), FALSE); |
819 |
} |
} |
820 |
if (Lwritecdr == FALSE) { |
if (Lwritecdr == FALSE) { |
|
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnburnaudio1), FALSE); |
|
821 |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnburnaudio2), FALSE); |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnburnaudio2), FALSE); |
822 |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnfixcdother1), FALSE); |
gtk_widget_set_sensitive(GTK_WIDGET(Lbtnfixcdother1), FALSE); |
823 |
} |
} |
1014 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
1015 |
GtkComboBox *Lcombobox; |
GtkComboBox *Lcombobox; |
1016 |
|
|
1017 |
g_assert(Lxml); |
g_assert(Lg); |
1018 |
|
|
1019 |
Ldialog = sc_grave_get_widget(Lg, "dialog_device"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_device"); |
1020 |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
1034 |
Tgrave *Lg = sc_grave_load("dialog_add_device.glade"); |
Tgrave *Lg = sc_grave_load("dialog_add_device.glade"); |
1035 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
1036 |
|
|
1037 |
g_assert(Lxml); |
g_assert(Lg); |
1038 |
|
|
1039 |
Ldialog = sc_grave_get_widget(Lg, "dialog_add_device"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_add_device"); |
1040 |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
1062 |
gtk_label_set_label(Llabelversion, Ltmp); |
gtk_label_set_label(Llabelversion, Ltmp); |
1063 |
g_free(Ltmp); |
g_free(Ltmp); |
1064 |
|
|
1065 |
Ldialog = sc_grave_get_widget(Lg, "dialog_about") |
Ldialog = sc_grave_get_widget(Lg, "dialog_about"); |
1066 |
gtk_dialog_run(GTK_DIALOG(Ldialog)); |
gtk_dialog_run(GTK_DIALOG(Ldialog)); |
1067 |
gtk_widget_destroy(Ldialog); |
gtk_widget_destroy(Ldialog); |
1068 |
|
|
1085 |
/* fenetre gravure d'un cd en cours */ |
/* fenetre gravure d'un cd en cours */ |
1086 |
void show_graverwindow (Tgrave *Ag, gchar *Aaction, gchar *Atitle) |
void show_graverwindow (Tgrave *Ag, gchar *Aaction, gchar *Atitle) |
1087 |
{ |
{ |
1088 |
GladeXML *Lburng = sc_grave_load("window_burn.glade"); |
Tgrave *Lburng = sc_grave_load("window_burn.glade"); |
1089 |
GtkWidget *Lwindowburn; |
GtkWidget *Lwindowburn; |
1090 |
GtkLabel *Ltitle; |
GtkLabel *Ltitle; |
1091 |
GtkProgressBar *Lpbtotal, *Lpbstep, *Lpbfifo, *Lpbbuffer; |
GtkProgressBar *Lpbtotal, *Lpbstep, *Lpbfifo, *Lpbbuffer; |
1107 |
Lpbtotal = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_total")); |
Lpbtotal = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_total")); |
1108 |
Lpbstep = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_step")); |
Lpbstep = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_step")); |
1109 |
/* pour la conversion des fichiers audio et la pulse bar */ |
/* pour la conversion des fichiers audio et la pulse bar */ |
1110 |
sc_grave_set_data(Ahash, "progress", Lpbstep); |
sc_grave_set_data(Ag, Lpbstep, "progress"); |
1111 |
Lpbfifo = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_fifo")); |
Lpbfifo = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_fifo")); |
1112 |
Lpbbuffer = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_buffer")); |
Lpbbuffer = GTK_PROGRESS_BAR(sc_grave_get_widget(Ag, "pb_buffer")); |
1113 |
|
|
1114 |
/* on attache les variables utilisees lors de l'operation */ |
/* on attache les variables utilisees lors de l'operation */ |
1115 |
sc_grave_set_data(Ag, "totaldone", &Ltotaldone); |
sc_grave_set_data(Ag, &Ltotaldone, "totaldone"); |
1116 |
sc_grave_set_data(Ag, "gabort", &Labort); /* operation annulee par l'utilisateur ? */ |
sc_grave_set_data(Ag, &Labort, "gabort"); /* operation annulee par l'utilisateur ? */ |
1117 |
sc_grave_set_data(Ag, "pid", &Lpid); |
sc_grave_set_data(Ag, &Lpid, "pid"); |
1118 |
sc_grave_set_data(Ag, "cont", &Lcont); |
sc_grave_set_data(Ag, &Lcont, "cont"); |
1119 |
sc_grave_set_data(Ag, "pid2", &Lpid2); |
sc_grave_set_data(Ag, &Lpid2, "pid2"); |
1120 |
|
|
1121 |
/* bouton annuler l'operation */ |
/* bouton annuler l'operation */ |
1122 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lburng, "btncancelburn")), "clicked", G_CALLBACK(abort_gravure), Ag); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lburng, "btncancelburn")), "clicked", G_CALLBACK(abort_gravure), Ag); |
1130 |
} else if (g_str_has_prefix(Aaction, "btnburndata")) { |
} else if (g_str_has_prefix(Aaction, "btnburndata")) { |
1131 |
Lbackvalue = burn_data(Ag, &Lerror); |
Lbackvalue = burn_data(Ag, &Lerror); |
1132 |
} else if (g_str_has_prefix(Aaction, "btnburndvddata")) { |
} else if (g_str_has_prefix(Aaction, "btnburndvddata")) { |
1133 |
hide_some_progressbar(Ahash); |
hide_some_progressbar(Ag); |
1134 |
Lbackvalue = burn_dvddata(Ag, &Lerror); |
Lbackvalue = burn_dvddata(Ag, &Lerror); |
1135 |
} |
} |
1136 |
|
|
1188 |
gtk_window_set_transient_for(GTK_WINDOW(sc_grave_get_widget(Lg, "window_inprogress")), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(sc_grave_get_widget(Lg, "window_inprogress")), GTK_WINDOW(Aparent)); |
1189 |
} |
} |
1190 |
|
|
1191 |
return Lxml; |
return Lg; |
1192 |
} |
} |
1193 |
|
|
1194 |
void prepare_combobox_vitesse(GtkComboBox *Acombobox) |
void prepare_combobox_vitesse(GtkComboBox *Acombobox) |
1214 |
gchar *Lname = g_strdup_printf("%s_isotodisabled%d", Abasename, Lnbr++); |
gchar *Lname = g_strdup_printf("%s_isotodisabled%d", Abasename, Lnbr++); |
1215 |
gchar *Lcur; |
gchar *Lcur; |
1216 |
|
|
1217 |
sc_grave_ref_wtd(Ag, Afirst, Lname); |
sc_grave_ref_wtd(Ag, Lbuf, Lname); |
1218 |
|
|
1219 |
va_start(Largs, Afirst); |
va_start(Largs, Afirst); |
1220 |
while (*Lbuf++) { |
while (*Lbuf++) { |
1236 |
gchar *Lname = g_strdup_printf("%stodisabled%d", Abasename, Lnbr++); |
gchar *Lname = g_strdup_printf("%stodisabled%d", Abasename, Lnbr++); |
1237 |
gchar *Lcur; |
gchar *Lcur; |
1238 |
|
|
1239 |
sc_grave_ref_wtd(Ag, Afirst, Lname); |
sc_grave_ref_wtd(Ag, Lbuf, Lname); |
1240 |
|
|
1241 |
va_start(Largs, Afirst); |
va_start(Largs, Afirst); |
1242 |
while (*Lbuf++) { |
while (*Lbuf++) { |
1262 |
if (!gtk_tree_selection_get_selected(Lselection, &Ltreemodel, &Liter)) return; |
if (!gtk_tree_selection_get_selected(Lselection, &Ltreemodel, &Liter)) return; |
1263 |
|
|
1264 |
gtk_tree_model_get(Ltreemodel, &Liter, 0, &Lident, -1); |
gtk_tree_model_get(Ltreemodel, &Liter, 0, &Lident, -1); |
1265 |
|
Lnewclick = GTK_NOTEBOOK(sc_grave_get_widget(Lg, Lident)); |
|
Lnewclick = sc_grave_get_data(Lg, Lident); |
|
1266 |
if (GTK_IS_NOTEBOOK(Lnewclick)) { |
if (GTK_IS_NOTEBOOK(Lnewclick)) { |
|
|
|
1267 |
if (GTK_IS_NOTEBOOK(Llstclick)) { |
if (GTK_IS_NOTEBOOK(Llstclick)) { |
1268 |
gtk_widget_hide(GTK_WIDGET(Llstclick)); |
gtk_widget_hide(GTK_WIDGET(Llstclick)); |
1269 |
} |
} |
1270 |
sc_grave_replace_data(Lg, "_lstclicked", Lnewclick); |
sc_grave_replace_data(Lg, Lnewclick, "_lstclicked"); |
1271 |
|
|
1272 |
gtk_widget_show(GTK_WIDGET(Lnewclick)); |
gtk_widget_show(GTK_WIDGET(Lnewclick)); |
1273 |
|
|
1274 |
/* pointeur sur la liste courante pour plus de simplicite */ |
/* pointeur sur la liste courante pour plus de simplicite */ |
1275 |
if (!strcmp(Lident, "bodycddata")) { |
if (!strcmp(Lident, "bodycddata")) { |
1276 |
sc_grave_replace_data(Lg, "_current_list", sc_grave_get_data(Lg, "LISTEDATA")); |
sc_grave_replace_data(Lg, sc_grave_get_data(Lg, "LISTEDATA"), "_current_lisl"); |
1277 |
} else if (!strcmp(Lident, "bodydvddata")) { |
} else if (!strcmp(Lident, "bodydvddata")) { |
1278 |
sc_grave_replace_data(Lg, "_current_list", sc_grave_get_data(Lg, "LISTEDVDDATA")); |
sc_grave_replace_data(Lg, sc_grave_get_data(Lg, "LISTEDVDDATA"), "_current_list"); |
1279 |
} |
} |
1280 |
} |
} |
|
|
|
1281 |
g_free(Lident); |
g_free(Lident); |
1282 |
} |
} |
1283 |
|
|
1298 |
void manage_interface(Tgrave *Ag, gint Aaction) |
void manage_interface(Tgrave *Ag, gint Aaction) |
1299 |
{ |
{ |
1300 |
GtkListStore *Lmodel; |
GtkListStore *Lmodel; |
1301 |
GtkTreeView *Ltopmenu = sc_grave_get_widget(Ag, "topmenu"); |
GtkTreeView *Ltopmenu = GTK_TREE_VIEW(sc_grave_get_widget(Ag, "topmenu")); |
1302 |
GtkTreeSelection *Lselection = gtk_tree_view_get_selection(Ltopmenu); |
GtkTreeSelection *Lselection = gtk_tree_view_get_selection(Ltopmenu); |
1303 |
GtkTreeIter Liter; |
GtkTreeIter Liter; |
1304 |
GtkCellRenderer *Lcellrender; |
GtkCellRenderer *Lcellrender; |
1305 |
GtkTreeViewColumn *Lcell; |
GtkTreeViewColumn *Lcell; |
|
GtkComboBox *Lisolevel; |
|
1306 |
|
|
1307 |
if (Aaction & MENU_NEW) { |
if (Aaction & MENU_NEW) { |
1308 |
Lmodel = gtk_list_store_new(3, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_STRING); |
Lmodel = gtk_list_store_new(3, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_STRING); |
1350 |
|
|
1351 |
/* mise a jour combo "iso level" */ |
/* mise a jour combo "iso level" */ |
1352 |
if (Aaction & COMBO_UPDATE) { |
if (Aaction & COMBO_UPDATE) { |
1353 |
Lisolevel = sc_grave_get_widget(Ag, "dataisolevel"); |
remplirecombo_full(GTK_COMBO_BOX(sc_grave_get_widget(Ag, "dataisolevel")), "", Gisolevel, |
|
remplirecombo_full(Lisolevel, "", Gisolevel, |
|
1354 |
TRUE, conf_get_string("dataisolevel"), conf_get_int("mkisofs_support_isov2")); |
TRUE, conf_get_string("dataisolevel"), conf_get_int("mkisofs_support_isov2")); |
1355 |
} |
} |
1356 |
} |
} |
1357 |
|
|
1358 |
|
|
1359 |
/* preparation du combo contenant la liste du peripherique a utiliser */ |
/* preparation du combo contenant la liste du peripherique a utiliser */ |
1360 |
void prepare_combobox_graveur(Trave *Ag, gchar *Abasename) |
void prepare_combobox_graveur(Tgrave *Ag, gchar *Abasename) |
1361 |
{ |
{ |
1362 |
GtkComboBox *Lcombobox = GTK_COMBO_BOX(sc_grave_get_widgetv(Ag, "%scombo", Abasename)); |
GtkComboBox *Lcombobox = GTK_COMBO_BOX(sc_grave_get_widgetv(Ag, "%scombo", Abasename)); |
1363 |
if (GTK_IS_COMBO_BOX(Lcombobox)) { |
if (GTK_IS_COMBO_BOX(Lcombobox)) { |
1520 |
} |
} |
1521 |
|
|
1522 |
/* fenetre de confirmation avec une checkbox */ |
/* fenetre de confirmation avec une checkbox */ |
1523 |
GHashTable *create_dialog_confirm_operation (GtkWidget *Aparent, |
Tgrave *create_dialog_confirm_operation (GtkWidget *Aparent, |
1524 |
gchar *Alabel, gchar *Acheckboxlbl, gboolean Acheckboxstatus) |
gchar *Alabel, gchar *Acheckboxlbl, gboolean Acheckboxstatus) |
1525 |
{ |
{ |
1526 |
gchar *Ltemplate = PACKAGE_DATA_DIR "/" PACKAGE "/dialog_confirm_operation.glade"; |
Tgrave *Lg = sc_grave_load("dialog_confirm_operation.glade"); |
|
GladeXML *Lxml = glade_xml_new(Ltemplate, NULL,NULL); |
|
1527 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
|
GtkLabel *Llabel; |
|
1528 |
GtkToggleButton *Ltoggleoption; |
GtkToggleButton *Ltoggleoption; |
|
GHashTable *Lhash = _hash(); |
|
1529 |
|
|
1530 |
if (!Lxml) { |
g_assert(Lg); |
|
g_error("Cannot load '%s': %s\n", Ltemplate, g_strerror(errno)); |
|
|
} |
|
1531 |
|
|
1532 |
Ldialog = glade_xml_get_widget(Lxml, "dialog_confirm_operation"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_confirm_operation"); |
1533 |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
1534 |
g_hash_table_insert(Lhash, "window", Ldialog); |
sc_grave_set_data(Lg, Ldialog, "window"); |
1535 |
|
|
1536 |
/* titre */ |
/* titre */ |
1537 |
Llabel = GTK_LABEL(glade_to_hash(Lxml, Lhash, "label")); |
gtk_label_set_text(GTK_LABEL(sc_grave_get_widget(Lg, "label")), Alabel); |
|
gtk_label_set_text(Llabel, Alabel); |
|
1538 |
|
|
1539 |
/* effacer les cdrw en mode fast ? */ |
/* effacer les cdrw en mode fast ? */ |
1540 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "checkbox")); |
Ltoggleoption = GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "checkbox")); |
1541 |
if (Acheckboxlbl) { |
if (Acheckboxlbl) { |
1542 |
gtk_toggle_button_set_active(Ltoggleoption, Acheckboxstatus); |
gtk_toggle_button_set_active(Ltoggleoption, Acheckboxstatus); |
1543 |
gtk_button_set_label(GTK_BUTTON(Ltoggleoption), Acheckboxlbl); |
gtk_button_set_label(GTK_BUTTON(Ltoggleoption), Acheckboxlbl); |
1545 |
gtk_widget_hide(GTK_WIDGET(Ltoggleoption)); |
gtk_widget_hide(GTK_WIDGET(Ltoggleoption)); |
1546 |
} |
} |
1547 |
|
|
1548 |
return Lhash; |
return Lg; |
1549 |
} |
} |
1550 |
|
|
1551 |
/* fenetre selection d'une operation sur un dvd */ |
/* fenetre selection d'une operation sur un dvd */ |
1552 |
GHashTable *create_dialog_select_dvdoperation (GtkWidget *Aparent) |
Tgrave *create_dialog_select_dvdoperation (GtkWidget *Aparent) |
1553 |
{ |
{ |
1554 |
gchar *Ltemplate = PACKAGE_DATA_DIR "/" PACKAGE "/dialog_select_operation.glade"; |
Tgrave *Lg = sc_grave_load("dialog_select_operation.glade"); |
|
GladeXML *Lxml = glade_xml_new(Ltemplate, NULL,NULL); |
|
1555 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
|
GHashTable *Lhash = _hash(); |
|
1556 |
|
|
1557 |
if (!Lxml) { |
g_assert(Lg); |
|
g_error("Cannot load '%s': %s\n", Ltemplate, g_strerror(errno)); |
|
|
} |
|
1558 |
|
|
1559 |
Ldialog = glade_xml_get_widget(Lxml, "dialog_select_operation"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_select_operation"); |
1560 |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
1561 |
g_hash_table_insert(Lhash, "window", Ldialog); |
sc_grave_set_data(Lg, Ldialog, "window"); |
1562 |
|
|
|
/* titre */ |
|
|
glade_to_hash(Lxml, Lhash, "label"); |
|
|
|
|
1563 |
/* commencer une session ou merger ? */ |
/* commencer une session ou merger ? */ |
1564 |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "burninitial")), TRUE); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "burninitial")), TRUE); |
|
glade_to_hash(Lxml, Lhash, "burnmerge"); |
|
1565 |
|
|
1566 |
return Lhash; |
return Lg; |
1567 |
} |
} |
1568 |
|
|
1569 |
/* fenetre proprietes */ |
/* fenetre proprietes */ |
1570 |
GHashTable *create_dialog_proprietes (GtkWidget *Aparent) |
Tgrave *create_dialog_proprietes (GtkWidget *Aparent) |
1571 |
{ |
{ |
1572 |
gchar *Ltemplate = PACKAGE_DATA_DIR "/" PACKAGE "/dialog_properties.glade"; |
Tgrave *Lg = sc_grave_load("dialog_properties.glade"); |
|
GladeXML *Lxml = glade_xml_new(Ltemplate, NULL,NULL); |
|
|
GtkToggleButton *Ltoggleoption; |
|
|
GtkEntry *Ldirtmpvalue; |
|
1573 |
GtkTreeView *Ltreeview; |
GtkTreeView *Ltreeview; |
1574 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
1575 |
GtkButton *Lbtn; |
GtkButton *Lbtn; |
|
GHashTable *Lhash = _hash(); |
|
1576 |
|
|
1577 |
if (!Lxml) { |
g_assert(Lg); |
|
g_error("Cannot load '%s': %s\n", Ltemplate, g_strerror(errno)); |
|
|
} |
|
1578 |
|
|
1579 |
Ldialog = glade_xml_get_widget(Lxml, "dialog_properties"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_properties"); |
1580 |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
gtk_window_set_transient_for(GTK_WINDOW(Ldialog), GTK_WINDOW(Aparent)); |
1581 |
g_hash_table_insert(Lhash, "window", Ldialog); |
sc_grave_set_data(Lg, Ldialog, "window"); |
1582 |
|
|
1583 |
/** onglet "General" **/ |
/** onglet "General" **/ |
1584 |
|
|
1585 |
/* overburn actif ? */ |
/* overburn actif ? */ |
1586 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "overburn")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "overburn")), conf_get_boolean("overburn")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("overburn")); |
|
1587 |
|
|
1588 |
/* effacer les cdrw avant ecriture */ |
/* effacer les cdrw avant ecriture */ |
1589 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "autoblank")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "autoblank")), conf_get_boolean("autoblank")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("autoblank")); |
|
1590 |
|
|
1591 |
/* effacer les cdrw en mode fast ? */ |
/* effacer les cdrw en mode fast ? */ |
1592 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "fastblank")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "fastblank")), conf_get_boolean("fastblank")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("fastblank")); |
|
1593 |
|
|
1594 |
/* ejecter le cdr apres l'operation ? */ |
/* ejecter le cdr apres l'operation ? */ |
1595 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "eject")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "eject")), conf_get_boolean("eject")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("eject")); |
|
1596 |
|
|
1597 |
/* afficher le status bar ? */ |
/* afficher le status bar ? */ |
1598 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "statusbar")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "statusbar")), conf_get_boolean("statusbar")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("statusbar")); |
|
1599 |
|
|
1600 |
/* combo taille des icones */ |
/* combo taille des icones */ |
1601 |
remplirecombo(GTK_COMBO_BOX(glade_to_hash(Lxml, Lhash, "iconsizelist")), "", |
remplirecombo(GTK_COMBO_BOX(sc_grave_get_widget(Lg, "iconsizelist")), "", |
1602 |
Gtypeicosize, TRUE, conf_get_string("iconsize")); |
Gtypeicosize, TRUE, conf_get_string("iconsize")); |
1603 |
|
|
1604 |
/* sauver les donnees lorsque l'on quitte ? */ |
/* sauver les donnees lorsque l'on quitte ? */ |
1605 |
Ltoggleoption = GTK_TOGGLE_BUTTON(glade_to_hash(Lxml, Lhash, "saveconfig")); |
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sc_grave_get_widget(Lg, "saveconfig")), conf_get_boolean("saveconfig")); |
|
gtk_toggle_button_set_active(Ltoggleoption, conf_get_boolean("saveconfig")); |
|
1606 |
|
|
1607 |
/* fonctions etendues ? */ |
/* fonctions etendues ? */ |
1608 |
#if 0 |
#if 0 |
1611 |
#endif |
#endif |
1612 |
|
|
1613 |
/* repertoire temporraire */ |
/* repertoire temporraire */ |
1614 |
Ldirtmpvalue = GTK_ENTRY(glade_to_hash(Lxml, Lhash, "dirtmpvalue")); |
gtk_entry_set_text(GTK_ENTRY(sc_grave_get_widget(Lg, "dirtmpvalue")), conf_get_string("tmpdir")); |
|
gtk_entry_set_text(Ldirtmpvalue, conf_get_string("tmpdir")); |
|
1615 |
|
|
1616 |
/** onglet "Format des medias" **/ |
/** onglet "Format des medias" **/ |
1617 |
#if 0 |
#if 0 |
1624 |
#endif |
#endif |
1625 |
|
|
1626 |
|
|
1627 |
/** onglet "Programmes externes" **/ |
Ltreeview = GTK_TREE_VIEW(sc_grave_get_widget(Lg, "periphdata")); |
|
glade_to_hash_list(Lxml, Lhash, "cdrecord", "cdrecordlbl", "cdrecordpara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "cdrdao", "cdrdaolbl", "cdrdaopara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "mkisofs", "mkisofslbl", "mkisofspara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "readcd", "readcdlbl", "readcdpara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "sox", "soxlbl", "soxpara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "growisofs", "growisofslbl", "growisofspara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "dvd+rw-mediainfo", "dvd+rw-mediainfolbl", "dvd+rw-mediainfopara", NULL); |
|
|
glade_to_hash_list(Lxml, Lhash, "dvd+rw-format", "dvd+rw-formatlbl", "dvd+rw-formatpara", NULL); |
|
|
glade_to_hash(Lxml, Lhash, "popupdevices"); |
|
|
|
|
|
/** onglet "Lecteurs" **/ |
|
|
Ltreeview = GTK_TREE_VIEW(glade_to_hash(Lxml, Lhash, "periphdata")); |
|
1628 |
prepare_properties_devicestreeview(Ltreeview); |
prepare_properties_devicestreeview(Ltreeview); |
1629 |
g_signal_connect(G_OBJECT(Ltreeview), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lhash); |
g_signal_connect(G_OBJECT(Ltreeview), "button-press-event", G_CALLBACK(gtk_do_eventbuttonpress), Lg); |
1630 |
g_signal_connect(G_OBJECT(Ltreeview), "popup-menu", G_CALLBACK(key_popupmenu_devices), Lhash); |
g_signal_connect(G_OBJECT(Ltreeview), "popup-menu", G_CALLBACK(key_popupmenu_devices), Lg); |
1631 |
|
|
1632 |
/* popup sur les peripheriques */ |
/* popup sur les peripheriques */ |
1633 |
g_signal_connect(G_OBJECT(glade_to_hash(Lxml, Lhash, "popupdevices_edit")), |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "popupdevices_edit")), |
1634 |
"activate", G_CALLBACK(gtk_devices_edit), Lhash); |
"activate", G_CALLBACK(gtk_devices_edit), Lg); |
1635 |
g_signal_connect(G_OBJECT(glade_to_hash(Lxml, Lhash, "popupdevices_remove")), |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "popupdevices_remove")), |
1636 |
"activate", G_CALLBACK(gtk_devices_remove), Lhash); |
"activate", G_CALLBACK(gtk_devices_remove), Lg); |
1637 |
|
|
1638 |
g_hash_table_insert(Lhash, "topwindow", Aparent); |
sc_grave_set_data(Lg, Aparent, "topwindow"); |
1639 |
|
|
1640 |
maj_proprietes_prog(Lhash); |
maj_proprietes_prog(Lg); |
1641 |
remplirelistegraveur(Ltreeview); |
remplirelistegraveur(Ltreeview); |
1642 |
|
|
1643 |
Lbtn = GTK_BUTTON(glade_xml_get_widget(Lxml, "dirtmp")); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "dirtmp")), "clicked", G_CALLBACK(gtk_file_sel), Lg); |
|
g_signal_connect(G_OBJECT(Lbtn), "clicked", G_CALLBACK(gtk_file_sel), Lhash); |
|
1644 |
|
|
1645 |
Lbtn = GTK_BUTTON(glade_xml_get_widget(Lxml, "scanprog")); |
Lbtn = GTK_BUTTON(sc_grave_get_widget(Lg, "scanprog")); |
1646 |
g_signal_connect(G_OBJECT(Lbtn), "clicked", G_CALLBACK(chercheprog), Lhash); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "scanprog")), "clicked", G_CALLBACK(chercheprog), Lg); |
1647 |
|
|
1648 |
Lbtn = GTK_BUTTON(glade_xml_get_widget(Lxml, "scandevice")); |
Lbtn = GTK_BUTTON(sc_grave_get_widget(Lg, "scandevice")); |
1649 |
g_signal_connect(G_OBJECT(Lbtn), "clicked", G_CALLBACK(cherchelecteur), Lhash); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "scandevice")), "clicked", G_CALLBACK(cherchelecteur), Lg); |
1650 |
|
|
1651 |
Lbtn = GTK_BUTTON(glade_to_hash(Lxml, Lhash, "adddevice")); |
Lbtn = GTK_BUTTON(sc_grave_get_widget(Lg, "adddevice")); |
1652 |
g_signal_connect(G_OBJECT(Lbtn), "clicked", G_CALLBACK(gtk_devices_add), Lhash); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lg, "adddevice")), "clicked", G_CALLBACK(gtk_devices_add), Lg); |
1653 |
|
|
1654 |
|
|
1655 |
return Lhash; |
return Lg; |
1656 |
} |
} |
1657 |
|
|
1658 |
/* premiere utilisation de graveman, bienvenue ! */ |
/* premiere utilisation de graveman, bienvenue ! */ |
1659 |
void welcome_to_graveman(void) |
void welcome_to_graveman(void) |
1660 |
{ |
{ |
1661 |
gchar *Ltemplate = PACKAGE_DATA_DIR "/" PACKAGE "/dialog_welcome.glade"; |
Tgrave *Lg = sc_grave_load("dialog_welcome.glade"); |
|
GladeXML *Lxml = glade_xml_new(Ltemplate, NULL,NULL); |
|
1662 |
GtkWidget *Ldialog; |
GtkWidget *Ldialog; |
1663 |
|
|
1664 |
if (!Lxml) { |
g_assert(Lg); |
|
g_error("Cannot load '%s': %s\n", Ltemplate, g_strerror(errno)); |
|
|
} |
|
1665 |
|
|
1666 |
Ldialog = glade_xml_get_widget(Lxml, "dialog_welcome"); |
Ldialog = sc_grave_get_widget(Lg, "dialog_welcome"); |
1667 |
|
|
1668 |
gtk_dialog_run(GTK_DIALOG(Ldialog)); |
gtk_dialog_run(GTK_DIALOG(Ldialog)); |
1669 |
gtk_widget_destroy(Ldialog); |
gtk_widget_destroy(Ldialog); |
1670 |
|
sc_grave_destroy(Lg); |
|
g_free(Lxml); |
|
1671 |
} |
} |
1672 |
|
|
1673 |
/* mise a jour d'une bar indicant le remplissage, passage en rouge si le cd est plein */ |
/* mise a jour d'une bar indicant le remplissage, passage en rouge si le cd est plein */ |
1697 |
} |
} |
1698 |
|
|
1699 |
/* effacer un cd reinscriptible */ |
/* effacer un cd reinscriptible */ |
1700 |
void show_erasecdrwwindow(GHashTable *Ahash) |
void show_erasecdrwwindow(Tgrave *Ag) |
1701 |
{ |
{ |
1702 |
GtkWidget *Lwindow1 = g_hash_table_lookup(Ahash, "window"); |
GtkWidget *Lwindow1 = sc_grave_get_data(Ag, "window"); |
1703 |
GladeXML *Lxmlencours = create_window_encours(Lwindow1); |
Tgrave *Lerasecdg = create_window_encours(Lwindow1); |
1704 |
gint Lcont = 2; |
gint Lcont = 2; |
1705 |
gint Lpid; |
gint Lpid; |
1706 |
gboolean Loperationstatus = FALSE; |
gboolean Loperationstatus = FALSE; |
1707 |
gboolean Labort = FALSE; |
gboolean Labort = FALSE; |
|
GtkWidget *Lprogressbar; |
|
|
GtkLabel *Llabel; |
|
|
GtkWidget *Lcancel; |
|
1708 |
GtkWidget *Lwin; |
GtkWidget *Lwin; |
|
GHashTable *Lerasecdhash = _hash(); |
|
1709 |
GError *Lerror = NULL; |
GError *Lerror = NULL; |
1710 |
GtkWidget *Lstatusbox = NULL; |
GtkWidget *Lstatusbox = NULL; |
1711 |
|
|
1712 |
Lwin = glade_xml_get_widget(Lxmlencours, "window_inprogress"); |
Lwin = sc_grave_get_widget(Lerasecdg, "window_inprogress"); |
1713 |
Llabel = GTK_LABEL(glade_xml_get_widget(Lxmlencours, "labelava")); |
gtk_label_set_text(GTK_LABEL(sc_grave_get_widget(Lerasecdg, "labelava")), _("Erasing CD-RW in progress, please wait...")); |
|
gtk_label_set_text(Llabel, _("Erasing CD-RW in progress, please wait...")); |
|
1714 |
|
|
1715 |
|
|
1716 |
Lprogressbar = glade_xml_get_widget(Lxmlencours, "progress"); |
sc_grave_set_data(Lerasecdg, &Lcont, "cont"); |
1717 |
g_hash_table_insert(Lerasecdhash, "cont", &Lcont); |
sc_grave_set_data(Lerasecdg, &Lpid, "pid"); |
1718 |
g_hash_table_insert(Lerasecdhash, "pid", &Lpid); |
sc_grave_set_data(Lerasecdg, &Labort, "gabort"); |
1719 |
g_hash_table_insert(Lerasecdhash, "gabort", &Labort); |
sc_grave_set_data(Lerasecdg, &Lerror, "gerror"); |
1720 |
g_hash_table_insert(Lerasecdhash, "gerror", &Lerror); |
sc_grave_set_data(Lerasecdg, &Loperationstatus, "operationstatus"); |
1721 |
g_hash_table_insert(Lerasecdhash, "operationstatus", &Loperationstatus); |
sc_grave_set_data(Lerasecdg, sc_grave_get_widget(Ag, "dstothercombo"), "dstothercombo"); |
1722 |
g_hash_table_insert(Lerasecdhash, "labelava", Llabel); |
sc_grave_set_data(Lerasecdg, sc_grave_get_widget(Ag, "usefastblank"), "usefastblank"); |
|
g_hash_table_insert(Lerasecdhash, "progress", Lprogressbar); |
|
|
g_hash_table_insert(Lerasecdhash, "dstothercombo", g_hash_table_lookup(Ahash, "dstothercombo")); |
|
|
g_hash_table_insert(Lerasecdhash, "usefastblank", g_hash_table_lookup(Ahash, "usefastblank")); |
|
1723 |
|
|
1724 |
/* bouton annuler */ |
/* bouton annuler */ |
1725 |
Lcancel = glade_xml_get_widget(Lxmlencours, "cancelbtn"); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lerasecdg, "cancelbtn")), "clicked", G_CALLBACK(abort_encours), Lerasecdg); |
1726 |
g_signal_connect(G_OBJECT(Lcancel), "clicked", G_CALLBACK(abort_encours), Lerasecdhash); |
g_signal_connect(G_OBJECT(Lwin), "delete-event", G_CALLBACK(delete_event_encours), Lerasecdg); |
|
g_signal_connect(G_OBJECT(Lwin), "delete-event", G_CALLBACK(delete_event_encours), Lerasecdhash); |
|
1727 |
|
|
1728 |
gtk_widget_show(Lwin); |
gtk_widget_show(Lwin); |
1729 |
g_timeout_add(500, encours_callback, Lerasecdhash); |
g_timeout_add(500, encours_callback, Lerasecdg); |
1730 |
|
|
1731 |
/* operation en elle meme */ |
/* operation en elle meme */ |
1732 |
perform_erase_cdrw(Lerasecdhash, &Lerror); |
perform_erase_cdrw(Lerasecdg, &Lerror); |
1733 |
|
|
1734 |
if (Labort) { |
if (Labort) { |
1735 |
Lstatusbox = gtk_message_dialog_new(GTK_WINDOW(Lwin), |
Lstatusbox = gtk_message_dialog_new(GTK_WINDOW(Lwin), |
1748 |
gtk_widget_destroy(Lstatusbox); |
gtk_widget_destroy(Lstatusbox); |
1749 |
|
|
1750 |
gtk_widget_destroy(Lwin); |
gtk_widget_destroy(Lwin); |
1751 |
g_hash_table_destroy(Lerasecdhash); |
sc_grave_destroy(Lerasecdg); |
1752 |
|
|
1753 |
if (Lerror) g_error_free(Lerror); |
if (Lerror) g_error_free(Lerror); |
1754 |
} |
} |
1762 |
gint Lpid; |
gint Lpid; |
1763 |
gboolean Loperationstatus = FALSE; |
gboolean Loperationstatus = FALSE; |
1764 |
gboolean Labort = FALSE; |
gboolean Labort = FALSE; |
|
GtkWidget *Lprogressbar; |
|
|
GtkLabel *Llabel; |
|
|
GtkWidget *Lcancel; |
|
1765 |
GtkWidget *Lwin; |
GtkWidget *Lwin; |
|
GHashTable *Lfixcdhash = _hash(); |
|
1766 |
GError *Lerror = NULL; |
GError *Lerror = NULL; |
1767 |
GtkWidget *Lstatusbox = NULL; |
GtkWidget *Lstatusbox = NULL; |
1768 |
|
|
1769 |
Lwin = glade_xml_get_widget(Lxmlencours, "window_inprogress"); |
Lwin = sc_grave_get_widget(Lfixcdg, "window_inprogress"); |
1770 |
Llabel = GTK_LABEL(glade_xml_get_widget(Lxmlencours, "labelava")); |
gtk_label_set_text(GTK_LABEL(sc_grave_get_widget(Lfixcdg, "labelava")), _("Fixating CD-R in progress, please wait...")); |
|
gtk_label_set_text(Llabel, _("Fixating CD-R in progress, please wait...")); |
|
|
|
|
1771 |
|
|
1772 |
Lprogressbar = glade_xml_get_widget(Lxmlencours, "progress"); |
sc_grave_set_data(Lfixcdg, &Lcont, "cont"); |
1773 |
g_hash_table_insert(Lfixcdhash, "cont", &Lcont); |
sc_grave_set_data(Lfixcdg, &Lpid, "pid"); |
1774 |
g_hash_table_insert(Lfixcdhash, "pid", &Lpid); |
sc_grave_set_data(Lfixcdg, &Labort, "gabort"); |
1775 |
g_hash_table_insert(Lfixcdhash, "gabort", &Labort); |
sc_grave_set_data(Lfixcdg, &Lerror, "gerror"); |
1776 |
g_hash_table_insert(Lfixcdhash, "gerror", &Lerror); |
sc_grave_set_data(Lfixcdg, &Loperationstatus, "operationstatus"); |
1777 |
g_hash_table_insert(Lfixcdhash, "operationstatus", &Loperationstatus); |
sc_grave_set_data(Lfixcdg, sc_grave_get_widget(Ag, "dstothercombo"), "dstothercombo"); |
|
g_hash_table_insert(Lfixcdhash, "labelava", Llabel); |
|
|
g_hash_table_insert(Lfixcdhash, "progress", Lprogressbar); |
|
|
g_hash_table_insert(Lfixcdhash, "dstothercombo", g_hash_table_lookup(Ahash, "dstothercombo")); |
|
1778 |
|
|
1779 |
/* bouton annuler */ |
/* bouton annuler */ |
1780 |
Lcancel = glade_xml_get_widget(Lxmlencours, "cancelbtn"); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lfixcdg, "cancelbtn")), "clicked", G_CALLBACK(abort_encours), Lfixcdg); |
1781 |
g_signal_connect(G_OBJECT(Lcancel), "clicked", G_CALLBACK(abort_encours), Lfixcdhash); |
g_signal_connect(G_OBJECT(Lwin), "delete-event", G_CALLBACK(delete_event_encours), Lfixcdg); |
|
g_signal_connect(G_OBJECT(Lwin), "delete-event", G_CALLBACK(delete_event_encours), Lfixcdhash); |
|
1782 |
|
|
1783 |
gtk_widget_show(Lwin); |
gtk_widget_show(Lwin); |
1784 |
g_timeout_add(500, encours_callback, Lfixcdhash); |
g_timeout_add(500, encours_callback, Lfixcdg); |
1785 |
|
|
1786 |
/* operation en elle meme */ |
/* operation en elle meme */ |
1787 |
perform_fix_cd(Lfixcdhash, &Lerror); |
perform_fix_cd(Lfixcdg, &Lerror); |
1788 |
|
|
1789 |
if (Labort) { |
if (Labort) { |
1790 |
Lstatusbox = gtk_message_dialog_new(GTK_WINDOW(Lwin), |
Lstatusbox = gtk_message_dialog_new(GTK_WINDOW(Lwin), |
1803 |
gtk_widget_destroy(Lstatusbox); |
gtk_widget_destroy(Lstatusbox); |
1804 |
|
|
1805 |
gtk_widget_destroy(Lwin); |
gtk_widget_destroy(Lwin); |
1806 |
g_hash_table_destroy(Lfixcdhash); |
sc_grave_destroy(Lfixcdg); |
1807 |
|
|
1808 |
if (Lerror) g_error_free(Lerror); |
if (Lerror) g_error_free(Lerror); |
1809 |
} |
} |
1817 |
gint Lpid; |
gint Lpid; |
1818 |
gboolean Loperationstatus = FALSE; |
gboolean Loperationstatus = FALSE; |
1819 |
gboolean Labort = FALSE; |
gboolean Labort = FALSE; |
|
GtkWidget *Lprogressbar; |
|
1820 |
GtkLabel *Llabel; |
GtkLabel *Llabel; |
|
GtkWidget *Lcancel; |
|
1821 |
GtkWidget *Lwin; |
GtkWidget *Lwin; |
1822 |
GError *Lerror = NULL; |
GError *Lerror = NULL; |
1823 |
GtkWidget *Lstatusbox = NULL; |
GtkWidget *Lstatusbox = NULL; |
1832 |
sc_grave_set_data(Lformatdvdg, &Labort, "gabort"); |
sc_grave_set_data(Lformatdvdg, &Labort, "gabort"); |
1833 |
sc_grave_set_data(Lformatdvdg, &Lerror, "gerror"); |
sc_grave_set_data(Lformatdvdg, &Lerror, "gerror"); |
1834 |
sc_grave_set_data(Lformatdvdg, &Loperationstatus, "operationstatus"); |
sc_grave_set_data(Lformatdvdg, &Loperationstatus, "operationstatus"); |
1835 |
sc_grave_set_widget(Lformatdvdg, "dstothercombo", sc_grave_get_widget(Ag, "dstothercombo")); |
sc_grave_set_data(Lformatdvdg, sc_grave_get_widget(Ag, "dstothercombo"), "dstothercombo"); |
1836 |
|
|
1837 |
/* bouton annuler */ |
/* bouton annuler */ |
1838 |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lformatdvdg, "cancelbtn")), "clicked", G_CALLBACK(abort_encours), Lformatdvdg); |
g_signal_connect(G_OBJECT(sc_grave_get_widget(Lformatdvdg, "cancelbtn")), "clicked", G_CALLBACK(abort_encours), Lformatdvdg); |