OSDN Git Service

https://osdn.net/cvs/view/gokigen/MeMoMa/ から コピーしてくる。(+API27でビルドできるよう、少し調整。)
[gokigen/MeMoMa.git] / app / src / main / java / jp / sourceforge / gokigen / memoma / dialogs / TextEditReceiver.java
1 package jp.sourceforge.gokigen.memoma.dialogs;
2
3 import android.app.Activity;
4 import android.content.SharedPreferences;
5 import android.preference.PreferenceManager;
6 import android.widget.TextView;
7
8 /**
9  *   テキストデータの反映
10  * 
11  * @author MRSa
12  *
13  */
14 public class TextEditReceiver implements TextEditDialog.ITextEditResultReceiver
15 {
16         private Activity parent;
17         private String  textId;
18         private int     textResId;
19         
20     /**
21      *    コンストラクタ
22      * 
23      */
24         public TextEditReceiver(Activity argument, String prefId, int resId)
25     {
26         textId = prefId;
27         parent = argument;
28         textResId = resId;
29     }
30         
31         /**
32          *   データの更新
33          * 
34          */
35     public boolean finishTextEditDialog(String message)
36     {
37         if ((message == null)||(message.length() == 0))
38         {
39             // データが入力されていなかったので、何もしない。
40                 return (false);
41         }
42         
43         // 文字列を記録
44         SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(parent);
45         SharedPreferences.Editor editor = preferences.edit();
46         editor.putString(textId, message);
47         editor.apply();
48
49         if (textResId != 0)
50         {
51             // 画面表示の更新
52                 final TextView infoText = parent.findViewById(textResId);
53                 infoText.setText(message);
54         }
55         else
56         {
57                 // リソースIDが指定されていない場合は、タイトルを更新する
58                 parent.setTitle(message);
59         }
60         
61         return (true);
62     }
63
64     /**
65      *   データを更新しないとき...
66      */
67     public boolean cancelTextEditDialog()
68     {
69         return (false);
70     }
71 }