package Ġorg . jb . cce . highlighter Ċ Ċ import Ġcom . intellij . openapi . application . Application Manager Ċ import Ġcom . intellij . openapi . editor . Editor Ċ import Ġcom . intellij . openapi . editor . markup . Effect Type Ċ import Ġcom . intellij . openapi . editor . markup . Highlight er Layer Ċ import Ġcom . intellij . openapi . editor . markup . Highlight er Target Area Ċ import Ġcom . intellij . openapi . editor . markup . Text Attributes Ċ import Ġcom . intellij . openapi . file Editor . File Editor Manager Ċ import Ġcom . intellij . openapi . file Editor . Text Editor Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . util . Key Ċ import Ġorg . jb . cce . Report Colors . Companion . getColor Ċ import Ġorg . jb . cce . Session Ċ import Ġjava . awt . Font Ċ Ċ class ĠHighlight er ( private Ġval Ġproject : ĠProject ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlistener Key Ġ= ĠKey < Highlight ers ClickListener >(" org . jb . cce . highlighter . listener ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġlistener Ġ: ĠHighlight ers ClickListener ĊĊĠĠĠ Ġfun Ġhighlight ( sessions : ĠList < Session >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġ( File Editor Manager . getInstance ( project ). selected Editors [ 0 ] Ġas ĠText Editor ). editor ĊĠĠĠĠĠĠĠ Ġlistener Ġ= Ġeditor . getUser Data ( listener Key ) Ġ?: ĠHighlight ers ClickListener ( editor , Ġproject ) ĊĠĠĠĠĠĠĠ Ġeditor . add Editor Mouse Listener ( listener ) ĊĊĠĠĠĠĠĠĠ ĠApplication Manager . getApplication (). invoke Later Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . markup Model . removeAll Highlight ers () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . clear () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( session Ġin Ġsessions ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Highlight ( editor , Ġsession , Ġsession . offset , Ġsession . offset Ġ+ Ġsession . expected Text . length ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put UserData ( listener Key , Ġlistener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Highlight ( editor : ĠEditor , Ġsession : ĠSession , Ġbegin : ĠInt , Ġend : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcolor Ġ= Ġget Color ( session , ĠHighlight Colors , Ġsession . look ups . last Index ) ĊĠĠĠĠĠĠĠ Ġeditor . markup Model . add Range Highlight er ( begin , Ġend , ĠHighlight er Layer . LAST , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠText Attributes ( null , Ġcolor , Ġnull , ĠEffect Type . BOX ED , ĠFont . PLAIN ), ĠHighlight er Target Area . EX ACT _ RANGE ) ĊĠĠĠĠĠĠĠ Ġlistener . add Session ( session , Ġbegin , Ġend ) ĊĠĠĠ Ġ} Ċ } Ċ