src/Tools/jEdit/src/session_build.scala
changeset 62973 744266e32612
parent 61742 fd3b214b0979
child 65256 c3d6dd17d626
equal deleted inserted replaced
62972:0eedd78c2b47 62973:744266e32612
    24   def session_build(view: View)
    24   def session_build(view: View)
    25   {
    25   {
    26     GUI_Thread.require {}
    26     GUI_Thread.require {}
    27 
    27 
    28     try {
    28     try {
    29       if (Isabelle_Logic.session_build_mode() == "none" ||
    29       if (JEdit_Sessions.session_build_mode() == "none" ||
    30           Isabelle_Logic.session_build(no_build = true) == 0) Isabelle_Logic.session_start()
    30           JEdit_Sessions.session_build(no_build = true) == 0) JEdit_Sessions.session_start()
    31       else new Dialog(view)
    31       else new Dialog(view)
    32     }
    32     }
    33     catch {
    33     catch {
    34       case exn: Throwable =>
    34       case exn: Throwable =>
    35         GUI.dialog(view, "Isabelle", GUI.scrollable_text(Exn.message(exn)))
    35         GUI.dialog(view, "Isabelle", GUI.scrollable_text(Exn.message(exn)))
   160     pack()
   160     pack()
   161     setLocationRelativeTo(view)
   161     setLocationRelativeTo(view)
   162     setVisible(true)
   162     setVisible(true)
   163 
   163 
   164     Standard_Thread.fork("session_build") {
   164     Standard_Thread.fork("session_build") {
   165       progress.echo("Build started for Isabelle/" + Isabelle_Logic.session_name() + " ...")
   165       progress.echo("Build started for Isabelle/" + JEdit_Sessions.session_name() + " ...")
   166 
   166 
   167       val (out, rc) =
   167       val (out, rc) =
   168         try { ("", Isabelle_Logic.session_build(progress = progress)) }
   168         try { ("", JEdit_Sessions.session_build(progress = progress)) }
   169         catch {
   169         catch {
   170           case exn: Throwable =>
   170           case exn: Throwable =>
   171             (Output.error_text(Exn.message(exn)) + "\n", Exn.return_code(exn, 2))
   171             (Output.error_text(Exn.message(exn)) + "\n", Exn.return_code(exn, 2))
   172         }
   172         }
   173 
   173 
   174       progress.echo(out + (if (rc == 0) "OK\n" else "Return code: " + rc + "\n"))
   174       progress.echo(out + (if (rc == 0) "OK\n" else "Return code: " + rc + "\n"))
   175 
   175 
   176       if (rc == 0) Isabelle_Logic.session_start()
   176       if (rc == 0) JEdit_Sessions.session_start()
   177       else progress.echo("Session build failed -- prover process remains inactive!")
   177       else progress.echo("Session build failed -- prover process remains inactive!")
   178 
   178 
   179       return_code(rc)
   179       return_code(rc)
   180     }
   180     }
   181   }
   181   }