package Ġcom . dd ie hl . rg sc . dd re xt reme Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . InputType Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . Switch Ċ import Ġbutter knife . bind View Ċ import Ġcom . dd ie hl . rg sc . R Ċ import Ġcom . dd ie hl . rg sc . Score Presenter Ċ import Ġcom . dd ie hl . rg sc . Score View Fragment Ċ import Ġcom . dd ie hl . rg sc . data . Score Ċ Ċ class ĠD DR Ex View Ġ: ĠScore View Fragment () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġ_ mar velo uses : ĠEditText Ġby Ġbind View ( R . id . dd rex _ mar velo uses ) ĊĠĠĠ Ġprivate Ġval Ġ_ perfect s : ĠEditText Ġby Ġbind View ( R . id . dd rex _ perfect s ) ĊĠĠĠ Ġprivate Ġval Ġ_ gre ats : ĠEditText Ġby Ġbind View ( R . id . dd rex _ gre ats ) ĊĠĠĠ Ġprivate Ġval Ġ_ goods : ĠEditText Ġby Ġbind View ( R . id . dd rex _ goods ) ĊĠĠĠ Ġprivate Ġval Ġ_ bo os : ĠEditText Ġby Ġbind View ( R . id . dd rex _ bo os ) ĊĠĠĠ Ġprivate Ġval Ġ_ mis ses : ĠEditText Ġby Ġbind View ( R . id . dd rex _ mis ses ) ĊĠĠĠ Ġprivate Ġval Ġ_ holds : ĠEditText Ġby Ġbind View ( R . id . dd rex _ holds ) ĊĠĠĠ Ġprivate Ġval Ġ_ total Hold s : ĠEditText Ġby Ġbind View ( R . id . dd rex _ total _ holds ) ĊĠĠĠ Ġprivate Ġval Ġ_ mar velo us Switch : ĠSwitch Ġby Ġbind View ( R . id . dd rex _ mar velo us _ switch ) ĊĊĠĠĠ Ġvar Ġmar velo uses : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ mar velo uses ) ĊĠĠĠ Ġvar Ġperfect s : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ perfect s ) ĊĠĠĠ Ġvar Ġgre ats : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ gre ats ) ĊĠĠĠ Ġvar Ġgoods : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ goods ) ĊĠĠĠ Ġvar Ġbo os : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ bo os ) ĊĠĠĠ Ġvar Ġmis ses : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ mis ses ) ĊĠĠĠ Ġvar Ġholds : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ holds ) ĊĠĠĠ Ġvar Ġtotal Hold s : ĠInt Ġ= Ġ 0 ; Ġget () Ġ= Ġget Input From (_ total Hold s ) ĊĠĠĠ Ġvar Ġmar velo us Enabled : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ_ mar velo us Switch . isChecked ĊĠĠĠĠĠĠĠ Ġset ( enabled ) Ġ{ Ġ_ mar velo us Switch . isChecked Ġ= Ġenabled Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġcalculator Layout Res Id : ĠInt Ġ= ĠR . layout . calculator _ dd rex ĊĊĠĠĠ Ġoverride Ġfun Ġget Presenter (): ĠScore Presenter Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠD DR Ex Presenter ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView ?, ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġ_ mar velo us Switch . setOn Checked ChangeListener ({ Ġcompound Button , Ġchecked Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmar velo us Enabled Ġ= Ġchecked ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ mar velo uses . is Focus able Ġ= Ġchecked ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ mar velo uses . is Focus able In Touch Mode Ġ= Ġchecked ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( checked ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠEnable Ġmar velo us Ġfield ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ mar velo uses . input Type Ġ= ĠInput Type . TYPE _ CLASS _ NUMBER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSet Ġnext Ġfocus Ġtarget Ġfor Ġtotal Ġholds Ġfield ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ total Hold s . next Focus Down Id Ġ= Ġ_ mar velo uses . id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ total Hold s . next Focus Forward Id Ġ= Ġ_ mar velo uses . id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠDisable Ġmar velo us Ġfield Ġand Ġclear ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ mar velo uses . setText ("") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ mar velo uses . input Type Ġ= ĠInput Type . TYPE _ NULL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSet Ġnext Ġfocus Ġtarget Ġfor Ġtotal Ġholds Ġfield ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ total Hold s . next Focus Down Id Ġ= Ġ_ perfect s . id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ total Hold s . next Focus Forward Id Ġ= Ġ_ perfect s . id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ presenter . on Score Updated () ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġinitial Ġstate Ġfor Ġswitch ĊĠĠĠĠĠĠĠ Ġ_ mar velo uses . setText ("") ĊĠĠĠĠĠĠĠ Ġ_ mar velo uses . input Type Ġ= ĠInput Type . TYPE _ NULL ĊĠĠĠĠĠĠĠ Ġ_ mar velo uses . is Focus able Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ_ mar velo uses . is Focus able In Touch Mode Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ_ mar velo us Switch . isChecked Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdisplay Input ( score : ĠScore ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ mar velo uses . setText ( strip Zero ( score . elements [ DDR Ex Score . MAR VELO USE S ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ perfect s . setText ( strip Zero ( score . elements [ DDR Ex Score . PERF ECT S ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ gre ats . setText ( strip Zero ( score . elements [ DDR Ex Score . GRE ATS ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ goods . setText ( strip Zero ( score . elements [ DDR Ex Score . GOO DS ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ bo os . setText ( strip Zero ( score . elements [ DDR Ex Score . BO OS ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ mis ses . setText ( strip Zero ( score . elements [ DDR Ex Score . MIS SES ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ holds . setText ( strip Zero ( score . elements [ DDR Ex Score . H OL DS ]?. count )) ĊĠĠĠĠĠĠĠ Ġ_ total Hold s . setText ( strip Zero ( score . elements [ DDR Ex Score . TOTAL _ H OL DS ]?. count )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġshow Hold s Invalid () Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ holds . error Ġ= ĠgetString ( R . string . error _ invalid _ holds ) ĊĠĠĠĠĠĠĠ Ġshow Score Error () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġclear Errors () Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ holds . error Ġ= Ġnull ĊĠĠĠ Ġ} Ċ }