package Ġcom . bos cat ov . scheduler cw . view . ui . dialog . add _ project Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . Editable Ċ import Ġandroid . text . Text Watcher Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġandroidx . lifecycle . ViewModel Providers Ċ import Ġandroidx . local broadcast manager . content . Local Broadcast Manager Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcom . bos cat ov . scheduler cw . R Ċ import Ġcom . bos cat ov . scheduler cw . data . entity . Project Ċ import Ġcom . bos cat ov . scheduler cw . view . adapter . add _ project . Add Project Adapter Ċ import Ġcom . bos cat ov . scheduler cw . view . view model . add _ project . Add Project ViewModel Ċ import Ġkotlinx . android . synt hetic . main . dialog _ add _ project .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġb os cat ov Ġon Ġ 1 4 . 0 4 . 2 0 1 9 . Ċ Ġ*/ Ċ Ċ class ĠAdd Project Dialog Fragment Ġ: ĠDialog Fragment (), ĠAdd Project Adapter . Callback Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠgetInstance (): ĠDialog Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠAdd Project Dialog Fragment () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġproject ViewModel : ĠAdd Project ViewModel ĊĠĠĠ Ġprivate Ġval Ġadapter Ġ= ĠAdd Project Adapter ( mutable ListOf ()) ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġproject ViewModel Ġ= ĠViewModel Providers . of ( this ). get ( Add Project ViewModel :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . dialog _ add _ project , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġproject ViewModel . show Projects . observe ( this , ĠObserver Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . set Projects ( it ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġdialog Add Project RV . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĠLinearLayoutManager ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġthis @ Add Project Dialog Fragment . adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdialog Add Project ET . add TextChanged Listener ( object : ĠText Watcher Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġbefore : ĠInt , Ġcount : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproject ViewModel . on TextChanged ( s . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġafter TextChanged ( s : ĠEdit able ?) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġbefore TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġcount : ĠInt , Ġafter : ĠInt ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġadapter . setOn Project Select Listener ( this ) ĊĠĠĠĠĠĠĠ Ġproject ViewModel . on Load Projects () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Project Select ( project : ĠProject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent (" com . bos cat ov . scheduler cw . add _ project ") ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" PROJECT _ ID ", Ġproject . projectId ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra (" PROJECT _ NAME ", Ġproject . projectName ) ĊĠĠĠĠĠĠĠ ĠLocal Broadcast Manager . getInstance ( require Context ()). send Broadcast ( intent ) ĊĠĠĠĠĠĠĠ Ġdismiss () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġdialog . window ?. setLayout ( 8 0 0 , Ġ 1 2 0 0 ) ĊĠĠĠ Ġ} Ċ }