package Ġcom . the k us ch . emoji _ m ash up . ui . dialog čĊč Ċ import Ġandroid . app . AlertDialog č Ċ import Ġandroid . app . Dialog č Ċ import Ġandroid . content . Context č Ċ import Ġandroid . content . DialogInterface č Ċ import Ġandroid . os . Bundle č Ċ import Ġandroid . view . View č Ċ import Ġandroid . widget . Button č Ċ import Ġandroid . widget . ImageView č Ċ import Ġandroid . widget . LinearLayout č Ċ import Ġandroidx . appcompat . app . AppCompat Dialog Fragment č Ċ import Ġcom . the k us ch . emoji _ m ash up . R č Ċ import Ġcom . the k us ch . emoji _ m ash up . enum . Selected Button Enum č Ċ import Ġkotlinx . android . synt hetic . main . package _ list _ item .* č Ċ import Ġjava . lang . Class CastException čĊč Ċ class ĠAdd St icker Dialog ( private Ġvar ĠpackageName : String ): AppCompat Dialog Fragment (), ĠView . OnClickListener Ġ{ čĊčĊĠĠĠ Ġlateinit Ġvar Ġresult Image : ImageView čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġhead Button : Button čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġm outh Button : Button čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġeye Button : Button čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġe y eb row Button : Button čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġadditional Button : Button čĊĠĠĠ Ġlateinit Ġvar Ġlinear Layout : ĠLinearLayout čĊčĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġdialog ClickListener Ġ: ĠAdd St icker Dialog Listener čĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbutton ClickListener Ġ: ĠEmoji Body Parts Button ClickListener čĊčĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġbuilder Ġ= ĠAlertDialog . Builder ( activity ) čĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= Ġactivity !!. layout Inflater čĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġinflater . inflate ( R . layout . add st icker _ dialog , null ) čĊčĊĠĠĠĠĠĠĠ Ġ// initialize čĊĠĠĠĠĠĠĠ Ġresult Image Ġ= Ġview . findViewById ( R . id . m ash up Emoji Holder ) čĊčĊĠĠĠĠĠĠĠ Ġhead Button Ġ= Ġview . findViewById ( R . id . emoji Head Button ) čĊĠĠĠĠĠĠĠ Ġhead Button . setOnClickListener ( this ) čĊčĊĠĠĠĠĠĠĠ Ġm outh Button Ġ= Ġview . findViewById ( R . id . emoji M outh Button ) čĊĠĠĠĠĠĠĠ Ġm outh Button . setOnClickListener ( this ) čĊčĊĠĠĠĠĠĠĠ Ġeye Button Ġ= Ġview . findViewById ( R . id . emoji Eye Button ) čĊĠĠĠĠĠĠĠ Ġeye Button . setOnClickListener ( this ) čĊčĊĠĠĠĠĠĠĠ Ġe y eb row Button Ġ= Ġview . findViewById ( R . id . emoji Ey eb row Button ) čĊĠĠĠĠĠĠĠ Ġe y eb row Button . setOnClickListener ( this ) čĊčĊĠĠĠĠĠĠĠ Ġadditional Button Ġ= Ġview . findViewById ( R . id . emoji Additional ) čĊĠĠĠĠĠĠĠ Ġadditional Button . setOnClickListener ( this ) čĊčĊĠĠĠĠĠĠĠ Ġlinear Layout Ġ= Ġview . findViewById ( R . id . emoji Body Parts Section ) čĊčĊĠĠĠĠĠĠĠ Ġbuilder . setView ( view ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle (" Add ĠSt icker ") čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button (" Cancel ", ĠDialog Interface . OnClickListener (){ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Interface : ĠDialog Interface , Ġi : ĠInt Ġ-> čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button (" Ok ay ", ĠDialog Interface . OnClickListener (){ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Interface : ĠDialog Interface , Ġi : ĠInt Ġ-> čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog ClickListener . on Add St icker Dialog Listener ( packageName ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) čĊčĊčĊĠĠĠĠĠĠĠ Ġreturn Ġbuilder . create () čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun ĠonClick ( v : ĠView ?) Ġ{ čĊĠĠĠĠĠĠĠ Ġwhen ( v !!. id ){ čĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . emoji Head Button Ġ-> Ġbutton ClickListener . on Emoji Body Parts Button ClickListener ( Selected Button Enum . HEAD _ BUTTON ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . emoji M outh Button Ġ-> Ġbutton ClickListener . on Emoji Body Parts Button ClickListener ( Selected Button Enum . MO UTH _ BUTTON ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . emoji Eye Button Ġ-> Ġbutton ClickListener . on Emoji Body Parts Button ClickListener ( Selected Button Enum . EY E _ BUTTON ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . emoji Ey eb row Button Ġ-> Ġbutton ClickListener . on Emoji Body Parts Button ClickListener ( Selected Button Enum . EY EB ROW _ BUTTON ) čĊčĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . emoji Additional Ġ-> Ġbutton ClickListener . on Emoji Body Parts Button ClickListener ( Selected Button Enum . AD DITION AL ) čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġoverride Ġfun Ġon Attach ( context : ĠContext ) Ġ{ čĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( context ) čĊĠĠĠĠĠĠĠ Ġtry Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog ClickListener Ġ= Ġcontext Ġas ĠAdd St icker Dialog Listener čĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton ClickListener Ġ= Ġcontext Ġas ĠEmoji Body Parts Button ClickListener čĊĠĠĠĠĠĠĠ Ġ} catch Ġ( e : Class CastException ){ čĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠClass CastException (" Error Ġwhen Ġdialog Ġbutton Ġclick Ġlistener Ġinitialized ") čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġinterface ĠAdd St icker Dialog Listener { čĊĠĠĠĠĠĠĠ Ġfun Ġon Add St icker Dialog Listener ( package Folder Name : String ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġinterface ĠEmoji Body Parts Button ClickListener { čĊĠĠĠĠĠĠĠ Ġfun Ġon Emoji Body Parts Button ClickListener ( selected Button : Selected Button Enum ) čĊĠĠĠ Ġ} čĊč Ċ }