package Ġnet . ve k ta h . code gl ance Ċ Ċ import Ġcom . intellij . openapi . components . Project Component Ċ import Ġcom . intellij . openapi . diagnostic . Logger Ċ import Ġcom . intellij . openapi . file Editor . File Editor Manager Listener Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġnet . ve k ta h . code gl ance . render . Task Runner Ċ Ċ class ĠCode Gl ance Plugin ( private Ġval Ġproject : ĠProject ) Ġ: ĠProject Component Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLogger . getInstance ( java Class ) ĊĠĠĠ Ġprivate Ġval Ġrunner Ġ= ĠTask Runner () ĊĠĠĠ Ġprivate Ġval Ġrunner Thread Ġ= ĠThread ( runner ) ĊĠĠĠ Ġprivate Ġval Ġinjector : ĠEditor Panel Injector ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinjector Ġ= ĠEditor Panel Injector ( project , Ġrunner ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Component () Ġ{ ĊĠĠĠĠĠĠĠ Ġrunner Thread . start () ĊĠĠĠĠĠĠĠ Ġproject . message Bus . connect (). subscribe ( File Editor Manager Listener . FILE _ EDITOR _ MANAGER , Ġinjector ) ĊĠĠĠĠĠĠĠ Ġlogger . debug (" Code Gl ance 2 Ġinitialized ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdispose Component () Ġ{ ĊĠĠĠĠĠĠĠ Ġrunner . stop () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Component Name (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Code Gl ance Plugin " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġproject Opened () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcalled Ġwhen Ġproject Ġis Ġopened ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġproject Closed () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcalled Ġwhen Ġproject Ġis Ġbeing Ġclosed ĊĠĠĠ Ġ} Ċ } Ċ