src/Tools/jEdit/src/session_build.scala
changeset 71725 c255ed582095
parent 71704 b9a5eb0f3b43
child 71726 a5fda30edae2
equal deleted inserted replaced
71724:522994a6c10e 71725:c255ed582095
    21 
    21 
    22 object Session_Build
    22 object Session_Build
    23 {
    23 {
    24   def check_dialog(view: View)
    24   def check_dialog(view: View)
    25   {
    25   {
    26     GUI_Thread.require {}
       
    27 
       
    28     val options = PIDE.options.value
    26     val options = PIDE.options.value
    29     try {
    27     Isabelle_Thread.fork() {
    30       if (JEdit_Sessions.session_no_build ||
    28       try {
       
    29         if (JEdit_Sessions.session_no_build ||
    31           JEdit_Sessions.session_build(options, no_build = true) == 0)
    30           JEdit_Sessions.session_build(options, no_build = true) == 0)
    32             JEdit_Sessions.session_start(options)
    31           JEdit_Sessions.session_start(options)
    33       else new Dialog(view)
    32         else GUI_Thread.later { new Dialog(view) }
    34     }
    33       }
    35     catch {
    34       catch {
    36       case exn: Throwable =>
    35         case exn: Throwable =>
    37         GUI.dialog(view, "Isabelle", GUI.scrollable_text(Exn.message(exn)))
    36           GUI.dialog(view, "Isabelle", GUI.scrollable_text(Exn.message(exn)))
       
    37       }
    38     }
    38     }
    39   }
    39   }
    40 
    40 
    41   private class Dialog(view: View) extends JDialog(view)
    41   private class Dialog(view: View) extends JDialog(view)
    42   {
    42   {