3 import java.util.ArrayList;
\r
4 import java.util.List;
\r
6 import android.app.Activity;
\r
7 import android.os.Bundle;
\r
8 import android.view.View;
\r
9 import android.view.View.OnClickListener;
\r
10 import android.widget.AdapterView;
\r
11 import android.widget.AdapterView.OnItemClickListener;
\r
12 import android.widget.AdapterView.OnItemSelectedListener;
\r
13 import android.widget.ArrayAdapter;
\r
14 import android.widget.Button;
\r
15 import android.widget.CheckBox;
\r
16 import android.widget.ListView;
\r
17 import android.widget.ScrollView;
\r
18 import android.widget.TimePicker;
\r
20 import com.td.db.Monitor;
\r
21 import com.td.db.MonitorDao;
\r
22 import com.td.utility.DateUtil;
\r
24 public class MonitorTimeActivity extends Activity {
\r
25 private CheckBox[] checkBoxes = new CheckBox[DateUtil.WEEK];
\r
27 private MonitorDao dao;
\r
28 private List<Monitor> list = new ArrayList<Monitor>();
\r
29 private Monitor curMonitor = null;
\r
31 private View mode = null;
\r
32 private ListView listView;
\r
33 private ScrollView scrollView;
\r
34 private TimePicker timePicker1;
\r
35 private TimePicker timePicker2;
\r
36 private Button addButton;
\r
37 private Button updateButton;
\r
38 private Button deleteButton;
\r
39 private Button confButton;
\r
40 private Button cancelButton;
\r
41 private Button closeButton;
\r
44 public void onCreate(Bundle savedInstanceState) {
\r
45 super.onCreate(savedInstanceState);
\r
46 setContentView(R.layout.monitor_time);
\r
48 listView = (ListView) findViewById(R.id.listView61);
\r
49 scrollView = (ScrollView) findViewById(R.id.scrollView61);
\r
50 timePicker1 = (TimePicker) findViewById(R.id.timePicker61);
\r
51 timePicker2 = (TimePicker) findViewById(R.id.timePicker62);
\r
52 addButton = (Button) findViewById(R.id.button61);
\r
53 updateButton = (Button) findViewById(R.id.button62);
\r
54 deleteButton = (Button) findViewById(R.id.button63);
\r
55 confButton = (Button) findViewById(R.id.button64);
\r
56 cancelButton = (Button) findViewById(R.id.button65);
\r
57 closeButton = (Button) findViewById(R.id.button66);
\r
59 for (int i = 0; i < DateUtil.WEEK; i++) {
\r
62 checkBox = (CheckBox) findViewById(R.id.checkBox61);
\r
65 checkBox = (CheckBox) findViewById(R.id.checkBox62);
\r
68 checkBox = (CheckBox) findViewById(R.id.checkBox63);
\r
71 checkBox = (CheckBox) findViewById(R.id.checkBox64);
\r
74 checkBox = (CheckBox) findViewById(R.id.checkBox65);
\r
77 checkBox = (CheckBox) findViewById(R.id.checkBox66);
\r
80 checkBox = (CheckBox) findViewById(R.id.checkBox67);
\r
86 checkBoxes[i] = checkBox;
\r
89 dao = MonitorDao.getInstance();
\r
92 listView.setOnItemClickListener(new OnItemClickListener() {
\r
93 public void onItemClick(AdapterView<?> parent, View view,
\r
94 int position, long id) {
\r
95 selectedItemView(parent, view, position, id);
\r
98 listView.setOnItemSelectedListener(new OnItemSelectedListener() {
\r
99 public void onItemSelected(AdapterView<?> parent, View view,
\r
100 int position, long id) {
\r
101 selectedItemView(parent, view, position, id);
\r
104 public void onNothingSelected(AdapterView<?> arg0) {
\r
109 addButton.setOnClickListener(new OnClickListener() {
\r
110 public void onClick(View view) {
\r
115 updateButton.setOnClickListener(new OnClickListener() {
\r
116 public void onClick(View view) {
\r
117 clickUpdateButton();
\r
121 deleteButton.setOnClickListener(new OnClickListener() {
\r
122 public void onClick(View view) {
\r
123 clickDeleteButton();
\r
127 cancelButton.setOnClickListener(new OnClickListener() {
\r
128 public void onClick(View view) {
\r
129 clickCancelButton();
\r
133 confButton.setOnClickListener(new OnClickListener() {
\r
134 public void onClick(View view) {
\r
139 closeButton.setOnClickListener(new OnClickListener() {
\r
140 public void onClick(View view) {
\r
141 clickCloseButton();
\r
146 private void updateList() {
\r
147 list = dao.search();
\r
148 ArrayAdapter<Monitor> adapter = new ArrayAdapter<Monitor>(this,
\r
149 android.R.layout.simple_list_item_1, list);
\r
150 listView.setAdapter(adapter);
\r
154 protected void onStart() {
\r
160 private void selectedItemView(AdapterView<?> parent, View view,
\r
161 int position, long id) {
\r
162 curMonitor = list.get(position);
\r
163 // String text = curMonitor.getText();
\r
164 // editText.setText(text);
\r
165 setItems(curMonitor);
\r
167 setStatus(listView);
\r
170 private void clickAddButton() {
\r
171 // editText.setText("");
\r
172 Monitor monitor = Monitor.getMonitor();
\r
176 setStatus(addButton);
\r
177 // changedEditText();
\r
180 private void clickUpdateButton() {
\r
181 setStatus(updateButton);
\r
182 // changedEditText();
\r
185 private void clickDeleteButton() {
\r
186 setStatus(deleteButton);
\r
189 private void clickCancelButton() {
\r
191 setStatus(cancelButton);
\r
194 private void clickConfButton() {
\r
198 if (mode == addButton) {
\r
199 monitor = getMonitor(-1);
\r
202 } else if (mode == updateButton) {
\r
203 monitor = getMonitor(curMonitor.getId());
\r
206 } else if (mode == deleteButton) {
\r
207 id = curMonitor.getId();
\r
212 setStatus(confButton);
\r
215 private void clickCloseButton() {
\r
216 setStatus(closeButton);
\r
220 private void setStatus(View view) {
\r
221 if (view == null) {
\r
222 listView.setEnabled(true);
\r
223 scrollView.setVisibility(View.GONE);
\r
224 setItemsEnabled(false);
\r
225 addButton.setVisibility(View.VISIBLE);
\r
226 addButton.setEnabled(true);
\r
227 updateButton.setVisibility(View.VISIBLE);
\r
228 updateButton.setEnabled(false);
\r
229 deleteButton.setVisibility(View.VISIBLE);
\r
230 deleteButton.setEnabled(false);
\r
231 confButton.setVisibility(View.GONE);
\r
232 confButton.setEnabled(true);
\r
233 cancelButton.setVisibility(View.GONE);
\r
234 closeButton.setVisibility(View.VISIBLE);
\r
235 } else if (view == listView) {
\r
236 scrollView.setVisibility(View.VISIBLE);
\r
237 setItemsEnabled(false);
\r
238 addButton.setEnabled(false);
\r
239 updateButton.setEnabled(true);
\r
240 deleteButton.setEnabled(true);
\r
241 cancelButton.setVisibility(View.VISIBLE);
\r
242 closeButton.setVisibility(View.GONE);
\r
243 } else if (view == addButton) {
\r
244 listView.setEnabled(false);
\r
245 scrollView.setVisibility(View.VISIBLE);
\r
246 setItemsEnabled(true);
\r
247 addButton.setVisibility(View.GONE);
\r
248 updateButton.setVisibility(View.GONE);
\r
249 deleteButton.setVisibility(View.GONE);
\r
250 confButton.setVisibility(View.VISIBLE);
\r
251 cancelButton.setVisibility(View.VISIBLE);
\r
252 closeButton.setVisibility(View.GONE);
\r
253 } else if (view == updateButton) {
\r
254 setItemsEnabled(true);
\r
255 addButton.setVisibility(View.GONE);
\r
256 updateButton.setVisibility(View.GONE);
\r
257 deleteButton.setVisibility(View.GONE);
\r
258 confButton.setVisibility(View.VISIBLE);
\r
259 cancelButton.setVisibility(View.VISIBLE);
\r
260 closeButton.setVisibility(View.GONE);
\r
261 } else if (view == deleteButton) {
\r
262 addButton.setVisibility(View.GONE);
\r
263 updateButton.setVisibility(View.GONE);
\r
264 deleteButton.setVisibility(View.GONE);
\r
265 confButton.setVisibility(View.VISIBLE);
\r
266 cancelButton.setVisibility(View.VISIBLE);
\r
267 closeButton.setVisibility(View.GONE);
\r
268 } else if (view == confButton) {
\r
270 } else if (view == cancelButton) {
\r
272 } else if (view == closeButton) {
\r
278 private void setItemsEnabled(boolean enabled) {
\r
279 //listView.setEnabled(enabled);
\r
280 scrollView.setEnabled(enabled);
\r
281 timePicker1.setEnabled(enabled);
\r
282 timePicker2.setEnabled(enabled);
\r
283 for (int i = 0; i < DateUtil.WEEK; i++) {
\r
284 checkBoxes[i].setEnabled(enabled);
\r
288 private void setItems(Monitor monitor){
\r
289 int from = monitor.getFrom();
\r
290 int to = monitor.getTo();
\r
292 timePicker1.setCurrentHour(from / 100);
\r
293 timePicker1.setCurrentMinute(from % 100);
\r
294 timePicker2.setCurrentHour(to / 100);
\r
295 timePicker2.setCurrentMinute(to % 100);
\r
296 for (int i = 0; i < DateUtil.WEEK; i++) {
\r
297 checkBoxes[i].setChecked(monitor.getWeek(i));
\r
301 private Monitor getMonitor(int id){
\r
302 int h1 = timePicker1.getCurrentHour();
\r
303 int m1 = timePicker1.getCurrentMinute();
\r
304 int h2 = timePicker2.getCurrentHour();
\r
305 int m2 = timePicker2.getCurrentMinute();
\r
306 int hm1 = DateUtil.getHm(h1, m1);
\r
307 int hm2 = DateUtil.getHm(h2, m2);
\r
309 Monitor monitor = new Monitor(id, hm1, hm2);
\r
310 for (int i = 0; i < DateUtil.WEEK; i++){
\r
311 monitor.setWeek(i, checkBoxes[i].isChecked());
\r
317 // private int getCheckBoxIndex(CompoundButton checkBox) {
\r
318 // for (int i = 0; i < checkBoxes.length; i++) {
\r
319 // if (checkBoxes[i] == checkBox) {
\r