package Ġorg . apache . fin er act . ui . adapters Ċ Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . CheckBox Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġkotlinx . android . synt hetic . main . item _ pay roll _ allocation . view .* Ċ import Ġorg . apache . fin er act . R Ċ import Ġorg . apache . fin er act . data . models . pay roll . Pay roll Allocation Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠPay roll Allocation Adapter Ġ@ Inject Ġconstructor () ĊĠĠĠ Ġ: ĠRecyclerView . Adapter < Pay roll Allocation Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġlateinit Ġvar Ġpay roll Allocation : ĠList < Pay roll Allocation > ĊĠĠĠ Ġlateinit Ġvar ĠonClick Listener : ĠOnClick Edit Delete Listener ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . item _ pay roll _ allocation , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġ( account Number , Ġamount , Ġpro portional ) Ġ= Ġpay roll Allocation [ position ] ĊĠĠĠĠĠĠĠ Ġholder . tv Account . text Ġ= Ġaccount Number ĊĠĠĠĠĠĠĠ Ġholder . tv Amount . text Ġ= Ġamount . toString () ĊĠĠĠĠĠĠĠ Ġholder . cb Pro portional . isChecked Ġ= Ġpro portional ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpay roll Allocation . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Pay roll Alloc ations ( allocation : ĠList < Pay roll Allocation >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . pay roll Allocation Ġ= Ġallocation ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset OnClick Edit Delete Listener ( item ClickListener : ĠOnClick Edit Delete Listener ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . on ClickListener Ġ= Ġitem ClickListener ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġiv Edit : ĠImageView Ġ= ĠitemView . iv _ edit ĊĠĠĠĠĠĠĠ Ġval Ġiv Delete : ĠImageView Ġ= ĠitemView . iv _ delete ĊĠĠĠĠĠĠĠ Ġval Ġtv Account : ĠTextView Ġ= ĠitemView . tv _ account ĊĠĠĠĠĠĠĠ Ġval Ġtv Amount : ĠTextView Ġ= ĠitemView . tv _ amount ĊĠĠĠĠĠĠĠ Ġval Ġcb Pro portional : ĠCheckBox Ġ= ĠitemView . cb _ Pro portional ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġiv Edit . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Listener . onClick Edit ( pay roll Allocation [ adapter Position ], Ġadapter Position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġiv Delete . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Listener . onClick Delete ( pay roll Allocation [ adapter Position ], Ġadapter Position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠOnClick Edit Delete Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠonClick Edit ( pay roll Allocation : ĠPay roll Allocation , Ġposition : ĠInt ) ĊĠĠĠĠĠĠĠ Ġfun ĠonClick Delete ( pay roll Allocation : ĠPay roll Allocation , Ġposition : ĠInt ) ĊĠĠĠ Ġ} Ċ }