package Ġcom . raf al z aw ad z ki . load y . widgets Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . res . Resources Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . ProgressBar Ċ import Ġcom . raf al z aw ad z ki . library . Widget Ċ import Ġcom . raf al z aw ad z ki . load y . R Ċ Ċ class ĠSp inner Widget ( context : ĠContext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġvar Ġprogress Size : ĠInt Ġ= ĠSize . SIZE _ SMALL ) ĊĠĠĠ Ġ: ĠWidget ( context ) Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġlayout Ġ= ĠR . layout . load y _ widget _ spinner ĊĊĠĠĠ Ġoverride Ġfun Ġon Show () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Show () ĊĠĠĠĠĠĠĠ Ġset Size () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Size () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbar Ġ= Ġview . findViewById < View >( R . id . progress Bar ) Ġas ĠProgress Bar ĊĠĠĠĠĠĠĠ Ġbar . layout Params . height Ġ= Ġdp To Px ( progress Size ) ĊĠĠĠĠĠĠĠ Ġbar . layout Params . width Ġ= Ġdp To Px ( progress Size ) ĊĠĠĠĠĠĠĠ Ġbar . invalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠSize Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ SMALL Ġ= Ġ 2 0 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ MEDIUM Ġ= Ġ 4 0 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSIZE _ BIG Ġ= Ġ 7 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġdp To Px ( dp Value : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠTyped Value . apply Dimension ( Typed Value . COMPLEX _ UNIT _ DIP , Ġdp Value . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResources . getSystem (). display Metrics ). toInt () ĊĠĠĠ Ġ} Ċ } Ċ