package Ġcom . s yle im an . my foot prints . presentation Layer . activities . foot prints Gallery Ċ Ċ import Ġandroid . app . Activity Ċ Ċ import Ġcom . s yle im an . my foot prints . R Ċ import Ġcom . s yle im an . my foot prints . model Layer . dto . Footprint For Gallery Dto Ċ import Ġcom . s yle im an . my foot prints . presentation Layer . activities . create And Edit . edit Footprint Activity . Edit Footprint Activity Ċ import Ġcom . s yle im an . my foot prints . presentation Layer . activities . foot prints Gallery . result . Footprint s Gallery Activity Result Ċ Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠF oot prints Gallery Activity Presenter Ċ @ Inject Ċ constructor ( private Ġval Ġactivity Callbacks : ĠIF oot prints Gallery Activity Callbacks , Ġprivate Ġval Ġmodel : ĠF oot prints Gallery Activity Model ) Ġ: ĠIF oot prints Gallery Activity Presenter Pages Ċ { ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠInit Ġcollection ĊĠĠĠĠ Ġ* Ġ@ param Ġstart Footprint Id ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġinit ( start Footprint Id : ĠLong , Ġnormal SortOrder : ĠBoolean ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġmodel . init ( start Footprint Id , Ġnormal SortOrder ) Ġ{ Ġis Success , Ġcurrent Position Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . init Completed ( is Success , Ġcurrent Position ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGet Ġfoot print Ġdto Ġby Ġit 's Ġposition ĊĠĠĠĠ Ġ* Ġ@ param Ġposition Ġ( from Ġ 0 ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġget In Position ( position : ĠInt ): ĠF oot print For Gallery Dto Ġ= Ġmodel . getIn Position ( position ) ĊĊĠĠĠ Ġ/** ĠGet Ġtotal Ġpages Ġ Ġ*/ ĊĠĠĠ Ġoverride Ġval Ġtotal Pages : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmodel . total Pages ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDelete Ġfoot print ĊĠĠĠĠ Ġ* Ġ@ param Ġcurrent Item Index Ġindex Ġof Ġdeleted Ġfoot print ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġdelete Footprint ( currentItem Index : ĠInt ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġactivity Callbacks . show Query Dialog ( R . string . gallery _ activity _ delete _ query , ĠR . string . yes _ capitalize , ĠR . string . no _ capitalize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . show FullScreen Progress () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . delete Footprint ( currentItem Index ) Ġ{ Ġnew Page Index Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . hide FullScreen Progress () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( new Page Index Ġ== Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠFail ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . showMessage ( R . string . message _ box _ cant _ delete _ foot print ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġif Ġ( new Page Index Ġ== Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠNo Ġfoot prints ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . close () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . page Deleted ( new Page Index ) ĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSuccess ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠStart Ġfoot print Ġediting ĊĠĠĠĠ Ġ* Ġ@ param Ġcurrent Item Index Ġindex Ġof Ġdeleted Ġfoot print ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġstart Edit Footprint ( activity : ĠActivity , Ġcurrent Item Index : ĠInt ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfoot print Id Ġ= Ġmodel . getIn Position ( currentItem Index ). foot print Id ĊĠĠĠĠĠĠĠ ĠEdit Footprint Activity . start ( activity , Ġfoot print Id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠCalled Ġwhen Ġfoot print Ġediting Ġwas Ġcompleted Ġ Ġ*/ ĊĠĠĠ Ġfun Ġcomplete Edit Footprint ( result Code : ĠInt , Ġposition : ĠInt ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== ĠActivity . RESULT _ OK ) ĊĠĠĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . update After Edit ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . redraw After Update () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** Ġ Ġ*/ ĊĠĠĠ Ġval Ġactivity Result : ĠF oot prints Gallery Activity Result ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmodel . create Activity Result () ĊĊĠĠĠ Ġ/** ĠSent Ġfoot print Ġto Ġexternal Ġsystems Ġ Ġ*/ ĊĠĠĠ Ġfun Ġsend To External ( context : ĠActivity , Ġposition : ĠInt ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! model . send To External ( context , Ġposition )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity Callbacks . showMessage ( R . string . message _ box _ cant _ send _ foot print ) ĊĠĠĠ Ġ} Ċ }