Some improvements
[unical.git] / src / ro / ieval / unical / AddAlarmActivity.java
CommitLineData
a564ac2d
P
1package ro.ieval.unical;
2
36c4a576 3import android.app.AlertDialog;
a564ac2d 4import android.app.ListActivity;
36c4a576
P
5import android.content.Context;
6import android.content.Intent;
7import android.database.SQLException;
a564ac2d
P
8import android.os.Bundle;
9import android.view.Menu;
10import android.view.MenuInflater;
539deec9
MG
11import android.view.MenuItem;
12import android.widget.DatePicker;
13import android.widget.TimePicker;
36c4a576
P
14
15import java.util.Date;
539deec9 16import java.util.GregorianCalendar;
a564ac2d
P
17
18public class AddAlarmActivity extends ListActivity {
539deec9 19 public static final String EXTRA_EVENT = "event";
36c4a576
P
20 private static Event event;
21
22 public static void addAlarm(final Context c, final Event e) {
23 final Intent i = new Intent(c,AddAlarmActivity.class);
24 i.putExtra(AddAlarmActivity.EXTRA_EVENT,e);
25 event=e;
26 c.startActivity(i);
27 }
28
539deec9 29
a564ac2d
P
30 @Override
31 protected void onCreate(final Bundle savedInstanceState) {
32 super.onCreate(savedInstanceState);
33 setContentView(R.layout.add_alarm);
34 setTitle(R.string.add_alarm);
36c4a576
P
35 event = getIntent().hasExtra(EXTRA_EVENT) ? (Event) getIntent().getParcelableExtra(EXTRA_EVENT) : new Event();
36 final DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
37 final TimePicker timePicker = (TimePicker) findViewById(R.id.timePicker);
38 Date d=new Date(Math.max(event.dtstart,GregorianCalendar.getInstance().getTimeInMillis()));
39 datePicker.init(d.getYear()+1900,d.getMonth(),d.getDay(),new DatePicker.OnDateChangedListener() {
40 @Override
41 public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
42 }
43 });
44 timePicker.setCurrentHour(d.getHours());
45 timePicker.setCurrentMinute(d.getMinutes());
46
a564ac2d
P
47 }
48
49 @Override
50 public boolean onCreateOptionsMenu(final Menu menu) {
51 final MenuInflater inflater = getMenuInflater();
52 inflater.inflate(R.menu.add_alarm, menu);
53 return true;
54 }
539deec9
MG
55
56 @Override
57 public boolean onOptionsItemSelected(final MenuItem item){
58 switch(item.getItemId()){
59 case R.id.save:
60 final DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker);
61 final TimePicker timePicker = (TimePicker) findViewById(R.id.timePicker);
62 final GregorianCalendar calendar = new GregorianCalendar(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(), timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0);
36c4a576
P
63 try {
64 Utils.addAlarm((Application) getApplication(), calendar.getTimeInMillis(), getIntent().getLongExtra(EXTRA_EVENT, 0));
65 finish();
66 }catch(SQLException e) {
67 AlertDialog.Builder builder = new AlertDialog.Builder(this);
68 builder.setMessage(R.string.alarm_error)
69 .setTitle(R.string.alarm_error_title);
70 AlertDialog dialog = builder.create();
71 dialog.show();
72 }
73
539deec9
MG
74 return true;
75 default:
76 return false;
77 }
78 }
a564ac2d 79}
This page took 0.015361 seconds and 4 git commands to generate.