graveman-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Graveman-cvs] Changes to graveman/current/src/matos.c


From: sylvain cresto
Subject: [Graveman-cvs] Changes to graveman/current/src/matos.c
Date: Sat, 26 Feb 2005 07:23:48 -0500

Index: graveman/current/src/matos.c
diff -u graveman/current/src/matos.c:1.16 graveman/current/src/matos.c:1.17
--- graveman/current/src/matos.c:1.16   Mon Feb 21 01:25:28 2005
+++ graveman/current/src/matos.c        Sat Feb 26 12:23:36 2005
@@ -150,7 +150,8 @@
 _DEB("le bus en question [%s] = [%s]\n", Adrivedesc->bus, Adev);
   Ldrive->bus = g_slist_append(Ldrive->bus, g_strdup(Adrivedesc->bus));
   Ldrive->dev = g_slist_append(Ldrive->dev,
-      g_strdup_printf("%s%s", Adrivedesc->useline, strcmp(Adrivedesc->bus, 
"IDE") ? Adev : ""));
+      g_strdup_printf("%s%s", Adrivedesc->useline,
+        strcmp(Adrivedesc->bus, "IDE") && strcmp(Adrivedesc->bus, "DSCSI") ? 
Adev : ""));
 }
 
 /* operation de copie */
@@ -550,6 +551,55 @@
   return Lstatus;
 }
 
+/* attente que l'utilisateur ai inseré le/les cd qui va bien */
+gboolean callback_waiting_for_user(gpointer Adata)
+{
+  Tgrave *Lg = (Tgrave *)Adata;
+  gint *Lcont = (gint *)sc_grave_get_data(Lg, "cont");
+
+  return TRUE;
+}
+
+gboolean waiting_for_user(Tgrave *Ag, gint Atypecd, gchar *Ldriveident1, gint 
Ld1requis, gchar *Ldriveident2, gint Ld2requis)
+{
+  Tgrave *Lwaitg = sc_grave_load("window_waiting_cd.glade");
+  GtkWidget *Lparent = sc_grave_get_widget(Lwaitg, "topwindow");
+  GtkWidget *Lwindow;
+  gboolean Lcont = TRUE;
+  guint Ltimeout;
+
+  g_assert(Lwaitg);
+
+  Lwindow = GTK_WIDGET(sc_grave_get_widget(Lwaitg, "window_waiting_cd"));
+
+  sc_grave_set_data(Lwaitg, Lwindow, "window");
+  sc_grave_set_data(Lwaitg, &Lcont, "cont");
+
+  if (Ldriveident1) {
+    sc_grave_set_data(Lwaitg, Ldriveident1, "device1");
+    sc_grave_set_data(Lwaitg, &Ld1requis, "devicesrequis1");
+  }
+  if (Ldriveident2) {
+    sc_grave_set_data(Lwaitg, Ldriveident2, "device2");
+    sc_grave_set_data(Lwaitg, &Ld2requis, "devicesrequis2");
+  }
+ 
+  gtk_window_set_transient_for(GTK_WINDOW(Lwindow), GTK_WINDOW(Lparent));
+
+  gtk_widget_show(Lwindow);
+
+  Ltimeout = g_timeout_add(1500, callback_waiting_for_user, Lwaitg);
+  while (Lcont == TRUE) {
+    gtk_main_iteration(); 
+  }
+
+  /* attente de la fin du timeout */ 
+  g_source_remove(Ltimeout);
+
+  gtk_widget_destroy(Lwindow);
+  sc_grave_destroy(Lwaitg);
+}
+
 /*
  * vim:et:ts=8:sts=2:sw=2
  */




reply via email to

[Prev in Thread] Current Thread [Next in Thread]