/* - Ċ Ġ* Ġ#% L Ċ Ġ* ĠSa alf eld Ġlab ĠJava FX Ġtools Ġand Ġextensions Ċ Ġ* Ġ%% Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 ĠPhil ipp ĠH ans lov sky , ĠSte phan ĠSa alf eld Ċ Ġ* Ġ%% Ċ Ġ* ĠRedistribution Ġand Ġuse Ġin Ġsource Ġand Ġbinary Ġforms , Ġwith Ġor Ġwithout Ċ Ġ* Ġmodification , Ġare Ġpermitted Ġprovided Ġthat Ġthe Ġfollowing Ġconditions Ġare Ġmet : Ċ Ġ* ĠĊ Ġ* Ġ 1 . ĠRedistributions Ġof Ġsource Ġcode Ġmust Ġretain Ġthe Ġabove Ġcopyright Ġnotice , Ċ Ġ* ĠĠĠ Ġthis Ġlist Ġof Ġconditions Ġand Ġthe Ġfollowing Ġdisclaimer . Ċ Ġ* Ġ 2 . ĠRedistributions Ġin Ġbinary Ġform Ġmust Ġreproduce Ġthe Ġabove Ġcopyright Ġnotice , Ċ Ġ* ĠĠĠ Ġthis Ġlist Ġof Ġconditions Ġand Ġthe Ġfollowing Ġdisclaimer Ġin Ġthe Ġdocumentation Ċ Ġ* ĠĠĠ Ġand / or Ġother Ġmaterials Ġprovided Ġwith Ġthe Ġdistribution . Ċ Ġ* ĠĊ Ġ* ĠTHIS ĠSOFTWARE ĠIS ĠPROVIDED ĠBY ĠTHE ĠCOPYRIGHT ĠHOLDERS ĠAND ĠCONTRIBUTORS Ġ" AS ĠIS " Ċ Ġ* ĠAND ĠANY ĠEXPRESS ĠOR ĠIMPLIED ĠWARRANTIES , ĠINCLUDING , ĠBUT ĠNOT ĠLIMITED ĠTO , ĠTHE Ċ Ġ* ĠIMPLIED ĠWARRANTIES ĠOF ĠMERCHANTABILITY ĠAND ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE Ċ Ġ* ĠARE ĠDISCLAIMED . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE ĠCOPYRIGHT ĠHOLDERS ĠOR ĠCONTRIBUTORS ĠBE Ċ Ġ* ĠLIABLE ĠFOR ĠANY ĠDIRECT , ĠINDIRECT , ĠINCIDENTAL , ĠSPECIAL , ĠEXEMPLARY , ĠOR Ċ Ġ* ĠCONSEQUENTIAL ĠDAMAGES Ġ( INCLUDING , ĠBUT ĠNOT ĠLIMITED ĠTO , ĠPROCUREMENT ĠOF Ċ Ġ* ĠSUBSTITUTE ĠGOODS ĠOR ĠSERVICES ; ĠLOSS ĠOF ĠUSE , ĠDATA , ĠOR ĠPROFITS ; ĠOR ĠBUSINESS Ċ Ġ* ĠINTERRUPTION ) ĠHOWEVER ĠCAUSED ĠAND ĠON ĠANY ĠTHEORY ĠOF ĠLIABILITY , ĠWHETHER ĠIN Ċ Ġ* ĠCONTRACT , ĠSTRICT ĠLIABILITY , ĠOR ĠTORT Ġ( INCLUDING ĠNEGLIGENCE ĠOR ĠOTHERWISE ) Ċ Ġ* ĠARISING ĠIN ĠANY ĠWAY ĠOUT ĠOF ĠTHE ĠUSE ĠOF ĠTHIS ĠSOFTWARE , ĠEVEN ĠIF ĠADVISED ĠOF ĠTHE Ċ Ġ* ĠPOSSIBILITY ĠOF ĠSUCH ĠDAMAGE . Ċ Ġ* Ġ# L % Ċ Ġ*/ Ċ package Ġorg . j anel ia . sa alf el dl ab . fx . ui Ċ Ċ import Ġjavafx . scene . Node Ċ import Ġjavafx . scene . control . Label Ċ import Ġjavafx . scene . control . Tooltip Ċ import Ġjavafx . scene . layout . H Box Ċ import Ġjavafx . scene . layout . Priority Ċ import Ġjavafx . scene . layout . Region Ċ Ċ class ĠNamed Node Ġprivate Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġname : ĠString , ĊĠĠĠĠĠĠĠ Ġname Width : ĠDouble , ĊĠĠĠĠĠĠĠ Ġgrow Nodes : ĠBoolean , ĊĠĠĠĠĠĠĠ Ġvar arg Ġnodes : ĠNode ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġname Ġ= ĠLabel ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. also Ġ{ Ġit . pref Width Ġ= Ġname Width Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. also Ġ{ Ġit . min Width Ġ= Ġname Width Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. also Ġ{ Ġit . maxWidth Ġ= Ġname Width Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġcontents Ġ= ĠH Box ( this . name ). also Ġ{ Ġit . children . addAll ( nodes ) Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( grow Nodes ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnodes . forEach Ġ{ Ġn Ġ-> ĠH Box . set H grow ( n , ĠPriority . ALWAYS ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Name ToolTip ( tooltip : ĠTooltip ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . name . tooltip Ġ= Ġtooltip ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġname It ( name : ĠString , Ġname Width : ĠDouble , Ġgrow Nodes : ĠBoolean , Ġvar arg Ġnodes : ĠNode ): ĠNode Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠNamed Node ( name , Ġname Width , Ġgrow Nodes , Ġ* nodes ). contents ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġbuffer Node ( n : ĠNode Ġ= ĠRegion (). also Ġ{ Ġit . min Width Ġ= Ġ 0 . 0 Ġ}) Ġ= Ġn . also Ġ{ ĠH Box . set H grow ( it , ĠPriority . ALWAYS ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ