package Ġcom . so yle . stories . common . components . data Display . chip Ċ Ċ import Ġcom . so yle . stories . common . Color Styles Ċ import Ġcom . so yle . stories . common . View Builder Ċ import Ġcom . so yle . stories . common . components . Components Styles Ċ import Ġcom . so yle . stories . common . components . sur faces .* Ċ import Ġcom . so yle . stories . common . components . sur faces . Surface . Companion . as Surface Ċ import Ġjavafx . application . Platform Ċ import Ġjavafx . beans . property . ObjectProperty Ċ import Ġjavafx . beans . property . ObjectProperty Base Ċ import Ġjavafx . beans . property . Simple ObjectProperty Ċ import Ġjavafx . beans . value . Observable Value Ċ import Ġjavafx . css .* Ċ import Ġjavafx . event . ActionEvent Ċ import Ġjavafx . event . EventHandler Ċ import Ġjavafx . event . EventTarget Ċ import Ġjavafx . geometry . Pos Ċ import Ġjavafx . scene . Cursor Ċ import Ġjavafx . scene . Node Ċ import Ġjavafx . scene . control .* Ċ import Ġjavafx . scene . paint . Color Ċ import Ġjavafx . scene . shape . SVG Path Ċ import Ġjavafx . scene . text . Font Weight Ċ import Ġt orn ad of x .* Ċ import Ġt orn ad of x . Style sheet Ċ Ċ open Ġclass ĠCh ip Ġ: ĠButton Base () Ġ{ ĊĊĠĠĠ Ġval Ġnode : ĠNode Ġ= Ġthis ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġon Action Property (). onChange Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Chip . is Focus Tra versable Ġ= Ġit Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Class ( Styles . click able , Ġit Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġcolor Property : ĠObject Property < Color > Ġ= Ġobject Ġ: ĠStyle able ObjectProperty < Color >( Color . default ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Css MetaData (): ĠCss MetaData < out ĠStyle able , ĠColor > Ġ= ĠCOLOR ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Bean (): ĠAny Ġ= Ġthis @ Chip ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetName (): ĠString Ġ= Ġ" color " ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġcolor Property (): ĠObject Property < Color > Ġ= Ġcolor Property ĊĠĠĠ Ġvar Ġcolor : ĠColor Ġby Ġcolor Property () ĊĊĠĠĠ Ġprivate Ġval Ġvariant Property : ĠObject Property < Variant > Ġ= Ġobject Ġ: ĠStyle able ObjectProperty < Variant >( Variant . default ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Css MetaData (): ĠCss MetaData < out ĠStyle able , ĠVariant > Ġ= ĠVARI ANT ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Bean (): ĠAny Ġ= Ġthis @ Chip ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetName (): ĠString Ġ= Ġ" variant " ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinvalid ated () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . invalid ated () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġvariant Property (): ĠObject Property < Variant > Ġ= Ġvariant Property ĊĠĠĠ Ġvar Ġvariant : ĠVariant Ġby Ġvariant Property () ĊĊĠĠĠ Ġprivate Ġval ĠonDelete Property Ġ= ĠSimple ObjectProperty < EventHandler < ActionEvent >? >( null ) ĊĠĠĠ Ġfun ĠonDelete Property (): ĠObject Property < EventHandler < ActionEvent > ?> Ġ= ĠonDelete Property ĊĠĠĠ Ġvar ĠonDelete : ĠEventHandler < ActionEvent >? Ġby ĠonDelete Property () ĊĠĠĠ Ġfun ĠonDelete ( handler : ĠEventHandler < ActionEvent >) Ġ{ ĊĠĠĠĠĠĠĠ ĠonDelete Ġ= Ġhandler ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġdelete Graphic Property Ġ= Ġobject Ġ: ĠObject Property Base < Node ? >( ĊĠĠĠĠĠĠĠ ĠSVG Path (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" M 1 2 Ġ 2 C 6 . 4 7 Ġ 2 Ġ 2 Ġ 6 . 4 7 Ġ 2 Ġ 1 2 s 4 . 4 7 Ġ 1 0 Ġ 1 0 Ġ 1 0 Ġ 1 0 - 4 . 4 7 Ġ 1 0 - 1 0 S 1 7 . 5 3 Ġ 2 Ġ 1 2 Ġ 2 zm 5 Ġ 1 3 . 5 9 L 1 5 . 5 9 Ġ 1 7 Ġ 1 2 Ġ 1 3 . 4 1 Ġ 8 . 4 1 Ġ 1 7 Ġ 7 Ġ 1 5 . 5 9 Ġ 1 0 . 5 9 Ġ 1 2 Ġ 7 Ġ 8 . 4 1 Ġ 8 . 4 1 Ġ 7 Ġ 1 2 Ġ 1 0 . 5 9 Ġ 1 5 . 5 9 Ġ 7 Ġ 1 7 Ġ 8 . 4 1 Ġ 1 3 . 4 1 Ġ 1 2 Ġ 1 7 Ġ 1 5 . 5 9 z " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Bean (): ĠAny Ġ= Ġthis @ Chip ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetName (): ĠString Ġ= Ġ" delete Graphic " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdelete Graphic Property (): ĠObject Property < Node ?> Ġ= Ġdelete Graphic Property ĊĠĠĠ Ġvar Ġdelete Graphic : ĠNode ? Ġby Ġdelete Graphic Property () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġdelete Graphic ?. style Class ?. add ( Styles . chip Delete Icon . name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Initial Focus Tra versable (): ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġfun ĠgetUser Agent Style sheet (): ĠString Ġ= ĠStyles (). base 6 4 URL . to External Form () ĊĠĠĠ Ġoverride Ġfun Ġget Control Css MetaData (): ĠMutable List < Css MetaData < out ĠStyle able , Ġ* >> Ġ= ĠCh ip . Companion . css MetaData ĊĠĠĠ Ġoverride Ġfun Ġcreate Default Skin (): ĠSk in < *> Ġ= ĠCh ip Skin ( this ) ĊĠĠĠ Ġoverride Ġfun Ġfire () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! is Disabled ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfire Event ( ActionEvent ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Class ( Styles . chip ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠStyles Ġ: ĠStyles heet () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Ġby Ġcss class () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Root Ġby Ġcss class () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclick able Ġby Ġcss class () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Delete Icon Ġby Ġcss class () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠProperty Holder . chip Color : ĠCh ip . Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ= Ġproperties [ Chip . COLOR . property ]?. first Ġas ĠCh ip . Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties [ Chip . COLOR . property ] Ġ= Ġvalue Ġas ĠAny Ġto Ġproperties [ Chip . COLOR . property ]?. second ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar ĠProperty Holder . chip Variant : ĠCh ip . Variant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget () Ġ= Ġproperties [ Chip . VARIANT . property ]?. first Ġas ĠCh ip . Variant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties [ Chip . VARIANT . property ] Ġ= Ġvalue Ġas ĠAny Ġto Ġproperties [ Chip . VARIANT . property ]?. second ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Platform . is Fx Application Thread ()) Ġimport Style sheet < Styles >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġrun Later Ġ{ Ġimport Style sheet < Styles >() Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchip Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpref Height Ġ= Ġ 3 2 . px ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Radius Ġ+= Ġbox ( 1 0 0 . percent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderRadius Ġ= Ġmulti ( box ( 1 0 0 . percent )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= Ġjavafx . scene . paint . Color . gray Rgb ( 0 , Ġ 0 . 2 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= Ġjavafx . scene . paint . Color . gray Rgb ( 0 , Ġ 0 . 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnon Default Label Mixin Ġ= Ġmixin Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= ĠFontWeight . BOLD ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . filled ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderWidth Ġ= Ġmulti ( box ( 0 . px )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ non Default Label Mixin ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Fill Ġ= Ġjavafx . scene . paint . Color . WHITE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Delete Icon Colo red Mixin Ġ= Ġmixin Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= Ġjavafx . scene . paint . Color . WHITE . derive Color ( 1 . 0 , Ġ 1 . 0 , Ġ 1 . 0 , Ġ 0 . 7 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= Ġjavafx . scene . paint . Color . WHITE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . primary ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġmulti ( Color Styles . secondary Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġmulti ( Color Styles . secondary Color . bright er ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ chip Delete Icon Colo red Mixin ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . secondary ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġmulti ( Color Styles . primary Color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġmulti ( Color Styles . primary Color . bright er ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ chip Delete Icon Colo red Mixin ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . outlined ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġmulti ( java fx . scene . paint . Color . TRANSP ARENT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderWidth Ġ= Ġmulti ( box ( 1 . px )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderColor Ġ= Ġmulti ( box ( Color Styles . light Highlight Color )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . primary ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderColor Ġ= Ġmulti ( box ( Color Styles . secondary Color )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmulti ( com . so yle . stories . so yle stories . Styles . Pur ple . derive Color ( 1 . 0 , Ġ 1 . 0 , Ġ 1 . 0 , Ġ 0 . 1 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ non Default Label Mixin ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Fill Ġ= ĠColor Styles . secondary Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= ĠColor Styles . secondary Color . derive Color ( 1 . 0 , Ġ 1 . 0 , Ġ 1 . 0 , Ġ 0 . 7 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= ĠColor Styles . secondary Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( Components Styles . secondary ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderColor Ġ= Ġmulti ( box ( Color Styles . primary Color )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmulti ( Color Styles . primary Color . derive Color ( 1 . 0 , Ġ 1 . 0 , Ġ 1 . 0 , Ġ 0 . 1 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ non Default Label Mixin ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Fill Ġ= ĠColor Styles . primary Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= ĠColor Styles . primary Color . derive Color ( 1 . 0 , Ġ 1 . 0 , Ġ 1 . 0 , Ġ 0 . 7 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( hover ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= ĠColor Styles . primary Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Root Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġalignment Ġ= ĠPos . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġand ( click able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcursor Ġ= ĠCursor . HAND ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġbox ( 0 . px , Ġ 1 2 . px ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchip Delete Icon Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcursor Ġ= ĠCursor . HAND ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 . 5 . em ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpref Height Ġ= Ġ 2 2 . px ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpref Width Ġ= Ġ 2 2 . px ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġbox ( 0 . px , Ġ 6 . px , Ġ 0 . px , Ġ 0 . px ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġenum Ġclass ĠColor Ġ{ ĊĠĠĠĠĠĠĠ Ġdefault , Ġprimary , Ġsecondary ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġenum Ġclass ĠVariant Ġ{ ĊĠĠĠĠĠĠĠ Ġdefault , Ġoutlined ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCOLOR : ĠCss MetaData < Chip , ĠColor > Ġ= Ġobject Ġ: ĠCss MetaData < Chip , ĠColor >(" - fx - chip - color ", ĠStyle Converter . get Enum Converter ( Chip . Color :: class . java )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠisSet table ( style able : ĠCh ip ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstyle able ?. color Ġ== ĠColor . default Ġ|| Ġstyle able ?. color Property ?. is Bound Ġ!= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Style able Property ( style able : ĠCh ip ?): ĠStyle able Property < Color > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstyle able !!. color Property Ġas ĠStyle able Property < Color > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠVARI ANT : ĠCss MetaData < Chip , ĠVariant > Ġ= Ġobject Ġ: ĠCss MetaData < Chip , ĠVariant >(" - fx - chip - variant ", ĠStyle Converter . get Enum Converter ( Chip . Variant :: class . java )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠisSet table ( style able : ĠCh ip ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstyle able ?. variant Property ?. is Bound Ġ!= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Style able Property ( style able : ĠCh ip ?): ĠStyle able Property < Variant > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstyle able !!. variant Property Ġas ĠStyle able Property < Variant > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġcss MetaData : ĠMutable List < Css MetaData < out ĠStyle able , Ġ* >> Ġ= Ġmutable ListOf < Css MetaData < out ĠStyle able , Ġ* >> (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd All ( Button Base . getClass Css MetaData ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd All ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCOLOR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVARI ANT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ View Builder ĊĠĠĠĠĠĠĠ Ġfun ĠEvent Target . chip ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgraphic : ĠNode ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Action : ĠEventHandler < ActionEvent >? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonDelete : ĠEventHandler < ActionEvent >? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelete Graphic : ĠNode ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor : ĠColor ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvariant : ĠVariant ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġop : ĠCh ip . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠ Ġ): ĠCh ip Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Ġ= ĠCh ip (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . text Ġ= Ġtext ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . graphic Ġ= Ġgraphic ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . on Action Ġ= Ġon Action ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . onDelete Ġ= ĠonDelete ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delete Graphic Ġ!= Ġnull ) Ġit . delete Graphic Ġ= Ġdelete Graphic ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( color Ġ!= Ġnull ) Ġit . color Ġ= Ġcolor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( variant Ġ!= Ġnull ) Ġit . variant Ġ= Ġvariant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . op () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Child If Possible ( chip ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġchip ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ View Builder ĊĠĠĠĠĠĠĠ Ġfun ĠEvent Target . chip ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Property : ĠObservable Value < String >, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgraphic Property : ĠObservable Value < Node ?> ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Action Property : ĠObservable Value < EventHandler < ActionEvent > ?> ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonDelete Property : ĠObservable Value < EventHandler < ActionEvent > ?> ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelete Graphic Property : ĠObservable Value < Node ?> ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Property : ĠObservable Value < Color >? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvariant Property : ĠObservable Value < Variant >? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġop : ĠCh ip . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠ Ġ): ĠCh ip Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchip Ġ= ĠCh ip (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . text Property (). bind ( text Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( graphic Property Ġ!= Ġnull ) Ġit . graphic Property (). bind ( graphic Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( on Action Property Ġ!= Ġnull ) Ġit . on Action Property (). bind ( on Action Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( onDelete Property Ġ!= Ġnull ) Ġit . onDelete Property (). bind ( onDelete Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delete Graphic Property Ġ!= Ġnull ) Ġit . delete Graphic Property (). bind ( delete Graphic Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( color Property Ġ!= Ġnull ) Ġit . color Property (). bind ( color Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( variant Property Ġ!= Ġnull ) Ġit . variant Property (). bind ( variant Property ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . op () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Child If Possible ( chip ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġchip ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }