package Ġcom . bt spl us plus . f ow allet Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . Switch Ċ import Ġandroid . widget . TextView Ċ import Ġbit shares .* Ċ import Ġcom . f ow allet . wallet core . b ts . Chain Object Manager Ċ import Ġkotlinx . android . synt hetic . main . activity _ add _ asset _ pairs _ base .* Ċ import Ġorg . json . JSONObject Ċ Ċ class ĠActivity Add Asset Pairs Base Ġ: ĠB t sp p Activity () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġlayout _ search : ĠLinearLayout ? Ġ= Ġnull ĊĊĠĠĠ Ġprivate Ġval Ġ_ array _ data Ġ= Ġmutable ListOf < JSONObject >() ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġreload And Refresh () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĊĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġset Auto Layout ContentView ( R . layout . activity _ add _ asset _ pairs _ base ) ĊĊĠĠĠĠĠĠĠ Ġlayout _ search Ġ= Ġlayout _ search _ from _ add _ trade _ obj _ search _ index ĊĊĠĠĠĠĠĠĠ Ġlayout _ back . setOnClickListener Ġ{ Ġview Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġ Ġ çĽĳåĲ¬ ĊĠĠĠĠĠĠĠ Ġedit _ search _ trade _ obj . is Focus able Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġedit _ search _ trade _ obj . is Focus able In Touch Mode Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġedit _ search _ trade _ obj . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgo To ( Activity Add Asset Pairs Result :: class . java , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġset FullScreen () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ éĩįæĸ° åĬłè½½ æķ°æį® & åĪ·æĸ° åĪĹè¡¨ ãĢĤ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġreload And Refresh () Ġ{ ĊĠĠĠĠĠĠĠ Ġre init Custom Market List () ĊĠĠĠĠĠĠĠ Ġ_ refresh UI () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ( private ) ĠåĪĿå§ĭåĮĸ èĩªå®ļä¹ī äº¤æĺĵ å¯¹ åĪĹè¡¨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġre init Custom Market List () Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ array _ data . clear () ĊĊĠĠĠĠĠĠĠ Ġval Ġcustom _ mark ets Ġ= ĠApp CacheManager . shared App CacheManager (). get _ all _ custom _ mark ets () ĊĠĠĠĠĠĠĠ Ġif Ġ( custom _ mark ets . length () Ġ<= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġvar Ġmarket _ hash Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠ ĠChain Object Manager . shared Chain Object Manager (). getDefault Market Infos (). forEach < JSONObject > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmarket Ġ= Ġit !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbase Ġ= Ġmarket . getJSONObject (" base ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmarket _ hash . put ( base . getString (" symbol "), Ġbase ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfor Ġ( obj Ġin Ġcustom _ mark ets . values ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcustom _ item Ġ= Ġobj !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbase _ symbol Ġ= Ġcustom _ item . getString (" base ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmarket _ base Ġ= Ġmarket _ hash . opt JSONObject ( base _ symbol ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ Ġ æĹł æķĪ æķ°æį® ï¼Ī çĶ¨æĪ· æ·»åĬł ä¹ĭåĲİ ï¼Į å®ĺæĸ¹ åĪłéĻ¤ äºĨ éĥ¨åĪĨ å¸Ĥ åľº åı¯èĥ½ åŃĺåľ¨ è¯¥ æĥħåĨµ ãĢĤ ï¼ī ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( market _ base Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontinue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquote Ġ= Ġcustom _ item . getJSONObject (" quote ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ array _ data . add ( jsonObject from K VS (" base ", Ġmarket _ base , Ġ" quote ", Ġquote )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġ Ġ æİĴåºı ĊĠĠĠĠĠĠĠ Ġ_ array _ data . sortBy Ġ{ Ġit . getJSONObject (" quote "). getString (" symbol ") Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġ_ refresh UI () Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Default Result () ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . label _ txt _ my _ custom _ n ). text Ġ= ĠString . format ( resources . getString ( R . string . k Search Tips My Custom Pairs ), Ġ_ array _ data . size . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Default Result () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġ Ġæ·»åĬł åĪ° åĪĹè¡¨ ĊĠĠĠĠĠĠĠ Ġlayout _ search !!. removeAll Views () ĊĠĠĠĠĠĠĠ Ġfor Ġ( data Ġin Ġ_ array _ data ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Cell ( data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcreate Cell ( data : ĠJSONObject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠLinearLayout ( this ) ĊĠĠĠĠĠĠĠ Ġval Ġlayout _ params Ġ= ĠLinearLayout . LayoutParams ( LinearLayout . LayoutParams . MATCH _ PARENT , Ġto Dp ( 3 0 f )) ĊĠĠĠĠĠĠĠ Ġlayout _ params . gravity Ġ= ĠGr avity . CENTER _ VERTICAL ĊĊĠĠĠĠĠĠĠ Ġv . layout Params Ġ= Ġlayout _ params ĊĊĠĠĠĠĠĠĠ Ġval Ġbase Ġ= Ġdata . getJSONObject (" base ") ĊĠĠĠĠĠĠĠ Ġval Ġquote Ġ= Ġdata . getJSONObject (" quote ") ĊĠĠĠĠĠĠĠ Ġval Ġquote _ symbol Ġ= Ġquote . getString (" symbol ") ĊĠĠĠĠĠĠĠ Ġval Ġbase _ name Ġ= Ġbase . getString (" name ") ĊĊĠĠĠĠĠĠĠ Ġval Ġtv : ĠTextView Ġ= ĠTextView ( this ) ĊĠĠĠĠĠĠĠ Ġtv . text Ġ= Ġ"${ quote _ symbol }/${ base _ name }" ĊĠĠĠĠĠĠĠ Ġtv . gravity Ġ= ĠGr avity . CENTER _ VERTICAL ĊĠĠĠĠĠĠĠ Ġtv . setTextColor ( resources !!. getColor ( R . color . theme 0 1 _ textColor Main )) ĊĊĠĠĠĠĠĠĠ Ġ// Ġ Ġ å¼Ģ åħ³ ĊĠĠĠĠĠĠĠ Ġval Ġswitch Ġ= ĠSwitch ( this ) ĊĠĠĠĠĠĠĠ Ġswitch . gravity Ġ= ĠGr avity . CENTER _ VERTICAL Ġor ĠGr avity . RIGHT ĊĠĠĠĠĠĠĠ Ġval Ġlayout _ switch _ params Ġ= ĠLinearLayout . LayoutParams ( LinearLayout . LayoutParams . MATCH _ PARENT , Ġto Dp ( 3 0 f )) ĊĠĠĠĠĠĠĠ Ġlayout _ switch _ params . weight Ġ= Ġ 1 . 0 f ĊĠĠĠĠĠĠĠ Ġswitch . layout Params Ġ= Ġlayout _ switch _ params ĊĠĠĠĠĠĠĠ Ġ// Ġ Ġé»ĺè®¤ åĢ¼ ĊĠĠĠĠĠĠĠ Ġswitch . isChecked Ġ= ĠApp CacheManager . shared App CacheManager (). is _ custom _ market ( quote _ symbol , Ġbase . getString (" symbol ")) ĊĠĠĠĠĠĠĠ Ġswitch . setOn Checked ChangeListener Ġ{ Ġcompound Button , Ġselected Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Switch Action ( data , Ġselected , Ġcompound Button Ġas ĠSwitch ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġv . addView ( tv ) ĊĠĠĠĠĠĠĠ Ġv . addView ( switch ) ĊĊĠĠĠĠĠĠĠ Ġlayout _ search !!. addView ( v ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Switch Action ( data : ĠJSONObject , Ġselected : ĠBoolean , Ġswitch : ĠSwitch ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġp App Cache Ġ= ĠApp CacheManager . shared App CacheManager () ĊĠĠĠĠĠĠĠ Ġif Ġ( selected ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbase Ġ= Ġdata . getJSONObject (" base ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquote Ġ= Ġdata . getJSONObject (" quote ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp App Cache . set _ custom _ mark ets ( quote , Ġbase . getString (" symbol ")). save Custom Mark ets ToFile () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ Ġ[ ç»Łè®¡ ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbt sp p Log Custom (" event _ custom market _ add ", ĠjsonObject from K VS (" base ", Ġbase . getString (" symbol "), Ġ" quote ", Ġquote . getString (" symbol "))) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbase Ġ= Ġdata . getJSONObject (" base ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġquote Ġ= Ġdata . getJSONObject (" quote ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp App Cache . remove _ custom _ mark ets ( quote . getString (" symbol "), Ġbase . getString (" symbol ")). save Custom Mark ets ToFile () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ Ġ[ ç»Łè®¡ ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbt sp p Log Custom (" event _ custom market _ remove ", ĠjsonObject from K VS (" base ", Ġbase . getString (" symbol "), Ġ" quote ", Ġquote . getString (" symbol "))) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġ Ġ æłĩè®° ï¼ļ èĩªå®ļä¹ī äº¤æĺĵ å¯¹ åıĳçĶŁ åıĺåĮĸ ï¼Į å¸Ĥ åľº åĪĹè¡¨ éľĢè¦ģ æĽ´æĸ° ãĢĤ ĊĠĠĠĠĠĠĠ ĠTemp Manager . shared Temp Manager (). custom Market Dirty Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ