package Ġfragments Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Array Adapter Ċ import Ġandroid . widget . Image Button Ċ import Ġandroid . widget . TextView Ċ import Ġlibrary . Dialog s Ċ import Ġlibrary . Rule Ċ import Ġt gl . le comp te ur del ar ou lot te . MainActivity Ċ import Ġt gl . le comp te ur del ar ou lot te . R Ċ import Ġjava . util . ArrayList Ċ Ċ class ĠSee Rules : ĠSee Fragment () Ġ{ ĊĠĠĠ Ġoverride Ġvar ĠTAG : ĠString Ġ= Ġ" ===== ĠSE ER ULES Ġ=== ==" ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġrules : ĠArrayList < Rule > ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġad ap te ur Rules : ĠRules Adapter ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġselected Rule : ĠRule ĊĊĠĠĠ Ġinner Ġclass ĠRules Adapter ( context : ĠContext , Ġlist : ĠArrayList < Rule >) Ġ: ĠArray Adapter < Rule >( context , Ġ 0 , Ġlist ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġinner Ġclass ĠProject ViewHolder ( var Ġmsg : ĠTextView ?= Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget View ( position : ĠInt , ĠconvertView : ĠView ?, Ġparent : ĠViewGroup ): ĠView Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrule Ġ= Ġsuper . getItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġproject View : ĠView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠviewHolder : ĠProject ViewHolder ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( convert View Ġ== Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewHolder Ġ= ĠProject ViewHolder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproject View Ġ= ĠLayoutInflater . from ( context ). inflate ( R . layout . list _ rule _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewHolder . msg Ġ= Ġproject View . findViewById ( R . id . text _ rule ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproject View . tag Ġ= ĠviewHolder ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewHolder Ġ= ĠconvertView . tag Ġas ĠProject ViewHolder ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproject View Ġ= ĠconvertView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewHolder . msg !!. text Ġ= Ġrule . toString () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠtextView _ rule Ġ= Ġproject View . findViewById < TextView >( R . id . text _ rule ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrule _ text Ġ= Ġrule !!. getString ( context Ġas ĠMainActivity ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView _ rule . text Ġ= Ġrule _ text ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView _ rule . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( context Ġas ĠMainActivity ). current Rule Ġ= Ġrule ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( context Ġas ĠMainActivity ). open Fragment ( Rule Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġimage Button _ delete Ġ= Ġproject View . findViewById < Image Button >( R . id . delete _ image ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimage Button _ delete . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Rule Ġ= Ġrule ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDialog s . display Confirmation Dialog ( context , ĠgetString ( R . string . delete _ rule ) Ġ+ Ġ"\ n " Ġ+ Ġrule _ text , Ġ:: delete Rule ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġproject View ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġdelete Rule () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( context Ġas ĠMainActivity ). delete Rule Of Project ( selected Rule ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġad ap te ur Rules . notify DataSet Changed () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġrules Ġ= Ġcontext . current Project !!. my Rules ĊĠĠĠĠĠĠĠ Ġbutton _ add . text Ġ= ĠgetString ( R . string . rule ) ĊĠĠĠĠĠĠĠ Ġbutton _ add . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . current Rule Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . open Fragment ( Rule Fragment ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġad ap te ur Rules Ġ= Ġthis . Rules Adapter ( context , Ġrules ) ĊĠĠĠĠĠĠĠ ĠlistView . adapter Ġ= Ġad ap te ur Rules ĊĠĠĠĠĠĠĠ Ġcontext . title Ġ= Ġ"${ context . current Project . toString ()} Ġ-> Ġ${ context . getString ( R . string . my _ rules )}" ĊĠĠĠ Ġ} Ċ } Ċ