package Ġbr . com . mont ec ardo . fin an se er Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . design . widget . Snackbar Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . util . Log Ċ import Ġbr . com . mont ec ardo . fin an se er . invest ment . Movement Dialog Fragment Ċ import Ġbr . com . mont ec ardo . fin an se er . invest ment . Movement Fragment Ċ import Ġbr . com . mont ec ardo . fin an se er . invest ment . data . Movement Ċ import Ġbr . com . mont ec ardo . fin an se er . persistence . Singleton DAO Ċ import Ġkotlinx . android . synt hetic . main . activity _ movement .* Ċ Ċ class ĠMovement Activity Ġ: ĠAppCompatActivity (), ĠMovement Dialog Fragment . Movement Dialog Listener Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmovement Fragment : ĠMovement Fragment ĊĊĠĠĠ Ġprivate Ġvar Ġinvestment Id : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ movement ) ĊĠĠĠĠĠĠĠ Ġinvestment Id Ġ= Ġintent ?. extras ?. getString ( IN VE ST MENT _ KEY ) ĊĊĠĠĠĠĠĠĠ Ġmov _ act _ fab _ add . setOnClickListener Ġ{ Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMovement Dialog Fragment . getInstance ( invest ment Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show ( support FragmentManager , ĠMovement Dialog Fragment :: class . simple Name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġmanage Fragment () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmanage Fragment () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtag Ġ= ĠMovement Fragment :: class . simple Name ĊĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= Ġsupport FragmentManager . find Fragment By Tag ( tag ) ĊĠĠĠĠĠĠĠ Ġwhen Ġ( fragment ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠMovement Fragment Ġ-> Ġmovement Fragment Ġ= Ġfragment ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmovement Fragment Ġ= ĠMovement Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add ( R . id . mov _ act _ list , Ġmovement Fragment , Ġtag ). commit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . make ( mov _ act _ root , Ġ" O corre u Ġum Ġerro Ġcar reg ando Ġcar reg ando Ġa Ġt ela .", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ SHORT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d ( java Class . simple Name , Ġ" O Ġfragment o Ġfal hou Ġem Ġser Ġcar reg ado .") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġmovement Fragment . arguments . putString ( Movement Fragment . IN VE ST MENT _ KEY , Ġinvestment Id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Restore InstanceState ( savedInstanceState : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Restore InstanceState ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġinvestment Id Ġ= ĠsavedInstanceState . getString ( IN VE ST MENT _ KEY ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Save InstanceState ( out State : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Save InstanceState ( out State ) ĊĠĠĠĠĠĠĠ Ġout State . putString ( IN VE ST MENT _ KEY , Ġinvestment Id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Dialog Positive Click ( mov : ĠMovement ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSingleton DAO . persist ( mov ) ĊĠĠĠĠĠĠĠ Ġmovement Fragment . refresh List () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Dialog Negative Click () Ġ{} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠIN VE ST MENT _ KEY Ġ= Ġ" invest ment - key " ĊĠĠĠ Ġ} Ċ } Ċ