package Ġcom . g apps . one one . utils . bottom _ menu Ċ Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . annotation . String Res Ċ import Ġcom . g apps . one one . utils . bottom _ menu . models . Menu Data Item Ċ Ċ internal Ġclass ĠMenu Data Ġ{ Ċ ĉ var Ġtitle : ĠString ? Ġ= Ġnull Ċ ĉ @ String Res Ċ ĉ var Ġtitle Res : ĠInt ? Ġ= Ġnull ĊĊ ĉ @ Drawable Res Ċ ĉ var Ġbutton Icon : ĠInt ? Ġ= Ġnull Ċ ĉ var Ġbutton : ĠString ? Ġ= Ġnull Ċ ĉ @ String Res Ċ ĉ var Ġbutton Res : ĠInt ? Ġ= Ġnull ĊĊ ĉ @ String Res Ċ ĉ var Ġcancel Text : ĠInt ? Ġ= Ġnull ĊĊ ĉ val Ġdata : ĠMutable List < Menu Data Item > Ġ= Ġmutable ListOf () ĊĊ ĉ fun Ġadd Menu ( menuItem : ĠMenu Data Item ) Ġ{ Ċĉ ĉ data . add ( menuItem ) Ċ ĉ } ĊĊ ĉ fun Ġadd Menu (@ Drawable Res Ġicon : ĠInt , Ġ@ String Res Ġtext : ĠInt , Ġid : ĠInt ? Ġ= Ġnull ) Ġ{ Ċĉ ĉ data . add ( Menu Data Item (). apply Ġ{ Ċĉĉ ĉ id ?. let Ġ{ Ġthis . id Ġ= Ġit Ġ} ĊĊĉĉ ĉ this . icon Ġ= Ġicon Ċĉĉ ĉ this . title Res Ġ= Ġtext Ċĉ ĉ }) Ċ ĉ } ĊĊ ĉ fun Ġadd Menu (@ Drawable Res Ġicon : ĠInt , Ġtext : ĠString ) Ġ{ Ċĉ ĉ data . add ( Menu Data Item (). apply Ġ{ Ċĉĉ ĉ this . icon Ġ= Ġicon Ċĉĉ ĉ this . title String Ġ= Ġtext Ċĉ ĉ }) Ċ ĉ } ĊĊ ĉ fun Ġadd Menu ( text : ĠString , Ġid : ĠInt ? Ġ= Ġnull ) Ġ{ Ċĉ ĉ data . add ( Menu Data Item (). apply Ġ{ Ċĉĉ ĉ this . icon Ġ= Ġicon Ċĉĉ ĉ this . title String Ġ= Ġtext Ċĉ ĉ }) Ċ ĉ } ĊĊ ĉ fun Ġadd All ( data : ĠList < Menu Data Item >) Ġ{ Ċĉ ĉ this . data . addAll ( data ) Ċ ĉ } Ċ }