package Ġcom . shiv am dev . sp end it . features . exp enses Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . support . v 7 . widget . Divider Item Decoration Ċ import Ġandroid . support . v 7 . widget . Linear LayoutManager Ċ import Ġcom . shiv am dev . sp end it . R Ċ import Ġcom . shiv am dev . sp end it . common . base . Base Fragment Ċ import Ġcom . shiv am dev . sp end it . common . constants . EXP ENSE Ċ import Ġcom . shiv am dev . sp end it . data . models . Expense Ċ import Ġcom . shiv am dev . sp end it . di . component . Fragment Component Ċ import Ġcom . shiv am dev . sp end it . ext s . hide Ċ import Ġcom . shiv am dev . sp end it . ext s . show Ċ import Ġcom . shiv am dev . sp end it . ext s . textColor Ċ import Ġcom . shiv am dev . sp end it . features . ad dex p ense . Add Show Expense Activity Ċ import Ġcom . shiv am dev . sp end it . features . exp enses . adapter . Exp enses Adapter Ċ import Ġkotlinx . android . synt hetic . main . fragment _ exp enses .* Ċ import Ġkotlinx . android . synt hetic . main . progress _ layout .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġsh iv am Ġon Ġ 0 2 / 0 2 / 1 8 . Ċ Ġ*/ Ċ class ĠExp enses Fragment Ġ: ĠBase Fragment < Exp enses Presenter >(), ĠExp enses View Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġadapter : ĠExp enses Adapter ĊĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsetup Radio Buttons () ĊĠĠĠĠĠĠĠ Ġsetup RecyclerView () ĊĠĠĠĠĠĠĠ Ġpresenter . get Exp enses Data () ĊĠĠĠĠĠĠĠ Ġpresenter . getUser L ent Balance () ĊĠĠĠĠĠĠĠ Ġsetup Expense ClickListener () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Radio Buttons () Ġ{ ĊĠĠĠĠĠĠĠ Ġrg Give Take . setOn Checked ChangeListener Ġ{ Ġ_, Ġchecked Id Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( checked Id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . rb L ent Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Balance . textColor ( R . color . green ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . getUser L ent Balance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . rb Borrow Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtv Balance . textColor ( R . color . red ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . getUser Borrow Balance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate User Balance ( balance : ĠInt , Ġnet Balance : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtv Balance . text Ġ= ĠgetString ( R . string . ru pe e _ amount _ int , Ġbalance ) ĊĠĠĠĠĠĠĠ Ġif Ġ( net Balance Ġ>= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Net Balance . textColor ( R . color . green ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Net Balance . textColor ( R . color . red ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtv Net Balance . text Ġ= ĠgetString ( R . string . ru pe e _ net _ balance _ int , ĠMath . abs (- net Balance )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup RecyclerView () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlayout Manager Ġ= ĠLinearLayoutManager ( activity ) ĊĠĠĠĠĠĠĠ Ġadapter Ġ= ĠExp enses Adapter () ĊĠĠĠĠĠĠĠ Ġrv Transactions . addItem Decoration ( Divider Item Decoration ( activity , ĠLinearLayoutManager . VERTICAL )) ĊĠĠĠĠĠĠĠ Ġrv Transactions . layout Manager Ġ= Ġlayout Manager ĊĠĠĠĠĠĠĠ Ġrv Transactions . adapter Ġ= Ġadapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate User Exp enses ( exp enses : ĠMutable List < Expense >) Ġ{ ĊĠĠĠĠĠĠĠ Ġrv Transactions . show () ĊĠĠĠĠĠĠĠ Ġtv No Exp enses . hide () ĊĠĠĠĠĠĠĠ Ġadapter . update User Exp enses ( exp enses ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow No Exp enses Message () Ġ{ ĊĠĠĠĠĠĠĠ Ġrv Transactions . hide () ĊĠĠĠĠĠĠĠ Ġtv No Exp enses . show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Expense ClickListener () Ġ{ ĊĠĠĠĠĠĠĠ Ġadapter . get Click Event () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ Ġexpense Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( activity , ĠAdd Show Expense Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( EXP ENSE , Ġexpense ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity ?. startActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Loader () Ġ{ ĊĠĠĠĠĠĠĠ ĠprogressBar . show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhide Loader () Ġ{ ĊĠĠĠĠĠĠĠ ĠprogressBar . hide () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġlayout : ĠInt Ġ= ĠR . layout . fragment _ exp enses ĊĊĠĠĠ Ġoverride Ġfun Ġinject ( fragment Component : ĠFragment Component ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Component . inject ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġattach View () Ġ{ ĊĠĠĠĠĠĠĠ Ġpresenter . attach View ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance () Ġ= ĠExp enses Fragment () ĊĠĠĠ Ġ} Ċ Ċ }