// ĠCopyright Ġ 2 0 0 0 - 2 0 1 9 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . plugins . groovy . console Ċ Ċ import Ġcom . intellij . icons . All Icons Ċ import Ġcom . intellij . openapi . action System . An Action Ċ import Ġcom . intellij . openapi . action System . An ActionEvent Ċ import Ġcom . intellij . openapi . module . Module Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . vfs . Virtual File Ċ import Ġorg . jetbrains . plugins . groovy . Gro ovy Bundle . message Ċ import Ġorg . jetbrains . plugins . groovy . console . Gro ovy Console Util . getDisplay Gro ovy Version Ċ import Ġorg . jetbrains . plugins . groovy . console . Gro ovy Console Util . getTitle Ċ import Ġorg . jetbrains . plugins . groovy . util . create Select Module Popup Ċ Ċ class ĠGr Select Module Action ( ĊĠ Ġprivate Ġval Ġproject : ĠProject , ĊĠ Ġprivate Ġval Ġfile : ĠVirtual File Ċ ) Ġ: ĠAn Action ( message (" select . module . title "), Ġmessage (" select . module . description "), ĠAll Icons . Nodes . Module ) Ġ{ ĊĊĠ Ġprivate Ġval Ġconsole Service Ġby Ġlazy Ġ{ ĊĠĠĠ ĠGro ovy Console State Service . getInstance ( project ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġupdate ( e : ĠAn ActionEvent ) Ġ{ ĊĠĠĠ Ġval Ġmodule Ġ= Ġconsole Service . getSelected Module ( file ) ĊĠĠĠ Ġif Ġ( module Ġ== Ġnull Ġ|| Ġmodule . is Disposed ) Ġreturn ĊĠĠĠ Ġe . presentation . text Ġ= Ġget Title ( module ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġdisplay Text In Toolbar (): ĠBoolean Ġ= Ġtrue ĊĊĠ Ġoverride Ġfun ĠactionPerformed ( e : ĠAn ActionEvent ) Ġ{ ĊĠĠĠ Ġval Ġcomponent Ġ= Ġe . input Event ?. component Ġ?: Ġreturn ĊĠĠĠ Ġval Ġpopup Ġ= Ġcreate Select Module Popup ( project , Ġget Applicable Modules ( project ), Ġ:: getDisplay Gro ovy Version , Ġ:: module Selected ) ĊĠĠĠ Ġpopup . show Under ne ath Of ( component ) ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġmodule Selected ( module : ĠModule ) Ġ{ ĊĠĠĠ Ġif Ġ( console Service . getSelected Module ( file ) Ġ== Ġmodule ) Ġreturn ĊĠĠĠ ĠGro ovy Console . stop Console ( file ) ĊĠĠĠ Ġconsole Service . set File Module ( file , Ġmodule ) ĊĠ Ġ} Ċ } Ċ