package Ġcom . rom 4 ek . cur ven av view Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . drawable . Color Drawable Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . util . Typed Value Ċ Ċ class ĠCurve View Settings ( context : ĠContext , Ġattrs : ĠAttributeSet ?) Ġ{ ĊĠĠĠ Ġvar Ġis Crop Inside Ġ= Ġtrue ĊĠĠĠ Ġval Ġarc Width : ĠFloat ĊĠĠĠ Ġvar Ġelevation : ĠFloat Ġ= Ġ 0 . toFloat () ĊĠĠĠ Ġvar Ġfont Asset Src : String ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġbackground Drawable : ĠDrawable ? Ġ= ĠColor Drawable ( Color . WHITE ) Ġ// default Ġbackground Ġcolor Ġof Ġnavigation Ġview ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstyled Attributes Ġ= Ġcontext . obtain Styled Attributes ( attrs , ĠR . style able . Arc Drawer , Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġarc Width Ġ= Ġstyled Attributes . get Dimension ( R . style able . Arc Drawer _ curve Width , Ġdp To Px ( context , Ġ 1 0 )) ĊĊĠĠĠĠĠĠĠ Ġval Ġcrop Direction Ġ= Ġstyled Attributes . getInt ( R . style able . Arc Drawer _ curve Crop Direction , ĠC ROP _ INS IDE ) ĊĠĠĠĠĠĠĠ Ġis Crop Inside Ġ= Ġcrop Direction Ġ== ĠC ROP _ INS IDE ĊĊĠĠĠĠĠĠĠ Ġval Ġattrs Array Ġ= Ġint ArrayOf ( android . R . attr . background , Ġandroid . R . attr . layout _ gravity ) ĊĊĠĠĠĠĠĠĠ Ġval Ġandroid Attrs Ġ= Ġcontext . obtain Styled Attributes ( attrs , Ġattrs Array ) ĊĠĠĠĠĠĠĠ Ġbackground Drawable Ġ= Ġandroid Attrs . get Drawable ( 0 ) ĊĊĠĠĠĠĠĠĠ Ġfont Asset Src Ġ= Ġstyled Attributes . getString ( R . style able . Arc Drawer _ font Asset Src ) ĊĊĠĠĠĠĠĠĠ Ġandroid Attrs . recycle () ĊĠĠĠĠĠĠĠ Ġstyled Attributes . recycle () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠC ROP _ INS IDE Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġval ĠC ROP _ OUT SIDE Ġ= Ġ 1 ĊĊĠĠĠĠĠĠĠ Ġfun Ġdp To Px ( context : ĠContext , Ġdp : ĠInt ): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġr Ġ= Ġcontext . resources ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠTyped Value . apply Dimension ( Typed Value . COMPLEX _ UNIT _ DIP , Ġdp . toFloat (), Ġr . display Metrics ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }