package Ġcom . app . ly ng ua . views . Categories Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġandroidx . navigation . fragment . find Nav Controller Ċ import Ġcom . app . ly ng ua . R Ċ import Ġcom . app . ly ng ua . controllers . Category Controller Ċ import Ġcom . app . ly ng ua . models . words . Word Ċ import Ġkotlinx . android . synt hetic . main . fragment _ add _ word .* Ċ import Ġkotlinx . android . synt hetic . main . fragment _ create _ album . button _ cancel Ċ import Ġkotlinx . android . synt hetic . main . fragment _ create _ album . button _ confirm Ċ Ċ class ĠAdd Word ( arg : ĠUpdate Category Args ) Ġ: ĠDialog Fragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcategory Controller : ĠCategory Controller ĊĠĠĠ Ġvar Ġargs Ġ= Ġarg ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ add _ word , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġcategory Controller Ġ= ĠCategory Controller ( require Context ()) ĊĊĠĠĠĠĠĠĠ Ġ// Cancel Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton _ cancel . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Confirm Ġbutton Ġ- ĠCheck Ġif Ġtext Ġis Ġempty ĊĠĠĠĠĠĠĠ Ġbutton _ confirm . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġword Ġ= Ġword _ text . text . toString (). toLowerCase () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( word . isNotEmpty ()){ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtemp List : ĠList < String > Ġ= Ġempty List () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Word Ġ= ĠWord ( 0 , Ġtemp List , Ġword ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġupdated List Ġ: ĠMutable List < Word > Ġ= Ġargs . category Ch osen . words List . to Mutable List () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdated List . add ( new Word ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġcategory Controller . update Category ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . category Ch osen . id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . category Ch osen . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . category Ch osen . num Words , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdated List , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . category Ch osen . session Number , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . category Ch osen . goal ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( require Context (), Ġ" Added ĠWord : Ġ$ word ", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfind Nav Controller (). navigate ( R . id . action _ update Category Fragment _ to _ practice ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ