// Ġ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 Ġcom . intellij . openapi . wm . impl . custom Frame Decor ations . header Ċ Ċ import Ġjava . awt . Border Layout Ċ import Ġjava . awt . Container Ċ import Ġjava . awt . Window Ċ import Ġjavax . swing .* Ċ Ċ class ĠCustom Frame Dialog Content Ġprivate Ġconstructor ( val Ġwindow : ĠWindow , Ġval Ġheader : ĠCustom Header , Ġcontent : ĠContainer ): ĠJPanel () Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġget Custom Content Holder ( window : ĠWindow , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent : ĠJ Component ): ĠJ Component Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠCustom Frame Dialog Content ( window , ĠCustom Header . create ( window ), Ġcontent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġget Custom Content Holder ( window : ĠWindow , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent : ĠJ Component , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheader : ĠCustom Header ): ĠJ Component Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcheck Content ( window , Ġcontent ) Ġ?: Ġreturn Ġcontent ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠCustom Frame Dialog Content ( window , Ġheader , Ġcontent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġcheck Content ( window : ĠWindow , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent : ĠJ Component ): ĠJ Component ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( content Ġis ĠCustom Frame Dialog Content ) Ġreturn Ġnull ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( window ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJ Window Ġ-> Ġwindow . root Pane ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJ Dialog Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( window . is Un decor ated ) Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġwindow . root Pane ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJ Frame Ġ-> Ġwindow . root Pane ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġlayout Ġ= ĠBorderLayout () ĊĠĠĠĠĠĠĠ Ġadd ( header , ĠBorderLayout . NORTH ) ĊĠĠĠĠĠĠĠ Ġadd ( content , ĠBorderLayout . CENTER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate Layout () Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( window Ġis ĠJ Dialog Ġ&& Ġwindow . is Un decor ated ) Ġheader . isVisible Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġheader Height : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif ( header . isVisible ) Ġheader . preferred Size . height Ġelse Ġ 0 Ċ } Ċ