// ĠCopyright Ġ 2 0 0 0 - 2 0 2 0 Ġ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 Ġcom . intellij . openapi . wm Ċ Ċ import Ġcom . intellij . openapi . Disposable Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . openapi . ui . MessageType Ċ import Ġcom . intellij . openapi . ui . popup . Bal loon Ċ import Ġcom . intellij . openapi . ui . popup . Bal loon Builder Ċ import Ġcom . intellij . openapi . util . N ls Contexts Ċ import Ġorg . jetbrains . annotations . Api Status Ċ import Ġorg . jetbrains . annotations . Non N ls Ċ import Ġjava . util . function . Consumer Ċ import Ġjavax . swing . Icon Ċ import Ġjavax . swing . J Component Ċ import Ġjavax . swing . event . Hyper link Listener Ċ Ċ /** Ċ Ġ* ĠIf Ġyou Ġwant Ġto Ġregister Ġa Ġtool window , Ġwhich Ġwill Ġbe Ġenabled Ġduring Ġthe Ġd umb Ġmode , Ġplease Ġuse Ġ[ Tool WindowManager ]' s Ċ Ġ* Ġregistration Ġmethods Ġwhich Ġhave Ġ' can Work In D umb Mode ' Ġparameter . Ċ Ġ*/ Ċ abstract Ġclass ĠTool WindowManager Ġ{ ĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun ĠgetInstance ( project : ĠProject ): ĠTool WindowManager Ġ= Ġproject . getService ( Tool WindowManager :: class . java ) ĊĠ Ġ} ĊĊĠ Ġabstract Ġval Ġfocus Manager : ĠIde Focus Manager ĊĊĠ Ġabstract Ġfun Ġcan Show Notification ( tool Window Id : ĠString ): ĠBoolean ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , Ġcomponent : ĠJ Component , Ġanchor : ĠTool Window Anchor ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġcomponent Ġ= Ġcomponent , Ġanchor Ġ= Ġanchor , Ġcan Close Content Ġ= Ġfalse , Ġcan Work In D umb Mode Ġ= Ġfalse )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġ@ Api Status . Scheduled For Removal ( in Version Ġ= Ġ" 2 0 2 1 . 3 ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcomponent : ĠJ Component , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġanchor : ĠTool Window Anchor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" UNUSED _ PARAMETER ") Ġparent Disposable : ĠDis posable , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Work In D umb Mode : ĠBoolean ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġcomponent Ġ= Ġcomponent , Ġanchor Ġ= Ġanchor , Ġcan Work In D umb Mode Ġ= Ġcan Work In D umb Mode )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , Ġcan Close Content : ĠBoolean , Ġanchor : ĠTool Window Anchor ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġanchor Ġ= Ġanchor , Ġcan Close Content Ġ= Ġcan Close Content , Ġcan Work In D umb Mode Ġ= Ġfalse )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Close Content : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġanchor : ĠTool Window Anchor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecondary : ĠBoolean ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġanchor Ġ= Ġanchor , Ġside Tool Ġ= Ġsecondary , Ġcan Close Content Ġ= Ġcan Close Content , Ġcan Work In D umb Mode Ġ= Ġfalse )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Close Content : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġanchor : ĠTool Window Anchor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" UNUSED _ PARAMETER ") Ġparent Disposable : ĠDis posable , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Work In D umb Mode : ĠBoolean ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġanchor Ġ= Ġanchor , Ġcan Close Content Ġ= Ġcan Close Content , Ġcan Work In D umb Mode Ġ= Ġcan Work In D umb Mode )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Close Content : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġanchor : ĠTool Window Anchor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" UNUSED _ PARAMETER ") Ġparent Disposable : ĠDis posable , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Work In D umb Mode : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsecondary : ĠBoolean ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġanchor Ġ= Ġanchor , Ġside Tool Ġ= Ġsecondary , Ġcan Close Content Ġ= Ġcan Close Content , Ġcan Work In D umb Mode Ġ= Ġcan Work In D umb Mode )) ĊĠ Ġ} ĊĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġ@ Api Status . Scheduled For Removal ( in Version Ġ= Ġ" 2 0 2 1 . 3 ") ĊĠ Ġfun Ġregister Tool Window ( id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcan Close Content : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġanchor : ĠTool Window Anchor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" UNUSED _ PARAMETER ") Ġparent Disposable : ĠDis posable ): ĠTool Window Ġ{ ĊĠĠĠ Ġreturn Ġregister Tool Window ( Register Tool Window Task ( id Ġ= Ġid , Ġanchor Ġ= Ġanchor , Ġcan Close Content Ġ= Ġcan Close Content , Ġcan Work In D umb Mode Ġ= Ġfalse )) ĊĠ Ġ} ĊĊĠ Ġabstract Ġfun Ġregister Tool Window ( task : ĠRegister Tool Window Task ): ĠTool Window ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġdoes Ġnothing Ġif Ġtool Ġwindow Ġwith Ġspecified Ġisn 't Ġregistered . ĊĠĠ Ġ*/ ĊĠ Ġ@ Suppress (" Deprecated Callable Add Replace With ") ĊĠ Ġ@ Deprecated (" Use ĠTool Window Factory Ġand Ġtool Window Ġextension Ġpoint ") ĊĠ Ġabstract Ġfun Ġunregister Tool Window ( id : ĠString ) ĊĊĠ Ġabstract Ġfun Ġactivate Editor Component () ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġ@ return Ġ` true ` Ġif Ġand Ġonly Ġif Ġeditor Ġcomponent Ġis Ġactive . ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġval Ġis Editor Component Active : ĠBoolean ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġ@ return Ġarray Ġof Ġ` id ` s Ġof Ġall Ġregistered Ġtool Ġwindows . ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġval Ġtool Window Ids : ĠArray < String > ĊĊĠ Ġabstract Ġval Ġtool Window Id Set : ĠSet < String > ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġ@ return Ġ` ID ` Ġof Ġcurrently Ġactive Ġtool Ġwindow Ġor Ġ` null ` Ġif Ġthere Ġis Ġno Ġactive ĊĠĠ Ġ* Ġtool Ġwindow . ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġval Ġactive Tool Window Id : ĠString ? ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġ@ return Ġ` ID ` Ġof Ġtool Ġwindow Ġthat Ġwas Ġactivated Ġlast Ġtime . ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġval Ġlast Active Tool Window Id : ĠString ? ĊĊĠ Ġ/** ĊĠĠ Ġ* Ġ@ return Ġregistered Ġtool Ġwindow Ġwith Ġspecified Ġ` id `. ĠIf Ġthere Ġis Ġno Ġregistered ĊĠĠ Ġ* Ġtool Ġwindow Ġwith Ġspecified Ġ` id ` Ġthen Ġthe Ġmethod Ġreturns Ġ` null `. ĊĠĠ Ġ* Ġ@ see ĠTool Window Id ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġfun Ġget Tool Window (@ Non N ls Ġid : ĠString ?): ĠTool Window ? ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠPut s Ġspecified Ġrunnable Ġto Ġthe Ġtail Ġof Ġcurrent Ġcommand Ġqueue . ĊĠĠ Ġ*/ ĊĠ Ġabstract Ġfun Ġinvoke Later ( run nable : ĠRunnable ) ĊĊĠ Ġabstract Ġfun Ġnotify By Bal loon ( tool Window Id : ĠString , Ġtype : ĠMessageType , Ġ@ N ls Contexts . Notification Content Ġhtml Body : ĠString ) ĊĊĠ Ġfun Ġnotify By Bal loon ( tool Window Id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype : ĠMessageType , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ N ls Contexts . Popup Content Ġhtml Body : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġicon : ĠIcon ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener : ĠHyper link Listener ?) Ġ{ ĊĠĠĠ Ġnotify By Bal loon ( Tool Window Bal loon Show Options ( tool Window Id Ġ= Ġtool Window Id , Ġtype Ġ= Ġtype , Ġhtml Body Ġ= Ġhtml Body , Ġicon Ġ= Ġicon , Ġlistener Ġ= Ġlistener )) ĊĠ Ġ} ĊĊĠ Ġabstract Ġfun Ġnotify By Bal loon ( options : ĠTool Window Bal loon Show Options ) ĊĊĠ Ġabstract Ġfun Ġget Tool Window Bal loon ( id : ĠString ): ĠBal loon ? ĊĊĠ Ġabstract Ġfun Ġis Max im ized ( window : ĠTool Window ): ĠBoolean ĊĊĠ Ġabstract Ġfun Ġset Max im ized ( window : ĠTool Window , Ġmaxim ized : ĠBoolean ) ĊĊĠ Ġ/* ĊĠĠ Ġ* ĠReturns Ġvisual Ġrepresentation Ġof Ġtool Ġwindow Ġlocation ĊĠĠ Ġ* Ġ@ see ĠAll Icons . Actions # MoveTo Bottom Left Ġ... Ġcom . intellij . icons . All Icons . Actions # MoveTo Window Ġicon Ġset ĊĠĠ Ġ*/ ĊĠ Ġopen Ġfun Ġget Location Icon ( id : ĠString , Ġfallback Icon : ĠIcon ): ĠIcon Ġ= Ġfallback Icon Ċ Ċ } Ċ Ċ data Ġclass ĠTool Window Bal loon Show Options ( val Ġtool Window Id : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtype : ĠMessageType , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ N ls Contexts . Popup Content Ġval Ġhtml Body : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġicon : ĠIcon ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlistener : ĠHyper link Listener ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbal loon Customizer : ĠConsumer < Bal loon Builder >? Ġ= Ġnull )