]>
Commit | Line | Data |
---|---|---|
a564ac2d P |
1 | package ro.ieval.unical; |
2 | ||
36c4a576 | 3 | import android.app.AlertDialog; |
a564ac2d | 4 | import android.app.ListActivity; |
36c4a576 P |
5 | import android.content.Context; |
6 | import android.content.Intent; | |
7 | import android.database.SQLException; | |
a564ac2d P |
8 | import android.os.Bundle; |
9 | import android.view.Menu; | |
10 | import android.view.MenuInflater; | |
539deec9 MG |
11 | import android.view.MenuItem; |
12 | import android.widget.DatePicker; | |
13 | import android.widget.TimePicker; | |
36c4a576 | 14 | |
14986c26 P |
15 | import java.util.*; |
16 | import java.util.Calendar; | |
a564ac2d P |
17 | |
18 | public 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())); | |
14986c26 P |
39 | GregorianCalendar gc=new GregorianCalendar(); |
40 | gc.setTime(d); | |
41 | datePicker.init(gc.get(Calendar.YEAR),gc.get(Calendar.MONTH),gc.get(Calendar.DAY_OF_MONTH),new DatePicker.OnDateChangedListener() { | |
36c4a576 P |
42 | @Override |
43 | public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) { | |
44 | } | |
45 | }); | |
14986c26 P |
46 | timePicker.setCurrentHour(gc.get(Calendar.HOUR_OF_DAY)); |
47 | timePicker.setCurrentMinute(gc.get(Calendar.MINUTE)); | |
36c4a576 | 48 | |
a564ac2d P |
49 | } |
50 | ||
51 | @Override | |
52 | public boolean onCreateOptionsMenu(final Menu menu) { | |
53 | final MenuInflater inflater = getMenuInflater(); | |
54 | inflater.inflate(R.menu.add_alarm, menu); | |
55 | return true; | |
56 | } | |
539deec9 MG |
57 | |
58 | @Override | |
59 | public boolean onOptionsItemSelected(final MenuItem item){ | |
60 | switch(item.getItemId()){ | |
61 | case R.id.save: | |
62 | final DatePicker datePicker = (DatePicker) findViewById(R.id.datePicker); | |
63 | final TimePicker timePicker = (TimePicker) findViewById(R.id.timePicker); | |
64 | final GregorianCalendar calendar = new GregorianCalendar(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth(), timePicker.getCurrentHour(), timePicker.getCurrentMinute(), 0); | |
36c4a576 | 65 | try { |
7bd01d93 | 66 | Utils.addAlarm((Application) getApplication(), calendar.getTimeInMillis(), event._id); |
36c4a576 P |
67 | finish(); |
68 | }catch(SQLException e) { | |
69 | AlertDialog.Builder builder = new AlertDialog.Builder(this); | |
70 | builder.setMessage(R.string.alarm_error) | |
71 | .setTitle(R.string.alarm_error_title); | |
72 | AlertDialog dialog = builder.create(); | |
73 | dialog.show(); | |
74 | } | |
75 | ||
539deec9 MG |
76 | return true; |
77 | default: | |
78 | return false; | |
79 | } | |
80 | } | |
a564ac2d | 81 | } |