package Ġio . horizontal systems . bank wallet . modules . transactions Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ import Ġandroidx . constraint layout . widget . Constraint Layout Ċ import Ġio . horizontal systems . bank wallet . R Ċ import Ġkotlinx . android . synt hetic . main . view _ transaction _ status . view .* ĊĊ Ċ open Ġclass ĠTransaction Status With Time View Ġ: ĠConstraint Layout Ġ{ ĊĊĠĠĠ Ġconstructor ( context : ĠContext ) Ġ: Ġsuper ( context ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinitialize Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet ) Ġ: Ġsuper ( context , Ġattrs ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinitialize Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet , Ġdef Style Attr : ĠInt ) Ġ: Ġsuper ( context , Ġattrs , Ġdef Style Attr ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinitialize Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinitialize Views () Ġ{ ĊĠĠĠĠĠĠĠ Ġinf late ( context , ĠR . layout . view _ transaction _ status , Ġthis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbind ( transaction Status : ĠTransaction Status , Ġtime : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġtx Time . text Ġ= Ġtime ĊĠĠĠĠĠĠĠ Ġtx Time . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ ĠprogressBar Wrapper . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġpending Icon . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġcompleted Icon . visibility Ġ= ĠView . GONE ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( transaction Status ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠTransaction Status . Completed Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcompleted Icon . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠTransaction Status . Processing Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠprogressBar Wrapper . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Progress ( transaction Status ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtx Time . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpending Icon . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠprogressBar Wrapper . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Progress () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġfill Progress ( transaction Status : ĠTransaction Status . Processing Ġ= ĠTransaction Status . Processing ( 0 . 0 )) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbars Ġ= ĠlistOf ( progress Bar 1 , ĠprogressBar 2 , ĠprogressBar 3 ) ĊĠĠĠĠĠĠĠ Ġval Ġfilled Bars Ġ= Ġbars . size Ġ* Ġtransaction Status . progress ĊĊĠĠĠĠĠĠĠ Ġbars . forEach Indexed Ġ{ Ġindex , Ġbar Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbar . setImage Resource ( if Ġ( filled Bars Ġ> Ġ 0 . 0 Ġ&& Ġindex Ġ< Ġfilled Bars ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . status _ progress _ bar _ grey _ small Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . status _ progress _ bar _ grey _ 2 0 _ small ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ