package Ġcom . com mov . ui . note Ċ Ċ import Ġandroid . view . Menu Inflater Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Image Button Ċ import Ġandroid . widget . PopupMenu Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . com mov . R Ċ import Ġcom . com mov . data . note . Note Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* Ċ Ċ class ĠViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ){ ĊĠĠĠ Ġprivate Ġval Ġtitle Holder : ĠTextView Ġ= ĠitemView . findViewById < TextView >( R . id . title ) ĊĠĠĠ Ġprivate Ġval Ġdescription Holder : ĠTextView Ġ= ĠitemView . findViewById < TextView >( R . id . description ) ĊĠĠĠ Ġprivate Ġval Ġmenu Options : ĠImage Button Ġ= ĠitemView . findViewById ( R . id . options Card ) ĊĠĠĠ Ġprivate Ġval Ġdate Holder : ĠTextView Ġ= ĠitemView . findViewById ( R . id . note Date ) ĊĠĠĠ Ġ// Ġthis Ġcould Ġbe Ġan Ġanti Ġpattern , Ġdont Ġknow Ġthough ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġnote : ĠNote ĊĊĠĠĠ Ġlateinit Ġvar Ġm OnClick Delete : Ġ(( View ) Ġ-> ĠUnit ) ĊĠĠĠ Ġlateinit Ġvar Ġm OnClick Edit : Ġ(( View ) Ġ-> ĠUnit ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . menu Options . setOnClickListener { Ġview Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpopup : ĠPopup Menu Ġ= ĠPopup Menu ( view . context , Ġview ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinflater : ĠMenu Inflater Ġ= Ġpopup . menu Inflater ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinflater . inflate ( R . menu . card _ options , Ġpopup . menu ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpopup . setOn MenuItem ClickListener Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( item . itemId ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . edit Card Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm OnClick Edit . invoke ( view ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . remove Card Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm OnClick Delete . invoke ( view ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ setOn MenuItem ClickListener Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpopup . show () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate Content ( note : ĠNote ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . note Ġ= Ġnote ĊĠĠĠĠĠĠĠ Ġtitle Holder . text Ġ= Ġnote . title ĊĠĠĠĠĠĠĠ Ġdescription Holder . text Ġ= Ġnote . description ĊĠĠĠĠĠĠĠ Ġval Ġdate Formatter : ĠSimpleDateFormat Ġ= ĠSimpleDateFormat (" dd - MM - YYYY ", ĠLocale . GER MAN ) ĊĠĠĠĠĠĠĠ Ġdate Holder . text Ġ= Ġdate Formatter . format ( note . relevant At ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠonDelete Click Listen ( f : Ġ( View ) Ġ-> ĠUnit ){ ĊĠĠĠĠĠĠĠ Ġthis . m OnClick Delete Ġ= Ġf ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Edit Click Listen ( f : Ġ( View ) Ġ-> ĠUnit ){ ĊĠĠĠĠĠĠĠ Ġthis . m OnClick Edit Ġ= Ġf ĊĠĠĠ Ġ} Ċ }