src/Tools/Graphview/src/model.scala
changeset 49733 38a68e6593be
parent 49565 ea4308b7ef0f
child 49737 dd6fc7c9504a
equal deleted inserted replaced
49732:ad362eec19c3 49733:38a68e6593be
     8 
     8 
     9 
     9 
    10 import isabelle._
    10 import isabelle._
    11 import isabelle.graphview.Mutators._
    11 import isabelle.graphview.Mutators._
    12 import java.awt.Color
    12 import java.awt.Color
    13 import scala.actors.Actor
       
    14 import scala.actors.Actor._
       
    15 
    13 
    16 
    14 
    17 class Mutator_Container(val available: List[Mutator]) {
    15 class Mutator_Container(val available: List[Mutator]) {
    18     type Mutator_Markup = (Boolean, Color, Mutator)
    16     type Mutator_Markup = (Boolean, Color, Mutator)
    19     
    17     
    20     val events = new Event_Bus[Mutator_Event.Message]
    18     val events = new Mutator_Event.Bus
    21     
    19     
    22     private var _mutators : List[Mutator_Markup] = Nil
    20     private var _mutators : List[Mutator_Markup] = Nil
    23     def apply() = _mutators
    21     def apply() = _mutators
    24     def apply(mutators: List[Mutator_Markup]){
    22     def apply(mutators: List[Mutator_Markup]){
    25       _mutators = mutators
    23       _mutators = mutators
   101                 case (colors, k) => colors + (k -> color)
    99                 case (colors, k) => colors + (k -> color)
   102               })
   100               })
   103           }
   101           }
   104     })
   102     })
   105   }
   103   }
   106   Colors.events += actor {
   104   Colors.events += { case _ => build_colors() }
   107     loop {
       
   108       react {
       
   109         case _ => build_colors()
       
   110       }
       
   111     }
       
   112   }
       
   113 }
   105 }