]> matita.cs.unibo.it Git - helm.git/commitdiff
**** EXPERIMENTAL ****
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Mon, 2 Oct 2006 16:22:13 +0000 (16:22 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Mon, 2 Oct 2006 16:22:13 +0000 (16:22 +0000)
The GUI of Matita is now thread-based.
In principle Ctr-C works unreliably.
In practice it works reasonably well.

matita/matitaGui.ml

index 4f36938b5e25d67835a6a60900e05505d420bba6..af9984c1bcb18e2e0eb558a74938939962379eff 100644 (file)
@@ -422,10 +422,13 @@ class gui () =
         develList#buttonsHbox#misc#set_sensitive true;
         source_view#set_editable true
       in
-      let locker f = 
+      let locker f () =
+       let thread_main =
         fun () -> 
           lock_world ();
-          try f ();unlock_world () with exc -> unlock_world (); raise exc in
+          try f ();unlock_world () with exc -> unlock_world (); raise exc
+       in
+        ignore (Thread.create thread_main ()) in
       let keep_focus f =
         fun () ->
          try