package Ġutilities . adapters . setup . applications Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . view . input method . Input Method Manager Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . esp . library . R Ċ import Ġcom . esp . library . utilities . common . Shared Ċ import Ġcom . esp . library . ex ceed erse sp . Base Activity Ċ import Ġutilities . data . applic ants . add application . Look Up DAO Ċ import Ġutilities . data . applic ants . dynamics . Dynamic Form Section Field DAO ĊĊĊĊ Ċ class ĠLook Up Adapter ( val Ġall Fields : ĠList < Look Up DAO >, Ġcon : ĠBase Activity , Ġsearch : ĠString , Ġinternal Ġvar Ġfield DAO : ĠDynamic Form Section Field DAO ?) Ġ: Ġandroidx . recyclerview . widget . RecyclerView . Adapter < Look Up Adapter . ViewHolder >() Ġ{ ĊĠĠĠ Ġinternal Ġvar Ġimm : ĠInput Method Manager ? Ġ= Ġnull ĊĠĠĠ Ġinternal Ġvar Ġsearch _ text Ġ= Ġ"" ĊĠĠĠ Ġprivate Ġvar Ġcontext : ĠBase Activity ĊĠĠĠ Ġinner Ġclass ĠViewHolder ( item View : ĠView ) Ġ: Ġandroidx . recyclerview . widget . RecyclerView . ViewHolder ( item View ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġlookup _ row : ĠLinearLayout ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġlookup _ name : ĠTextView ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġcross _ icon : ĠImageView ĊĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlookup _ name Ġ= ĠitemView . findViewById ( R . id . lookup _ name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlookup _ row Ġ= ĠitemView . findViewById ( R . id . lookup _ row ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcross _ icon Ġ= ĠitemView . findViewById ( R . id . cross _ icon ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcon ĊĠĠĠĠĠĠĠ Ġsearch _ text Ġ= Ġsearch ĊĠĠĠĠĠĠĠ Ġimm Ġ= Ġcontext . getSystem Service ( Context . INPUT _ METHOD _ SERVICE ) Ġas ĠInput Method Manager ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . repe ater _ lookup _ choose , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĊĊĠĠĠĠĠĠĠ Ġif Ġ( all Fields . size Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( search _ text . length Ġ> Ġ 0 ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . text Ġ= ĠShared . getInstance (). get Se ar ched Text Highlight ( search _ text , Ġall Fields [ position ]. name ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . text Ġ= Ġall Fields [ position ]. name ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( field DAO Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( field DAO !!. value Ġ!= Ġnull Ġ&& Ġfield DAO !!. value !!. length Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( field DAO !!. lookup Value !!. toLowerCase () Ġ== Ġall Fields [ position ]. name !!. toLowerCase ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . cross _ icon . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . setTextColor ( Context Compat . getColor ( context , ĠR . color . green )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . cross _ icon . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . setTextColor ( Context Compat . getColor ( context , ĠR . color . dark _ grey )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . cross _ icon . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . setTextColor ( Context Compat . getColor ( context , ĠR . color . dark _ grey )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . cross _ icon . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . lookup _ name . setTextColor ( Context Compat . getColor ( context , ĠR . color . dark _ grey )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġholder . lookup _ row . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// selected ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġb nd Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġb nd . put Serializable ( Dynamic Form Section Field DAO . B UNDLE _ KEY , Ġfield DAO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġb nd . put Serializable ( Look Up DAO . B UNDLE _ KEY , Ġall Fields [ position ]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . put Extras ( bnd ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . set Result ( Activity . RESULT _ OK , Ġintent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . finish () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ}// End ĠH older ĠClass ĊĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġall Fields . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Id ( position : ĠInt ): ĠLong Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . getItem Id ( position ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ViewType ( position : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . getItem ViewType ( position ) ĊĠĠĠ Ġ} ĊĊĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠLOG _ TAG Ġ= Ġ" Look Up Adapter " ĊĊĠĠĠ Ġ} Ċ Ċ } Ċ