package Ġcom . blocks decoded . coin wave . util Ċ Ċ import Ġandroid . graphics . drawable . Picture Drawable Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation . Color Res Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . blocks decoded . coin wave . G lide App Ċ import Ġcom . blocks decoded . coin wave . R Ċ import Ġcom . blocks decoded . coin wave . data . model . chart . Chart Data Ċ import Ġcom . blocks decoded . coin wave . data . model . coin . Coin Entity Ċ import Ġcom . blocks decoded . coin wave . presentation . widgets . chart . Chart Listener Ċ import Ġcom . blocks decoded . utils . extensions . getColor Res Ċ import Ġcom . blocks decoded . utils . extensions . isValid Index Ċ import Ġcom . blocks decoded . utils . glide . Svg Software Layer Setter Ċ import Ġcom . blocks decoded . utils . log E Ċ import Ġcom . bump tech . glide . load . resource . drawable . Drawable Transition Options . with Cross Fade Ċ import Ġcom . github . mike phil . chart ing . charts . Line Chart Ċ import Ġcom . github . mike phil . chart ing . data . Entry Ċ import Ġcom . github . mike phil . chart ing . data . Line Data Ċ import Ġcom . github . mike phil . chart ing . data . Line DataSet Ċ Ċ fun ĠList < Coin Entity >. find Currency ( coin Entity : ĠCoin Entity , Ġbody : Ġ(( index : ĠInt ) Ġ-> ĠUnit )? Ġ= Ġnull ): ĠInt Ġ= ĊĠĠĠĠĠĠĠ Ġthis . indexOf First Ġ{ Ġit . id Ġ== Ġcoin Entity . id Ġ}. also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this . isValid Index ( it )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbody ?. invoke ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ċ Ċ fun ĠArrayList < Coin Entity >. add Sorted By Rank ( coin Entity : ĠCoin Entity ) Ġ{ ĊĠĠĠ Ġthis . add ( coin Entity ) ĊĠĠĠ Ġthis . sortBy Ġ{ Ġit . rank Ġ} Ċ } Ċ Ċ fun ĠTextView . set Changed Percent ( percent : ĠFloat ) Ġ{ ĊĠĠĠ Ġtext Ġ= Ġ"${ if Ġ( percent Ġ> Ġ 0 ) Ġ" +" Ġelse Ġ"" }$ percent %" ĊĠĠĠ Ġthis . setTextColor ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( percent Ġ>= Ġ 0 f ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget Color Res ( R . color . green ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget Color Res ( R . color . red ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun ĠLine Chart . load Chart Data ( ĊĠĠĠ Ġdata : ĠChart Data , ĊĠĠĠ Ġ@ Color Res Ġcolor : ĠInt , ĊĠĠĠ Ġ@ Drawable Res Ġbackground Drawable : ĠInt Ċ ) Ġ{ ĊĠĠĠ Ġthis . reset Zoom () ĊĠĠĠ Ġthis . zoom Out () ĊĠĠĠ Ġval Ġentries Ġ= Ġarray ListOf < Entry >() ĊĊĠĠĠ Ġdata . chart . forEach Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġentries . add ( Entry ( it . time . toFloat (), Ġit . price . toFloat ())) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog E ( e ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval ĠdataSet Ġ= ĠLine DataSet ( entries , Ġ"") ĊĠĠĠ ĠdataSet . set Draw Circle Hole ( false ) ĊĠĠĠ ĠdataSet . mode Ġ= ĠLine DataSet . Mode . C UB IC _ BE ZI ER ĊĠĠĠ ĠdataSet . set Draw Circ les ( false ) ĊĠĠĠ ĠdataSet . cubic Intensity Ġ= Ġ 0 . 3 f ĊĠĠĠ ĠdataSet . set Draw Filled ( true ) ĊĠĠĠ ĠdataSet . lineWidth Ġ= Ġ 1 . 2 f ĊĠĠĠ ĠdataSet . set Draw Values ( false ) ĊĊĠĠĠ ĠdataSet . color Ġ= Ġcontext . getColor Res ( color ) ĊĠĠĠ ĠdataSet . fill Drawable Ġ= ĠContext Compat . get Drawable ( context , Ġbackground Drawable ) ĊĊĠĠĠ Ġthis . data Ġ= ĠLine Data ( data Set ) ĊĠĠĠ Ġthis . animate X ( 1 0 0 0 ) Ċ } Ċ Ċ fun ĠLine Chart . init ( listener : ĠChart Listener ) Ġ{ ĊĠĠĠ Ġthis . set Touch Enabled ( true ) ĊĠĠĠ Ġthis . is Drag Enabled Ġ= Ġtrue ĊĠĠĠ Ġthis . set Scale Enabled ( true ) ĊĠĠĠ Ġthis . set Draw Grid Background ( false ) ĊĠĠĠ Ġthis . set Pin ch Zoom ( true ) ĊĠĠĠ Ġthis . description ?. isEnabled Ġ= Ġfalse ĊĠĠĠ Ġthis . set Draw B orders ( false ) ĊĠĠĠ Ġthis . axis Left ?. isEnabled Ġ= Ġfalse ĊĠĠĠ Ġthis . axis Right ?. isEnabled Ġ= Ġfalse ĊĠĠĠ Ġthis . xAxis ?. isEnabled Ġ= Ġfalse ĊĠĠĠ Ġthis . setBorder Width ( 0 f ) ĊĠĠĠ Ġthis . setView Port Offsets ( 0 f , Ġ 5 0 f , Ġ 0 f , Ġ 5 0 f ) ĊĠĠĠ Ġthis . setOn Chart Value Selected Listener ( listener ) ĊĠĠĠ Ġthis . on Chart Gesture Listener Ġ= Ġlistener Ċ } Ċ Ċ fun ĠImageView . load Coin Icon ( coin Entity : ĠCoin Entity ) Ġ= Ġtry Ġ{ ĊĠĠĠ ĠG lide App . with ( this ) ĊĠĠĠĠĠĠĠ Ġ. ` as `( Picture Drawable :: class . java ) ĊĠĠĠĠĠĠĠ Ġ. transition ( with Cross Fade ()) ĊĠĠĠĠĠĠĠ Ġ. listener ( Svg Software Layer Setter ()) ĊĠĠĠĠĠĠĠ Ġ. load ( coin Entity . icon Url ) ĊĠĠĠĠĠĠĠ Ġ. into ( this ) Ċ } Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠ Ġlog E ( e ) Ċ } Ċ Ċ fun ĠImageView . load Image ( url : ĠString ) Ġ{ ĊĠĠĠ ĠG lide App . with ( this ) ĊĠĠĠĠĠĠĠ Ġ. load ( url ) ĊĠĠĠĠĠĠĠ Ġ. transition ( with Cross Fade ()) ĊĠĠĠĠĠĠĠ Ġ. thumbnail ( 0 . 0 2 f ) ĊĠĠĠĠĠĠĠ Ġ. into ( this ) Ċ }