OSDN Git Service

T28114
[everclip/source.git] / workspace / EverClip / src / com / yuji / ec / NoteTypeListActivity.java
1 package com.yuji.ec;\r
2 \r
3 import java.util.ArrayList;\r
4 import java.util.List;\r
5 \r
6 import android.content.Intent;\r
7 import android.os.Bundle;\r
8 import android.view.View;\r
9 import android.widget.AdapterView;\r
10 import android.widget.AdapterView.OnItemClickListener;\r
11 import android.widget.LinearLayout;\r
12 import android.widget.ListView;\r
13 import android.widget.TextView;\r
14 import android.widget.Toast;\r
15 \r
16 import com.yuji.ec.common.Constant;\r
17 import com.yuji.ec.db.INoteItem;\r
18 import com.yuji.ec.db.NoteListItem;\r
19 import com.yuji.ec.task.NoteTypeListTask;\r
20 import com.yuji.ec.utility.AsyncTaskCommand;\r
21 import com.yuji.ec.utility.BaseActivity;\r
22 import com.yuji.ec.utility.EditPrefUtil;\r
23 import com.yuji.ec.utility.EvernoteUtil;\r
24 import com.yuji.ec.utility.EvernoteUtil.Error;\r
25 \r
26 public class NoteTypeListActivity extends BaseActivity {\r
27         private EditPrefUtil pref = new EditPrefUtil(this);\r
28 \r
29         private LinearLayout layoutView = null;\r
30         private TextView messageText = null;\r
31         private ListView listView = null;\r
32 \r
33         @Override\r
34         public void onCreate(Bundle savedInstanceState) {\r
35                 super.onCreate(savedInstanceState);\r
36                 setContentView(R.layout.note_type_list);\r
37 \r
38                 layoutView = (LinearLayout) this.findViewById(R.id.noteTypeLayout);\r
39                 messageText = (TextView) this\r
40                                 .findViewById(R.id.noteTypeConfirmDeleteMsg);\r
41                 listView = (ListView) this.findViewById(R.id.noteTypeView);\r
42 \r
43                 listView.setOnItemClickListener(new OnItemClickListener() {\r
44                         public void onItemClick(AdapterView<?> parent, View view,\r
45                                         int position, long id) {\r
46                                 listViewOnItemClickListener(parent, view, position, id);\r
47                         }\r
48                 });\r
49 \r
50                 // updateList();\r
51                 int noteItemType = pref.getInt(Constant.PREF_NOTE_ITEM_TYPE_TMP,\r
52                                 Constant.NOTE_ITEM_TYPE_ALL);\r
53                 NoteTypeListTask task = new NoteTypeListTask(this, noteItemType);\r
54                 AsyncTaskCommand command = new AsyncTaskCommand(this, task);\r
55                 command.setTitle(getString(R.string.noteTypeDialogTitle));\r
56                 command.setButtonTitle(getString(R.string.cancelButton));\r
57                 command.execute("");\r
58                 \r
59                 setStatus();\r
60         }\r
61 \r
62         private void listViewOnItemClickListener(AdapterView<?> parent, View view,\r
63                         int position, long id) {\r
64                 ListView listView = (ListView) parent;\r
65 \r
66                 NoteListItem selectedItem = (NoteListItem) listView\r
67                                 .getItemAtPosition(position);\r
68                 INoteItem item = selectedItem.getItem();\r
69 \r
70                 String guid = item.getGuid();\r
71                 String title = item.getText();\r
72 \r
73                 Intent data = new Intent();\r
74                 data.putExtra(Constant.EXTRA_GUID, guid);\r
75                 data.putExtra(Constant.EXTRA_TITLE, title);\r
76                 setResult(RESULT_OK, data);\r
77                 finish();\r
78         }\r
79 \r
80         public void done(Error errorCode, List<INoteItem> nList) {\r
81                 if (errorCode != null && !errorCode.equals(Error.NONE)) {\r
82                         EvernoteUtil util = EvernoteUtil.getInstance();\r
83                         Toast.makeText(this, util.getErrorMessage(this, errorCode),\r
84                                         Toast.LENGTH_LONG).show();\r
85                 }\r
86 \r
87                 if (nList == null) {\r
88                         return;\r
89                 }\r
90 \r
91                 List<NoteListItem> itemList = new ArrayList<NoteListItem>();\r
92                 for (INoteItem iItem : nList) {\r
93                         NoteListItem item = new NoteListItem(iItem.getText(), iItem);\r
94                         itemList.add(item);\r
95                 }\r
96 \r
97                 NoteListViewArrayAdapter adapter = new NoteListViewArrayAdapter(this,\r
98                                 R.layout.simple_list_item_1, itemList);\r
99                 listView.setAdapter(adapter);\r
100 \r
101                 setStatus();\r
102         }\r
103 \r
104         private void setStatus() {\r
105                 layoutView.setVisibility(View.GONE);\r
106         }\r
107 }\r