package Ġco . zs mb . material drawer kt example . custom items . overflow Ċ Ċ import Ġandroid . support . v 7 . widget . PopupMenu Ċ import Ġandroid . view . MenuItem Ċ import Ġco . zs mb . material drawer kt . builders . Builder Ċ import Ġco . zs mb . material drawer kt . drawer items . base . Base Describe able Drawer Item Kt Ċ Ċ // ĠFunctions Ġso Ġthat Ġthe Ġitem Ġcan Ġbe Ġused Ġin Ġthe Ġappropriate Ġparts Ġof Ġthe ĠDSL Ċ // Ġthe Ġexact Ġsame Ġway Ġas Ġa Ġlibrary Ġitem Ċ Ċ // ĠFor Ġuse Ġwith Ġno Ġparams Ġor ĠString Ġparams Ċ fun ĠBuilder . overflow MenuItem ( ĊĠĠĠĠĠĠĠ Ġname : ĠString Ġ= Ġ"", ĊĠĠĠĠĠĠĠ Ġdescription : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġsetup : ĠOverflow Menu Drawer Item Kt . () Ġ-> ĠUnit ): ĠOverflow Menu Drawer Item Ġ{ ĊĠĠĠ Ġval Ġitem Ġ= ĠOverflow Menu Drawer Item Kt () ĊĠĠĠ Ġitem . name Ġ= Ġname ĊĠĠĠ Ġdescription ?. let Ġ{ Ġitem . description Ġ= Ġit Ġ} ĊĠĠĠ Ġitem . setup () ĊĠĠĠ Ġreturn Ġitem . build (). apply Ġ{ Ġattach Item ( this ) Ġ} Ċ } Ċ Ċ // ĠFor Ġuse Ġwith ĠString Ġresource Ġparams Ċ fun ĠBuilder . overflow MenuItem ( ĊĠĠĠĠĠĠĠ Ġname Res : ĠInt , ĊĠĠĠĠĠĠĠ Ġdescription Res : ĠInt , ĊĠĠĠĠĠĠĠ Ġsetup : ĠOverflow Menu Drawer Item Kt . () Ġ-> ĠUnit ): ĠOverflow Menu Drawer Item Ġ{ ĊĠĠĠ Ġval Ġitem Ġ= ĠOverflow Menu Drawer Item Kt () ĊĠĠĠ Ġitem . name Res Ġ= Ġname Res ĊĠĠĠ Ġitem . description Res Ġ= Ġdescription Res ĊĠĠĠ Ġitem . setup () ĊĠĠĠ Ġreturn Ġitem . build (). apply Ġ{ Ġattach Item ( this ) Ġ} Ċ } Ċ Ċ // ĠWrapper Ġclass Ġfor Ġnice ĠDSL Ġaccess Ċ class ĠOverflow Menu Drawer Item Kt Ġ: ĠBase Describe able Drawer Item Kt () Ġ{ ĊĊĠĠĠ Ġ// ĠBuilder ĊĊĠĠĠ Ġprivate Ġval Ġitem Ġ= ĠOverflow Menu Drawer Item () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . setItem ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbuild () Ġ= Ġitem ĊĊĠĠĠ Ġ// ĠProps Ġand Ġmethods ĊĊĠĠĠ Ġvar Ġmenu ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġitem . menu ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem . menu Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Dismiss ( handler : Ġ( PopupMenu ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġitem . on Dismiss Listener Ġ= ĠPopup Menu . On Dismiss Listener Ġ{ Ġhandler ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon MenuItem Click ( handler : Ġ( MenuItem ) Ġ-> ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġitem . on MenuItem ClickListener Ġ= ĠPopup Menu . On MenuItem ClickListener Ġ{ Ġhandler ( it ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ