package Ġde . rol and _ ill ig . guess words Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ Ċ class ĠEdit Cards Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġcards : ĠList < Card >? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcards Adapter : ĠC ards Adapter ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ edit _ cards ) ĊĊĠĠĠĠĠĠĠ Ġcards Adapter Ġ= ĠC ards Adapter () ĊĊĠĠĠĠĠĠĠ Ġval Ġrv Ġ= ĠfindViewById < RecyclerView >( R . id . cards _ list ) ĊĠĠĠĠĠĠĠ Ġrv . adapter Ġ= Ġcards Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġcards Ġ= Ġwith Repo ( this ) Ġ{ Ġit . load All () Ġ} ĊĠĠĠĠĠĠĠ Ġcards Adapter . notify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġcards Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnew Card Clicked ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠEdit Card Activity :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠC ards Adapter Ġ: ĠRecyclerView . Adapter < Row Holder >() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRow Holder ( layout Inflater . inflate ( R . layout . row _ edit _ cards _ card , Ġparent , Ġfalse )) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġcards ?. size Ġ?: Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠRow Holder , Ġposition : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . bind Model ( cards ! ![ position ], Ġposition ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠRow Holder ( private Ġval Ġrow : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( row ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlabel Ġ= Ġrow . findViewById < TextView >( R . id . row _ edit _ cards _ label ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind Model ( card : ĠCard , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlabel . text Ġ= Ġcard . term ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrow . set BackgroundColor ( rain bow Color ( position )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrow . setOnClickListener (:: click ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġclick ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this @ Edit Cards Activity , ĠEdit Card Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra (" uuid ", Ġcards ! ![ adapter Position ]. uuid ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġrain bow Color ( position : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġhue Ġ= Ġ(( position Ġ* Ġ 2 3 ). and ( 0 x 7 FFF _ FFFF ) Ġ% Ġ 3 6 0 ). toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġh sv Ġ= ĠarrayOf ( hue , Ġ 1 . 0 f , Ġ 1 . 0 f ). toFloat Array () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠColor . H SV To Color ( 0 x 4 0 , Ġh sv ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ