package Ġkr . ac . sn u . hc il . om n itr ack . views . time Ċ Ċ import Ġandroid . annotation . Target Api Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Parcel Ċ import Ġandroid . os . Parcelable Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroidx . annotation . Pl urals Res Ċ import Ġandroidx . constraint layout . widget . Constraint Layout Ċ import Ġkr . ac . sn u . hc il . android . common . events . Event Ċ import Ġkr . ac . sn u . hc il . android . common . view . inflate Content Ċ import Ġkr . ac . sn u . hc il . om n itr ack . views . R Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠYo ung - Ho ĠKim Ġon Ġ 2 0 1 6 - 0 7 - 2 5 . Ċ Ġ*/ Ċ class ĠNumeric UpDown Ġ: ĠConstraint Layout , ĠIN um eric UpDown Ġ{ ĊĠĠĠ Ġoverride Ġvar Ġmin Value : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . min Value ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . min Value Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġvar ĠmaxValue : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . max Value ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . max Value Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġval Ġvalue : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . value ĊĠĠĠ Ġoverride Ġvar Ġdisplayed Values : ĠArray < String >? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . display ed Values ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . display ed Values Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġvar Ġformatter : Ġ(( Int ) Ġ-> ĠString )? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . formatter ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . formatter Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġvar Ġquantity Res Id : ĠInt ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . quantity Res Id ĊĠĠĠĠĠĠĠ Ġset (@ Pl urals Res Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . quantity Res Id Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġvar Ġzero Pad : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . zero Pad ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . zero Pad Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġval Ġvalue Changed : ĠEvent < IN um eric UpDown . Change Args > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . value Changed ĊĠĠĠ Ġoverride Ġvar Ġallow Long Press : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġimpl . allow Long Press ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimpl . allow Long Press Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠsetValue ( newValue : ĠInt , Ġchange Type : ĠIN um eric UpDown . Change Type , Ġdelta : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġimpl . setValue ( newValue , Ġchange Type , Ġdelta ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġimpl : ĠNumeric UpDown Impl ĊĊĠĠĠ Ġvar Ġorientation : ĠInt Ġ= ĠLinearLayout . VERTICAL ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( field Ġ!= Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchange Direction ( context , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinf late Content ( R . layout . component _ number _ picker _ vertical , Ġtrue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet ?) Ġ: Ġsuper ( context , Ġattrs ) Ġ{ ĊĠĠĠĠĠĠĠ Ġimpl Ġ= ĠNumeric UpDown Impl ( context , Ġattrs , Ġthis ) ĊĊĠĠĠĠĠĠĠ Ġval Ġa Ġ= Ġcontext . theme . obtain Styled Attributes ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġattrs , Ġint ArrayOf ( android . R . attr . orientation ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 , Ġ 0 ) ĊĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( a . hasValue ( 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġorientation Ġ= Ġa . getInteger ( 0 , ĠLinearLayout . VERTICAL ) ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġa . recycle () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext ) Ġ: Ġsuper ( context ) Ġ{ ĊĠĠĠĠĠĠĠ Ġimpl Ġ= ĠNumeric UpDown Impl ( context , Ġnull , Ġthis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Detached From Window () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Detached From Window () ĊĠĠĠĠĠĠĠ Ġimpl . stop Fast Change () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġchange Direction ( context : ĠContext , Ġattrs : ĠAttributeSet ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġremove All Views In Layout () ĊĠĠĠĠĠĠĠ Ġinf late Content ( if Ġ( value Ġ== ĠLinearLayout . VERTICAL ) ĠR . layout . component _ number _ picker _ vertical Ġelse ĠR . layout . component _ number _ picker _ horizontal , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġrequest Layout () ĊĠĠĠĠĠĠĠ Ġimpl Ġ= ĠNumeric UpDown Impl ( context , Ġattrs , Ġthis ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Save InstanceState (): ĠParcel able Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsuper State Ġ= Ġsuper . on Save InstanceState () ĊĠĠĠĠĠĠĠ Ġval Ġthis State Ġ= ĠSaved State ( super State ) ĊĠĠĠĠĠĠĠ Ġthis State . state Ġ= Ġimpl . make State Data () ĊĠĠĠĠĠĠĠ Ġreturn Ġthis State ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Restore InstanceState ( state : ĠParcel able ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthis State Ġ= Ġstate Ġas ĠSaved State ĊĠĠĠĠĠĠĠ Ġsuper . on Restore InstanceState ( this State . super State ) ĊĠĠĠĠĠĠĠ Ġimpl . apply State Data ( this State . state ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠSaved State Ġ: ĠView . Base Saved State Ġ{ ĊĊĠĠĠĠĠĠĠ Ġvar Ġstate Ġ= ĠNumeric UpDown Impl . State Data () ĊĊĠĠĠĠĠĠĠ Ġconstructor ( source : ĠParcel ) Ġ: Ġsuper ( source ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate . read From Parcel ( source ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Target Api ( 2 4 ) ĊĠĠĠĠĠĠĠ Ġconstructor ( source : ĠParcel , Ġloader : ĠClassLoader ?) Ġ: Ġsuper ( source , Ġloader ) ĊĊĠĠĠĠĠĠĠ Ġconstructor ( super State : ĠParcel able ?) Ġ: Ġsuper ( super State ) ĊĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠwriteTo Parcel ( out : ĠParcel , Ġflags : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . writeTo Parcel ( out , Ġflags ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate . writeTo Parcel ( out ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Jvm Field ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠCRE ATOR : ĠParcel able . Creator < Saved State > Ġ= Ġobject Ġ: ĠParcel able . Creator < Saved State > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate From Parcel (` in `: ĠParcel ): ĠSaved State Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠSaved State (` in `) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnew Array ( size : ĠInt ): ĠArray < Saved State ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠarrayOf Null s ( size ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }