package Ġcom . github . mv ys ny . k ari bud sl . v 8 Ċ Ċ import Ġcom . vaadin . data . Selection Model Ċ import Ġcom . vaadin . data . provider . DataProvider Ċ import Ġcom . vaadin . data . provider . Hierarchical DataProvider Ċ import Ġcom . vaadin . event . selection . Selection Event Ċ import Ġcom . vaadin . shared . util . Shared Util Ċ import Ġcom . vaadin . ui . Grid Ċ import Ġcom . vaadin . ui . Grid . Column Ċ import Ġcom . vaadin . ui . Has Components Ċ import Ġcom . vaadin . ui . Tree Grid Ċ import Ġcom . vaadin . ui . components . grid . Footer Cell Ċ import Ġcom . vaadin . ui . components . grid . Footer Row Ċ import Ġcom . vaadin . ui . components . grid . Header Cell Ċ import Ġcom . vaadin . ui . components . grid . Header Row Ċ import Ġcom . vaadin . ui . render ers . Text Renderer Ċ import Ġelement al . json . Json Ċ import Ġelement al . json . JsonValue Ċ import Ġkotlin . reflect . K Class Ċ import Ġkotlin . reflect . K Property 1 Ċ Ċ /** Ċ Ġ* ĠCreates Ġa Ġgrid . Ċ Ġ* Ġ@ param Ġitem Class Ġhost Ġitems Ġof Ġthis Ġclass . ĠIf Ġnot Ġnull , Ġcolumns Ġare Ġcreated Ġautomatically Ġfor Ġthis Ġclass . ĠThis Ġis Ġnot Ġrecommended : Ċ Ġ* Ġhttps :// github . com / mv ys ny / k ari bu - dsl / issues / 4 Ċ Ġ*/ Ċ @ V aad in Dsl Ċ public Ġfun Ġ< T : ĠAny > Ġ(@ V aad in Dsl ĠHas Components ). grid ( item Class : ĠK Class < T >? Ġ= Ġnull , Ġcaption : ĠString ? Ġ= Ġnull , Ġdata Provider : ĠData Provider < T , Ġ* >? Ġ= Ġnull , Ġblock : Ġ(@ V aad in Dsl ĠGrid < T >). () Ġ-> ĠUnit Ġ= Ġ{} ): ĠGrid < T > Ġ{ ĊĠĠĠ Ġval Ġgrid : ĠGrid < T > Ġ= Ġif Ġ( item Class Ġ== Ġnull ) ĠGrid () Ġelse ĠGrid < T >( item Class . java ) ĊĠĠĠ Ġgrid . caption Ġ= Ġcaption ĊĠĠĠ Ġif Ġ( dataProvider Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġgrid . dataProvider Ġ= Ġdata Provider ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġinit ( grid , Ġblock ) Ċ } Ċ Ċ /** Ċ Ġ* ĠCreates Ġa Ġtree Ġgrid . Ċ Ġ*/ Ċ @ V aad in Dsl Ċ public Ġfun Ġ< T Ġ: ĠAny ?> Ġ(@ V aad in Dsl ĠHas Components ). tree Grid ( dataProvider : ĠH ierarchical DataProvider < T , Ġ* >? Ġ= Ġnull , Ġblock : Ġ(@ V aad in Dsl ĠTree Grid < T >). () Ġ-> ĠUnit Ġ= Ġ{} ): ĠTree Grid < T > Ġ{ ĊĠĠĠ Ġval Ġgrid Ġ= ĠTree Grid < T >() ĊĠĠĠ Ġif Ġ( dataProvider Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġgrid . dataProvider Ġ= Ġdata Provider ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġinit ( grid , Ġblock ) Ċ } Ċ Ċ /** Ċ Ġ* ĠCause s Ġthe ĠGrid Ġto Ġonly Ġshow Ġgiven Ġset Ġof Ġcolumns , Ġand Ġin Ġgiven Ġorder . Ċ Ġ* Ġ@ param Ġids Ġshow Ġonly Ġthis Ġproperties . Ċ Ġ*/ Ċ public Ġfun Ġ< T > Ġ(@ V aad in Dsl ĠGrid < T >). show Columns ( var arg Ġids : ĠK Property 1 < T , Ġ* >) Ġ{ ĊĠĠĠ Ġset Columns (* ids . map Ġ{ Ġit . name Ġ}. to Typed Array ()) Ċ } Ċ Ċ /** Ċ Ġ* ĠAllows Ġyou Ġto Ġre - configure Ġa Ġparticular Ġcolumn Ġin Ġa ĠGrid . ĠE . g .: Ċ Ġ* Ġ``` Ċ Ġ* Ġgrid (...) Ġ{ Ċ Ġ* ĠĠ Ġshow Columns ( Person :: name , ĠPerson :: age ) Ċ Ġ* ĠĠ Ġcolumn ( Person :: age ) Ġ{ Ġis Sortable Ġ= Ġfalse Ġ} Ċ Ġ* Ġ} Ċ Ġ* Ġ``` Ċ Ġ* Ġ@ param Ġprop Ġthe Ġbean Ġproperty Ġfor Ġwhich Ġto Ġretrieve Ġthe Ġcolumn Ċ Ġ* Ġ@ param Ġblock Ġrun Ġthis Ġblock Ġwith Ġthe Ġcolumn Ġas Ġa Ġreceiver Ċ Ġ*/ Ċ @ Suppress (" UN CHECK ED _ CAST ") Ċ @ V aad in Dsl Ċ public Ġfun Ġ< T , ĠV > Ġ(@ V aad in Dsl ĠGrid < T >). column ( prop : ĠK Property 1 < T , ĠV >, Ġblock : Ġ(@ V aad in Dsl ĠGrid . Column < T , ĠV >). () Ġ-> ĠUnit Ġ= Ġ{} ): ĠGrid . Column < T , ĠV > Ġ= ĊĠĠĠĠĠĠĠ Ġget Column By ( prop ). apply Ġ{ Ġblock () Ġ} Ċ Ċ /** Ċ Ġ* ĠRemoves Ġcolumn Ġshowing Ġgiven Ġ[ property ]. Ċ Ġ*/ Ċ public Ġfun Ġ< T , ĠV > Ġ(@ V aad in Dsl ĠGrid < T >). remove Column ( property : ĠK Property 1 < T , ĠV >) Ġ{ ĊĠĠĠ Ġremove Column ( property . name ) Ċ } Ċ Ċ /** Ċ Ġ* ĠRef res hes Ġthe ĠGrid Ġand Ġre - pol ls Ġfor Ġdata . Ċ Ġ*/ Ċ public Ġfun Ġ(@ V aad in Dsl ĠGrid < *> ). refresh () Ġ{ ĊĠĠĠ Ġdata Provider . refresh All () Ċ } Ċ Ċ public Ġval ĠGrid <* >. is Multi Select : ĠBoolean Ġget () Ġ= Ġselection Model Ġis ĠSelection Model . Multi < *> Ċ public Ġval ĠGrid <* >. is Single Select : ĠBoolean Ġget () Ġ= Ġselection Model Ġis ĠSelection Model . Single < *> Ċ public Ġval ĠSelection Event <* >. is Selection Empty : ĠBoolean Ġget () Ġ= Ġ! first SelectedItem . isPresent Ċ Ċ /** Ċ Ġ* ĠAdds Ġa Ġnew Ġcolumn Ġfor Ġgiven Ġ[ property ] Ġwhich Ġis Ġby Ġdefault Ġsortable . ĠThe Ġ[ Grid . Column . setId ] Ċ Ġ* Ġis Ġset Ġto Ġproperty Ġname , Ġthe Ġcolumn Ġcaption Ġis Ġset Ġby Ġconverting Ġcamel Case Ġto ĠHuman ĠFriend ly . Ċ Ġ*/ Ċ public Ġfun Ġ< T , ĠV > Ġ(@ V aad in Dsl ĠGrid < T >). addColumn For ( property : ĠK Property 1 < T , ĠV >, Ġblock : Ġ(@ V aad in Dsl ĠGrid . Column < T , ĠV >). () Ġ-> ĠUnit Ġ= Ġ{} ): ĠGrid . Column < T , ĠV > Ġ{ ĊĠĠĠ Ġval Ġcolumn : ĠColumn < T , ĠV > Ġ= Ġadd Column ( property ) ĊĠĠĠ Ġcolumn . id Ġ= Ġproperty . name ĊĠĠĠ Ġcolumn . caption Ġ= ĠShared Util . property Id To Human Friendly ( property . name ) ĊĠĠĠ Ġcolumn . block () ĊĠĠĠ Ġreturn Ġcolumn Ċ } Ċ Ċ /** Ċ Ġ* ĠRetrieves Ġthe Ġcolumn Ġfor Ġgiven Ġ[ property ]; Ġit Ġmatches Ġthe Ġcolumn ĠID Ġto Ġ[ K Property 1 . name ]. Ċ Ġ* Ġ@ throws ĠIllegalArgumentException Ġif Ġno Ġsuch Ġcolumn Ġexists . Ċ Ġ*/ Ċ @ Suppress (" UN CHECK ED _ CAST ") Ċ public Ġfun Ġ< T , ĠV > ĠGrid < T >. getColumn By ( property : ĠK Property 1 < T , ĠV >): ĠGrid . Column < T , ĠV > Ġ= Ġget Column By ( property . name ) Ġas ĠGrid . Column < T , ĠV > Ċ Ċ /** Ċ Ġ* ĠRetrieves Ġthe Ġcolumn Ġfor Ġgiven Ġ[ column Id ]. Ċ Ġ* Ġ@ throws ĠIllegalArgumentException Ġif Ġno Ġsuch Ġcolumn Ġexists . Ċ Ġ*/ Ċ @ Suppress (" UN CHECK ED _ CAST ") Ċ public Ġfun Ġ< T > ĠGrid < T >. getColumn By ( column Id : ĠString ): ĠGrid . Column < T , Ġ*> Ġ= ĊĠĠĠĠĠĠĠ Ġget Column ( column Id ) Ġas ĠGrid . Column < T , Ġ* >? ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġthrow ĠIllegalArgumentException (" No Ġcolumn Ġwith ĠID Ġ$ column Id ; Ġavailable Ġcolumn ĠIDs : Ġ${ columns . map Ġ{ Ġit . id Ġ}. filter NotNull () }") Ċ Ċ public Ġenum Ġclass ĠV Align Ġ{ ĠLeft , ĠMiddle , ĠRight Ġ} Ċ Ċ /** Ċ Ġ* ĠAlign s Ġthe Ġtext Ġin Ġthe Ġcolumns , Ġby Ġusing Ġ[ Column . setStyle Generator ] Ġto Ġset Ġeither Ġ` v - align - center ` Ġor Ġ` v - align - right ` Ġstyle . Ċ Ġ*/ Ċ public Ġvar ĠGrid . Column < *, Ġ* >. align : ĠV Align ĊĠĠĠ Ġ@ Deprecated (" Cannot Ġread Ġthis Ġproperty ", Ġlevel Ġ= ĠDeprec ation Level . ERROR ) ĊĠĠĠ Ġget () Ġ= Ġthrow ĠUnsupportedOperationException (" Cannot Ġread Ġthis Ġproperty ") ĊĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV Align . Left Ġ-> Ġset Style Generator Ġ{ Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġthese Ġstyles Ġare Ġprovided Ġby Ġthe ĠV aad in ĠVal o Ġtheme Ġout - of - the - box , Ġno Ġneed Ġto Ġadd Ġthen Ġto Ġthe Ġapp 's Ġstylesheet ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV Align . Middle Ġ-> Ġset Style Generator Ġ{ Ġ" v - align - center " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV Align . Right Ġ-> Ġset Style Generator Ġ{ Ġ" v - align - right " Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ /** Ċ Ġ* ĠReturns Ġthe Ġcell Ġon Ġthis Ġrow Ġcorresponding Ġto Ġthe Ġgiven Ġproperty . Ċ Ġ* Ġ@ param Ġproperty Ġthe Ġid Ġof Ġthe Ġcolumn Ġwhose Ġheader Ġcell Ġto Ġget , Ġnot Ġnull Ċ Ġ* Ġ@ return Ġthe Ġheader Ġcell Ċ Ġ* Ġ@ throws ĠIllegalArgumentException Ġif Ġthere Ġis Ġno Ġsuch Ġcolumn Ġin Ġthe Ġgrid Ċ Ġ*/ Ċ public Ġfun ĠHeader Row . getCell ( property : ĠK Property 1 < *, Ġ* >): ĠHeader Cell Ġ= Ġget Cell ( property . name ) Ċ Ċ /** Ċ Ġ* ĠReturns Ġthe Ġcell Ġon Ġthis Ġrow Ġcorresponding Ġto Ġthe Ġgiven Ġproperty . Ċ Ġ* Ġ@ param Ġproperty Ġthe Ġid Ġof Ġthe Ġcolumn Ġwhose Ġfooter Ġcell Ġto Ġget , Ġnot Ġnull Ċ Ġ* Ġ@ return Ġthe Ġfooter Ġcell Ċ Ġ* Ġ@ throws ĠIllegalArgumentException Ġif Ġthere Ġis Ġno Ġsuch Ġcolumn Ġin Ġthe Ġgrid Ċ Ġ*/ Ċ public Ġfun ĠFooter Row . getCell ( property : ĠK Property 1 < *, Ġ* >): ĠFooter Cell Ġ= Ġget Cell ( property . name ) Ċ