/* Ċ Ġ* ĠCopyright Ġ( c ) ĠMeta ĠPlatform s , ĠInc . Ġand Ġaffiliates . Ċ Ġ* Ċ Ġ* ĠThis Ġsource Ġcode Ġis Ġlicensed Ġunder Ġthe ĠMIT Ġlicense Ġfound Ġin Ġthe Ċ Ġ* ĠLICENSE Ġfile Ġin Ġthe Ġroot Ġdirectory Ġof Ġthis Ġsource Ġtree . Ċ Ġ*/ Ċ Ċ package Ġcom . facebook . f resco . v ito . tools . live editor Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . drawable . Color Drawable Ċ import Ġcom . facebook . f resco . v ito . core . F resco Controller 2 Ċ import Ġcom . facebook . f resco . v ito . core . F resco Drawable Interface Ċ import Ġcom . facebook . f resco . v ito . core . V ito Image Pipeline Ċ Ċ class ĠImage Selector ( ĊĠĠĠ Ġval Ġtracker : ĠImage Tracker , ĊĠĠĠ Ġprivate Ġval Ġimage Pipeline : ĠV ito Image Pipeline , ĊĠĠĠ Ġprivate Ġval Ġcontroller : ĠF resco Controller 2 , ĊĠĠĠ Ġprivate Ġval Ġoverlay Color : ĠInt Ġ= Ġ 0 x 8 8 ff 0 0 0 0 . toInt (), ĊĠĠĠ Ġprivate Ġvar ĠcurrentIndex : ĠInt Ġ= Ġ- 1 Ċ ) Ġ{ ĊĊĠ Ġvar Ġcurrent Editor : ĠImage Live Editor ? Ġ= Ġnull ĊĊĠ Ġfun Ġselect Next ( context : ĠContext ) Ġ= Ġhighlight Drawable ( context , Ġincrement Index By ( 1 )) ĊĊĠ Ġfun Ġselect Previous ( context : ĠContext ) Ġ= Ġhighlight Drawable ( context , Ġincrement Index By (- 1 )) ĊĊĠ Ġfun Ġhighlight Drawable ( context : ĠContext , Ġdrawable : ĠF resco Drawable Interface ?) Ġ{ ĊĠĠĠ Ġremove Highlight ( context ) ĊĠĠĠ Ġif Ġ( drawable Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġeditor Ġ= ĠImage Live Editor ( drawable , Ġimage Pipeline , Ġcontroller ) ĊĠĠĠ Ġcurrent Editor Ġ= Ġeditor ĊĠĠĠ Ġeditor . edit Options ( context ) Ġ{ Ġit . overlay ( Color Drawable ( overlay Color )) Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġremove Highlight ( context : ĠContext ) Ġ= Ġcurrent Editor ?. edit Options ( context ) Ġ{ Ġit . overlay ( null ) Ġ} ĊĊĠ Ġprivate Ġfun Ġhighlight Drawable ( context : ĠContext , Ġindex : ĠInt ?) Ġ{ ĊĠĠĠ Ġif Ġ( index Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġhighlight Drawable ( context , Ġtracker . get Drawable OrNull ( index )) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġincrement Index By ( increment : ĠInt ): ĠInt ? Ġ{ ĊĠĠĠ Ġval Ġsize Ġ= Ġtracker . drawable Count ĊĠĠĠ Ġif Ġ( size Ġ<= Ġ 0 ) Ġ{ ĊĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĠĠĠ ĠcurrentIndex Ġ= Ġ( currentIndex Ġ+ Ġincrement ). mod ( size ) ĊĠĠĠ Ġreturn ĠcurrentIndex ĊĠ Ġ} Ċ } Ċ