/* Ċ Ġ* ĠCopyright Ġ 2 0 1 5 - 2 0 1 6 ĠC ody ĠGold berg Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . github . pref an atic . to oman ys ensors . ui . dialog Ċ Ċ import Ġandroid . app . AlertDialog Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . widget . EditText Ċ import Ġio . github . pref an atic . to oman ys ensors . R Ċ import Ġio . github . pref an atic . to oman ys ensors . data . realm . Category Ċ import Ġio . realm . Realm Ċ Ċ class ĠCategory Edit Dialog Ġ: ĠObservable Dialog Fragment < Category >() Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġcategory EditText : ĠEditText ĊĠĠĠ Ġprivate Ġvar Ġcategory : ĠCategory ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġval Ġresult : ĠCategory ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġcategory ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġpublic Ġfun Ġnew Instance ( category Name : ĠString ): ĠCategory Edit Dialog Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= ĠCategory Edit Dialog () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString (" category ", Ġcategory Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . arguments Ġ= Ġbundle ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġdialog ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= ĠAlertDialog . Builder ( activity ) ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( activity ). inflate ( R . layout . dialog _ category _ edit , Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġcategory EditText Ġ= Ġview . findViewById ( R . id . edit _ category ) Ġas ĠEditText ĊĊĠĠĠĠĠĠĠ ĠRealm . getInstance ( activity ). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcat Ġ= Ġit . where ( Category :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. equalTo (" name ", Ġarguments . getString (" category ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. findFirst () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( cat Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ= Ġit . copyFrom Realm ( cat ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( category Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory EditText . setText ( category ?. name ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ= ĠCategory () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġdialog . setView ( view ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( R . string . category _ positive , Ġthis ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Neutral Button ( R . string . category _ neutral , Ġthis ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle ( R . string . category _ title ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġdialog . create () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Positive () Ġ{ ĊĠĠĠĠĠĠĠ Ġcategory ?. name Ġ= Ġcategory EditText . text . toString () ĊĠĠĠĠĠĠĠ ĠRealm . getInstance ( activity ). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . execute Transaction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . copy To Realm OrUpdate ( category ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Neutral () Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Negative () Ġ{ ĊĠĠĠ Ġ} Ċ }