Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Paint Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ Ċ /** ĠMin imal ist ĠDraw ing Ġview Ġabstraction ĊĠ Ġ* ĠD K 9 6 - OS Ġ: Ġ 2 0 2 1 Ġ*/ Ċ abstract Ġclass ĠDraw ing View ( ctx : ĠContext , Ġattrs : ĠAttributeSet ) Ġ: ĠView ( ctx , Ġattrs ) Ġ{ ĊĊ ĉ protected Ġopen Ġfun Ġnew Paint ( var arg Ġargs : ĠInt ) Ċ ĉ : ĠPaint Ġ= Ġapply Paint Args ( Paint (), Ġ* args ) ĊĊ ĉ comp anion Ġobject Ġ{ Ċĉ ĉ const Ġval ĠSTYLE _ ST RO KE Ġ= Ġ 1 2 Ċĉ ĉ const Ġval ĠSTYLE _ FILL _ ST RO KE Ġ= Ġ 1 3 Ċĉ ĉ const Ġval ĠAN TI _ ALIAS Ġ= Ġ 5 Ċĉ ĉ const Ġval ĠD IT HER Ġ= Ġ 7 ĊĊĉ ĉ protected Ġfun Ġapply Paint Args ( p : ĠPaint , Ġvar arg Ġargs : ĠInt ): ĠPaint Ġ{ Ċĉĉ ĉ if Ġ( args . isNotEmpty ()) Ġ{ Ċĉĉĉ ĉ p . style Ġ= Ġwhen Ġ{ Ċĉĉĉĉ ĉ args . contains ( STYLE _ ST RO KE ) Ġ-> ĠPaint . Style . ST RO KE Ċĉĉĉĉ ĉ args . contains ( STYLE _ FILL _ ST RO KE ) Ġ-> ĠPaint . Style . FILL _ AND _ ST RO KE Ċĉĉĉĉ ĉ else Ġ-> ĠPaint . Style . FILL Ċĉĉĉ ĉ } Ċĉĉĉ ĉ if Ġ( args . contains ( ANTI _ ALIAS )) Ġp . is Anti Alias Ġ= Ġtrue Ċĉĉĉ ĉ if Ġ( args . contains ( D IT HER )) Ġp . is D ither Ġ= Ġtrue Ċĉĉ ĉ } Ċĉĉ ĉ return Ġp Ċĉ ĉ } Ċ ĉ } Ċ } Ċ