src/Tools/jEdit/src/jedit/TheoryView.scala
changeset 34598 4f2d122c0a67
parent 34588 e8ac8794971f
parent 34597 a0c84b0edb9a
child 34603 83a37e3b8c9c
equal deleted inserted replaced
34588:e8ac8794971f 34598:4f2d122c0a67
   195     def from_current(pos: Int) = this.from_current(document.id, pos)
   195     def from_current(pos: Int) = this.from_current(document.id, pos)
   196     def to_current(pos: Int) = this.to_current(document.id, pos)
   196     def to_current(pos: Int) = this.to_current(document.id, pos)
   197     val saved_color = gfx.getColor
   197     val saved_color = gfx.getColor
   198 
   198 
   199     val metrics = text_area.getPainter.getFontMetrics
   199     val metrics = text_area.getPainter.getFontMetrics
       
   200 
       
   201     // encolor phase
   200     var e = document.find_command_at(from_current(start))
   202     var e = document.find_command_at(from_current(start))
   201     val commands = document.commands.dropWhile(_.stop(document) <= from_current(start)).
   203     while (e != null && e.start(document) < end) {
   202       takeWhile(c => to_current(c.start(document)) < end)
       
   203     // encolor phase
       
   204     for (e <- commands) {
       
   205       val begin = start max to_current(e.start(document))
   204       val begin = start max to_current(e.start(document))
   206       val finish = end - 1 min to_current(e.stop(document))
   205       val finish = end - 1 min to_current(e.stop(document))
   207       encolor(gfx, y, metrics.getHeight, begin, finish, TheoryView.choose_color(e), true)
   206       encolor(gfx, y, metrics.getHeight, begin, finish, TheoryView.choose_color(e), true)
       
   207       e = document.commands.next(e).getOrElse(null)
   208     }
   208     }
   209 
   209 
   210     gfx.setColor(saved_color)
   210     gfx.setColor(saved_color)
   211   }
   211   }
   212 
   212