package Ġcom . ing resse . design . ui . button Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . Port er D uff Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . widget . Frame Layout Ċ import Ġandroid . widget . TextView Ċ import Ġcom . ing resse . design . R Ċ import Ġcom . ing resse . design . helper . Color Helper Ċ import Ġcom . ing resse . design . helper . Resources Helper Ċ import Ġcom . ing resse . design . helper . set In visible Ċ import Ġkotlinx . android . synt hetic . main . custom _ button _ item . view .* Ċ Ċ class ĠDS Button Item ( context : ĠContext , Ġattrs : ĠAttributeSet ) Ġ: ĠFrame Layout ( context , Ġattrs ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġitem : ĠTextView Ġget () Ġ= Ġtxt _ item ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinf late ( context , ĠR . layout . custom _ button _ item , Ġthis ) ĊĊĠĠĠĠĠĠĠ Ġval Ġprimary Color Ġ= ĠColor Helper ( context ). primary Color ĊĠĠĠĠĠĠĠ Ġval Ġicon Color Ġ= ĠColor . parse Color ( primary Color ) ĊĠĠĠĠĠĠĠ Ġval Ġdefault TextColor Ġ= ĠResources Helper ( context ). getColor Helper ( R . color . o il ) ĊĠĠĠĠĠĠĠ Ġval Ġarray Ġ= Ġcontext . theme . obtain Styled Attributes ( attrs , ĠR . style able . DS Button Item , Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġwith End Image Ġ= Ġarray . getBoolean ( R . style able . DS Button Item _ with End Icon , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġarray . getString ( R . style able . DS Button Item _ text ). or Empty () ĊĠĠĠĠĠĠĠ Ġval ĠtextColor Ġ= Ġarray . getColor ( R . style able . DS Button Item _ textColor , Ġdefault TextColor ) ĊĊĠĠĠĠĠĠĠ Ġimg _ end . set In visible (! with End Image ) ĊĠĠĠĠĠĠĠ Ġimg _ end . setColor Filter ( icon Color , ĠPort er D uff . Mode . SRC _ AT OP ) ĊĠĠĠĠĠĠĠ Ġitem . text Ġ= Ġtext ĊĠĠĠĠĠĠĠ Ġitem . setTextColor ( textColor ) ĊĠĠĠĠĠĠĠ Ġarray . recycle () ĊĠĠĠ Ġ} Ċ }