src/Tools/VSCode/src/preview_panel.scala
changeset 75393 87ebf5a50283
parent 74770 32c2587cda4f
child 75394 42267c650205
equal deleted inserted replaced
75388:b3ca4a6ed74b 75393:87ebf5a50283
    10 import isabelle._
    10 import isabelle._
    11 
    11 
    12 import java.io.{File => JFile}
    12 import java.io.{File => JFile}
    13 
    13 
    14 
    14 
    15 class Preview_Panel(resources: VSCode_Resources)
    15 class Preview_Panel(resources: VSCode_Resources) {
    16 {
       
    17   private val pending = Synchronized(Map.empty[JFile, Int])
    16   private val pending = Synchronized(Map.empty[JFile, Int])
    18 
    17 
    19   def request(file: JFile, column: Int): Unit =
    18   def request(file: JFile, column: Int): Unit =
    20     pending.change(map => map + (file -> column))
    19     pending.change(map => map + (file -> column))
    21 
    20 
    22   def flush(channel: Channel): Boolean =
    21   def flush(channel: Channel): Boolean = {
    23   {
    22     pending.change_result(map => {
    24     pending.change_result(map =>
       
    25     {
       
    26       val map1 =
    23       val map1 =
    27         map.iterator.foldLeft(map) {
    24         map.iterator.foldLeft(map) {
    28           case (m, (file, column)) =>
    25           case (m, (file, column)) =>
    29             resources.get_model(file) match {
    26             resources.get_model(file) match {
    30               case Some(model) =>
    27               case Some(model) =>