src/Tools/jEdit/src/proofdocument/session.scala
changeset 34824 ac35eee85f5c
parent 34823 2f3ea37c5958
child 34825 7f72547f9b12
equal deleted inserted replaced
34823:2f3ea37c5958 34824:ac35eee85f5c
    78 
    78 
    79     /* document changes */
    79     /* document changes */
    80 
    80 
    81     def handle_change(change: Change)
    81     def handle_change(change: Change)
    82     {
    82     {
    83       val old = document(change.parent.get.id).get
    83       require(change.parent.isDefined)
    84       val (doc, changes) = old.text_changed(this, change)
    84 
    85 
    85       val (doc, changes) = change.result()  // FIXME clarify future vs. actor arrangement
    86       val id_changes = changes map {
    86       val id_changes = changes map {
    87         case (c1, c2) =>
    87         case (c1, c2) =>
    88           (c1.map(_.id).getOrElse(""),
    88           (c1.map(_.id).getOrElse(""),
    89            c2 match {
    89            c2 match {
    90               case None => None
    90               case None => None
    93                 prover.define_command(command.id, system.symbols.encode(command.content))
    93                 prover.define_command(command.id, system.symbols.encode(command.content))
    94                 Some(command.id)
    94                 Some(command.id)
    95             })
    95             })
    96       }
    96       }
    97       register(doc)
    97       register(doc)
    98       documents += (doc.id -> doc)
    98       documents += (doc.id -> doc)  // FIXME remove
    99       prover.edit_document(old.id, doc.id, id_changes)
    99       prover.edit_document(change.parent.get.document.id, doc.id, id_changes)
   100 
   100 
   101       document_change.event(doc)
   101       document_change.event(doc)
   102     }
   102     }
   103 
   103 
   104 
   104 
   219   }
   219   }
   220 
   220 
   221 
   221 
   222   /* main methods */
   222   /* main methods */
   223 
   223 
       
   224   // FIXME private?
   224   def register_entity(entity: Session.Entity) { session_actor !? Register(entity) }
   225   def register_entity(entity: Session.Entity) { session_actor !? Register(entity) }
   225 
   226 
   226   def start(timeout: Int, args: List[String]): Option[String] =
   227   def start(timeout: Int, args: List[String]): Option[String] =
   227     (session_actor !? Start(timeout, args)).asInstanceOf[Option[String]]
   228     (session_actor !? Start(timeout, args)).asInstanceOf[Option[String]]
   228 
   229