src/Tools/jEdit/src/document_model.scala
changeset 46740 852baa599351
parent 46739 6024353549ca
child 46748 8f3ae4d04a2d
equal deleted inserted replaced
46739:6024353549ca 46740:852baa599351
   109           last_perspective = new_perspective
   109           last_perspective = new_perspective
   110           session.edit_node(name, node_header(), new_perspective, edits)
   110           session.edit_node(name, node_header(), new_perspective, edits)
   111       }
   111       }
   112     }
   112     }
   113 
   113 
       
   114     private val delay_flush =
       
   115       Swing_Thread.delay_last(session.input_delay) { flush() }
       
   116 
       
   117     def +=(edit: Text.Edit)
       
   118     {
       
   119       Swing_Thread.require()
       
   120       pending += edit
       
   121       delay_flush(true)
       
   122     }
       
   123 
       
   124     def update_perspective()
       
   125     {
       
   126       pending_perspective = true
       
   127       delay_flush(true)
       
   128     }
       
   129 
   114     def init()
   130     def init()
   115     {
   131     {
   116       flush()
   132       flush()
   117       session.init_node(name, node_header(), perspective(), Isabelle.buffer_text(buffer))
   133       session.init_node(name, node_header(), perspective(), Isabelle.buffer_text(buffer))
   118     }
   134     }
   119 
   135 
   120     private val delay_flush =
   136     def exit()
   121       Swing_Thread.delay_last(session.input_delay) { flush() }
   137     {
   122 
   138       delay_flush(false)
   123     def +=(edit: Text.Edit)
   139       flush()
   124     {
       
   125       Swing_Thread.require()
       
   126       pending += edit
       
   127       delay_flush()
       
   128     }
       
   129 
       
   130     def update_perspective()
       
   131     {
       
   132       pending_perspective = true
       
   133       delay_flush()
       
   134     }
   140     }
   135   }
   141   }
   136 
   142 
   137   def update_perspective()
   143   def update_perspective()
   138   {
   144   {
   190     Token_Markup.refresh_buffer(buffer)
   196     Token_Markup.refresh_buffer(buffer)
   191   }
   197   }
   192 
   198 
   193   private def deactivate()
   199   private def deactivate()
   194   {
   200   {
   195     pending_edits.flush()
   201     pending_edits.exit()
   196     buffer.removeBufferListener(buffer_listener)
   202     buffer.removeBufferListener(buffer_listener)
   197     Token_Markup.refresh_buffer(buffer)
   203     Token_Markup.refresh_buffer(buffer)
   198   }
   204   }
   199 }
   205 }