/* Ċ Ġ* ĠCopyright Ġ( c ) ĠKon ink lij ke ĠPhil ips ĠN . V . Ġ 2 0 2 1 . Ċ Ġ* ĠAll Ġrights Ġreserved . Ċ Ġ*/ Ċ package Ġcom . phil ips . ble client . ui Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . method . Scrolling Movement Method Ċ import Ġandroid . view .* Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . databinding . Observable Ċ import Ġcom . phil ips . ble client . BR Ċ import Ġcom . phil ips . ble client . R Ċ Ċ class ĠOb servation Log Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġval Ġlog Callback Ġ= Ġobject Ġ: ĠObservable . On PropertyChanged Callback () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon PropertyChanged ( sender : ĠObservable ?, Ġproperty Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( property Id Ġ== ĠBR . log ) Ġupdate Log View () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ observation _ log ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . setTitle ( R . string . observations ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ĠMake Ġthe Ġobservation Ġlog Ġscroll able ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . observations Log ). set Movement Method ( Scrolling Movement Method ()) ĊĠĠĠĠĠĠĠ Ġupdate Log View () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ ĠOb servation Log . add On PropertyChanged Callback ( log Callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠĠĠĠĠ ĠOb servation Log . remove On PropertyChanged Callback ( log Callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" UNUSED _ PARAMETER ") ĊĠĠĠ Ġfun Ġclear Observation Log ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ ĠOb servation Log . clear () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate Log View () Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . observations Log ). setText ( Observation Log . log ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item . getItem Id ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . id . home Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Pending Transition ( R . anim . slide _ from _ left , ĠR . anim . slide _ to _ right ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} Ċ Ċ }