package Ġcom . github . jav iers an tos . material style dd ialog s Ċ Ċ import Ġandroid . annotation . Target Api Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . graphics . Port er D uff Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . text . method . Scrolling Movement Method Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . Frame Layout Ċ import Ġandroid . widget . ImageView . Scale Type Ċ import Ġandroid . widget . Relative Layout Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation .* Ċ import Ġandroidx . appcompat . widget . AppCompat ImageView Ċ import Ġandroidx . core . content . res . Resources Compat Ċ import Ġcom . af ol le st ad . material dialogs . Dialog Callback Ċ import Ġcom . af ol le st ad . material dialogs . Material Dialog Ċ import Ġcom . af ol le st ad . material dialogs . Which Button Ċ import Ġcom . af ol le st ad . material dialogs . actions . getAction Button Ċ import Ġcom . af ol le st ad . material dialogs . custom view . custom View Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . Utils Animation . start Animation Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . Utils Library . dp To Pixels Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . Utils Library . getColor Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . Utils Library . get Primary Color Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . custom _ interface . F uck Dismiss Listener Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . enums . Duration Ċ import Ġcom . github . jav iers an tos . material style dd ialog s . enums . Style Ċ Ċ class ĠMaterial Styled Dialog ( private Ġval Ġbuilder : ĠBuilder ) Ġ: ĠDialog Base ( builder . context , ĠR . style . MD _ Dark ) Ġ{ ĊĊĠĠĠ Ġ@ Ui Thread ĊĠĠĠ Ġoverride Ġfun Ġshow () Ġ{ ĊĠĠĠĠĠĠĠ Ġbuilder . dialog ?. show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Ui Thread ĊĠĠĠ Ġoverride Ġfun Ġdismiss () Ġ{ ĊĠĠĠĠĠĠĠ Ġbuilder . dialog ?. dismiss () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Ui Thread ĊĠĠĠ Ġprivate Ġfun Ġinit Material Styled Dialog ( builder : ĠBuilder ): ĠMaterial Dialog Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= ĠMaterial Dialog ( builder . context ) ĊĊĠĠĠĠĠĠĠ Ġdialog . setOn Dismiss Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . dismiss ?. dis missed (); ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġcancel able ĊĠĠĠĠĠĠĠ Ġdialog . cancel able ( builder . is Cancel able ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġstyle ĊĠĠĠĠĠĠĠ Ġdialog . custom View ( view Ġ= Ġinit Style ( builder ), Ġscroll able Ġ= Ġfalse , Ġno Vertical Padding Ġ= Ġtrue ) ĊĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġpositive Ġbutton ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . positive Ġ!= Ġnull Ġ&& Ġbuilder . positive !!. isNotEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . positive Button ( text Ġ= Ġbuilder . positive , Ġclick Ġ= Ġbuilder . positive Callback ) ĊĠĠĠĠĠĠĠ Ġ// Ġset Ġnegative Ġbutton ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . negative Ġ!= Ġnull Ġ&& Ġbuilder . negative !!. isNotEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . negative Button ( text Ġ= Ġbuilder . negative , Ġclick Ġ= Ġbuilder . negative Callback ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġneutral Ġbutton ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . neutral Ġ!= Ġnull Ġ&& Ġbuilder . neutral !!. isNotEmpty ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . neutral Button ( text Ġ= Ġbuilder . neutral , Ġclick Ġ= Ġbuilder . neutral Callback ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġauto Ġdismiss Ġwhen Ġtouch ing Ġthe Ġbuttons ĊĠĠĠĠĠĠĠ Ġif Ġ(! builder . is Auto Dismiss ) Ġdialog . no Auto Dismiss () ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġdialog Ġanimation Ġand Ġanimation Ġduration ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . is Dialog Animation ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . window !!. attributes . window Animations Ġ= Ġwhen ( builder . duration ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDuration . FAST Ġ-> ĠR . style . Material Styled Dialog s _ Dialog Animation Fast ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDuration . S LOW Ġ-> ĠR . style . Material Styled Dialog s _ Dialog Animation Slow ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠR . style . Material Styled Dialog s _ Dialog Animation Normal ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġdialog ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Ui Thread ĊĠĠĠ Ġ@ Target Api ( 1 6 ) ĊĠĠĠ Ġprivate Ġfun Ġinit Style ( builder : ĠBuilder ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontent View Ġ= Ġwhen Ġ( builder . style ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle . HEADER _ WITH _ ICON Ġ-> Ġlayout Inflater . inflate ( R . layout . style _ dialog _ header _ icon , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġlayout Inflater . inflate ( R . layout . style _ dialog _ header _ title , Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠInit ĠViews ĊĠĠĠĠĠĠĠ Ġval Ġdialog Header Color Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Header Color ) Ġas ĠRelative Layout ĊĠĠĠĠĠĠĠ Ġval Ġdialog Header Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Header ) Ġas ĠAppCompat ImageView ĊĠĠĠĠĠĠĠ Ġval Ġdialog Pic Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Header Pic ) Ġas ĠAppCompat ImageView ? ĊĠĠĠĠĠĠĠ Ġval Ġdialog Title Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Dialog Title ) Ġas ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġdialog Description Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Dialog Description ) Ġas ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġdialog Custom ViewGroup Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Dialog Custom View ) Ġas ĠFrame Layout ĊĠĠĠĠĠĠĠ Ġval Ġdialog Divider Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . findViewById ( R . id . md Styled Dialog Divider ) Ġas ĠView ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġheader Ġcolor Ġor Ġdrawable ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . header Drawable Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Header . setImage Drawable ( builder . header Drawable ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠApply Ġgray / dark er Ġoverlay Ġto Ġthe Ġheader Ġif Ġenabled ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . is Dark er Overlay ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Header . setColor Filter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor . rgb ( 1 2 3 , Ġ 1 2 3 , Ġ 1 2 3 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPort er D uff . Mode . MULTI PLY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdialog Header Color . set BackgroundColor ( builder . primary Color ) ĊĠĠĠĠĠĠĠ Ġdialog Header . scale Type Ġ= Ġbuilder . header Scale Type ĊĊĠĠĠĠĠĠĠ Ġ// Set Ġthe Ġcustom Ġview ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . custom View Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Custom ViewGroup . addView ( builder . custom View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Custom ViewGroup . set Padding ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . custom View Padding Left , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . custom View Padding Top , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . custom View Padding Right , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . custom View Padding Bottom ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġheader Ġicon ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . icon Drawable Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . style Ġ=== ĠStyle . HEADER _ WITH _ TITLE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . e (" Material Styled Dialog ", Ġ" You Ġcan 't Ġset Ġan Ġicon Ġto Ġthe ĠHEADER _ WITH _ TITLE Ġstyle .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Pic ?. setImage Drawable ( builder . icon Drawable ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġdialog Ġtitle ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . title Ġ!= Ġnull Ġ&& Ġbuilder . title !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Title . text Ġ= Ġbuilder . title ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . type face != null ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Title . type face Ġ= Ġbuilder . type face ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Title . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġdialog Ġdescription ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . description Ġ!= Ġnull Ġ&& Ġbuilder . description !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . text Ġ= Ġbuilder . description ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSet Ġscroll able ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . is Vertical ScrollBar Enabled Ġ= Ġbuilder . is Scroll able ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . is Scroll able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . max Lines Ġ= Ġbuilder . max Lines !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . movement Method Ġ= ĠScroll ing Movement Method () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . max Lines Ġ= ĠInt . MAX _ VALUE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . type face != null ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . type face Ġ= Ġbuilder . type face ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . setText Is Selectable ( builder . selectable ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog Description . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġicon Ġanimation ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . is Icon Animation ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . style Ġ!== ĠStyle . HEADER _ WITH _ TITLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Animation ( builder . context , Ġdialog Pic !! , Ġbuilder . icon Animation ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠShow Ġdialog Ġdivider Ġif Ġenabled ĊĠĠĠĠĠĠĠ Ġif Ġ( builder . is Dialog Divider ) Ġdialog Divider . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġreturn Ġcontent View ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Positive Button (): ĠButton Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpositive Button () Ġas ĠButton ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Negative Button (): ĠButton { ĊĠĠĠĠĠĠĠ Ġreturn Ġnegative Button () Ġas ĠButton ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Neutral Button (): ĠButton { ĊĠĠĠĠĠĠĠ Ġreturn Ġneutral Button () Ġas ĠButton ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġpositive Button () Ġ= Ġbuilder . dialog ?. getAction Button ( Which Button . POSITIVE ) ĊĠĠĠ Ġfun Ġnegative Button () Ġ= Ġbuilder . dialog ?. getAction Button ( Which Button . NEGATIVE ) ĊĠĠĠ Ġ@ Deprecated (" Neutral Ġbutton Ġis Ġdeprecated Ġin Ġthe Ġparent Ġlibrary : Ġhttps :// github . com / af ol le st ad / material - dialogs ") ĊĠĠĠ Ġfun Ġneutral Button () Ġ= Ġbuilder . dialog ?. getAction Button ( Which Button . NE UT R AL ) ĊĊĠĠĠ Ġclass ĠBuilder ( var Ġcontext : ĠContext ) Ġ: ĠI Builder Ġ{ ĊĊĠĠĠĠĠĠĠ Ġvar Ġdialog : ĠMaterial Dialog ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġstyle : ĠStyle ? ĊĠĠĠĠĠĠĠ Ġvar Ġduration : ĠDuration ? ĊĊĠĠĠĠĠĠĠ Ġ@ Anim Res ĊĠĠĠĠĠĠĠ Ġvar Ġicon Animation : ĠInt ĊĠĠĠĠĠĠĠ Ġvar Ġis Icon Animation : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Dialog Animation : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Dialog Divider : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Cancel able : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Scroll able : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Dark er Overlay : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġis Auto Dismiss : ĠBoolean ĊĠĠĠĠĠĠĠ Ġvar Ġheader Drawable : ĠDrawable ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġicon Drawable : ĠDrawable ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġprimary Color : ĠInt ĊĠĠĠĠĠĠĠ Ġvar Ġmax Lines : ĠInt ? ĊĠĠĠĠĠĠĠ Ġvar Ġtitle : ĠCharSequence ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġtype face : ĠType face ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġselect able : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġvar Ġdescription : ĠCharSequence ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġcustom View : ĠView ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġcustom View Padding Left Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġcustom View Padding Top Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġcustom View Padding Right Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġcustom View Padding Bottom Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġheader Scale Type : ĠScale Type ? ĊĠĠĠĠĠĠĠ Ġvar Ġpositive : ĠCharSequence ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġnegative : ĠCharSequence ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġneutral : ĠCharSequence ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġpositive Callback : ĠDialog Callback ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġdismiss : ĠF uck Dismiss Listener ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġnegative Callback : ĠDialog Callback ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġneutral Callback : ĠDialog Callback ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Custom View ( custom View : ĠView ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . custom View Ġ= Ġcustom View ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Left Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Right Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Top Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Bottom Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Custom View ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View : ĠView ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġleft : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtop : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġright : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbottom : ĠInt ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . custom View Ġ= Ġcustom View ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Left Ġ= Ġdp To Pixels ( context , Ġleft ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Right Ġ= Ġdp To Pixels ( context , Ġright ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Top Ġ= Ġdp To Pixels ( context , Ġtop ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcustom View Padding Bottom Ġ= Ġdp To Pixels ( context , Ġbottom ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Style ( style : ĠStyle ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . style Ġ= Ġstyle ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwith Icon Animation ( with Animation : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Icon Animation Ġ= Ġwith Animation !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwith Dialog Animation ( with Animation : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dialog Animation Ġ= Ġwith Animation !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwith Dialog Animation ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith Animation : ĠBoolean ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration : ĠDuration ? ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dialog Animation Ġ= Ġwith Animation !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . duration Ġ= Ġduration ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwith Divider ( with Divider : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dialog Divider Ġ= Ġwith Divider !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġwith Dark er Overlay ( with Dark er Overlay : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dark er Overlay Ġ= Ġwith Dark er Overlay !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Icon ( icon : ĠDrawable ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġicon Drawable Ġ= Ġicon ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Icon (@ Drawable Res Ġicon Res : ĠInt ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġicon Drawable Ġ= ĠResources Compat . get Drawable ( context . resources , Ġicon Res !! , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Icon Animation (@ Anim Res Ġanim Resource : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġicon Animation Ġ= Ġanim Resource ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠsetTitle (@ String Res Ġtitle Res : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetTitle ( context . getString ( title Res )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠsetTitle ( title : ĠCharSequence ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . title Ġ= Ġtitle ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Description (@ String Res Ġdescription Res : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Description ( context . getString ( description Res )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Description ( description : ĠCharSequence ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . description Ġ= Ġdescription ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Header Color (@ Color Res Ġcolor : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprimary Color Ġ= Ġget Color ( context , Ġcolor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Header Color Int (@ Color Int Ġcolor : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprimary Color Ġ= Ġcolor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Header Drawable ( drawable : ĠDrawable ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader Drawable Ġ= Ġdrawable ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Header Drawable (@ Drawable Res Ġdrawable Res : ĠInt ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader Drawable Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResources Compat . get Drawable ( context . resources , Ġdrawable Res !! , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Positive ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback : ĠDialog Callback ? ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpositive Ġ= Ġtext ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpositive Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Positive Text (@ String Res Ġbutton Text Res : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Positive Text ( context . getString ( button Text Res )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Positive Text ( button Text : ĠCharSequence ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpositive Ġ= Ġbutton Text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Positive ( callback : ĠDialog Callback ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpositive Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Negative ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback : ĠDialog Callback ? ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnegative Ġ= Ġtext ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnegative Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Negative Text (@ String Res Ġbutton Text Res : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Negative Text ( context . getString ( button Text Res )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Negative Text ( button Text : ĠCharSequence ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnegative Ġ= Ġbutton Text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Negative ( callback : ĠDialog Callback ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnegative Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Neutral ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback : ĠDialog Callback ? ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġneutral Ġ= Ġtext ĊĠĠĠĠĠĠĠĠĠĠĠ Ġneutral Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Neutral Text (@ String Res Ġbutton Text Res : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Neutral Text ( context . getString ( button Text Res )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Neutral Text ( button Text : ĠCharSequence ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġneutral Ġ= Ġbutton Text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Deprecated ("") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Neutral ( callback : ĠDialog Callback ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġneutral Callback Ġ= Ġcallback ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Header Scale Type ( scale Type : ĠScale Type ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader Scale Type Ġ= Ġscale Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Cancel able ( cancel able : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Cancel able Ġ= Ġcancel able !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Scroll able ( scroll able : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Scroll able Ġ= Ġscroll able !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġset Scroll able ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscroll able : ĠBoolean ?, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Lines : ĠInt ? ĊĠĠĠĠĠĠĠ Ġ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Scroll able Ġ= Ġscroll able !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . max Lines Ġ= Ġmax Lines ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġauto Dismiss ( dismiss : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Auto Dismiss Ġ= Ġdismiss !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Ui Thread ĊĠĠĠĠĠĠĠ Ġfun Ġbuild () Ġ= ĠMaterial Styled Dialog ( this ) ĊĊĠĠĠĠĠĠĠ Ġ@ Ui Thread ĊĠĠĠĠĠĠĠ Ġfun Ġshow (): ĠMaterial Styled Dialog Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmaterial Styled Dialog Ġ= Ġbuild () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmaterial Styled Dialog . show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġmaterial Styled Dialog ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠStyle . HEADER _ WITH _ ICON ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Icon Animation Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġicon Animation Ġ= ĠR . anim . md _ styled _ zoom _ in _ out ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dialog Animation Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dialog Divider Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Dark er Overlay Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Ġ= ĠDuration . NORMAL ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Cancel able Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprimary Color Ġ= Ġget Primary Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Scroll able Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Lines Ġ= Ġ 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Auto Dismiss Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader Scale Type Ġ= ĠScale Type . CENTER _ C ROP ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġbuilder . dialog Ġ= Ġinit Material Styled Dialog ( builder ) ĊĠĠĠ Ġ} Ċ }