]>
Commit | Line | Data |
---|---|---|
222ca38d PT |
1 | package ro.ieval.unical; |
2 | ||
f6f4503f | 3 | import java.text.DateFormat; |
99658f57 | 4 | import java.text.SimpleDateFormat; |
222ca38d | 5 | import java.util.Date; |
8a08d036 | 6 | import java.util.Locale; |
222ca38d PT |
7 | |
8 | import android.app.Activity; | |
5cf4714f | 9 | import android.content.Context; |
46e6c000 | 10 | import android.content.Intent; |
222ca38d | 11 | import android.os.Bundle; |
539deec9 | 12 | import android.view.LayoutInflater; |
222ca38d PT |
13 | import android.view.Menu; |
14 | import android.view.MenuInflater; | |
46e6c000 | 15 | import android.view.MenuItem; |
539deec9 MG |
16 | import android.view.View; |
17 | import android.view.ViewGroup; | |
7bd01d93 | 18 | import android.widget.*; |
222ca38d | 19 | |
5cf4714f | 20 | public class DisplayEventActivity extends Activity { |
539deec9 MG |
21 | private final class DeleteListener implements View.OnClickListener { |
22 | private final long time; | |
23 | DeleteListener(final long time){ | |
24 | this.time=time; | |
25 | } | |
26 | ||
27 | @Override public void onClick(final View v){ | |
28 | Utils.deleteAlarm((Application) getApplication(), time); | |
29 | setAdapter(); | |
30 | } | |
31 | } | |
32 | ||
39f0cac1 | 33 | public static final String EXTRA_EVENT = "event"; |
f580909c | 34 | private Event event; |
dc52b261 | 35 | private final DeleteEventDialog d=new DeleteEventDialog(); |
39f0cac1 | 36 | |
539deec9 MG |
37 | private void setAdapter(){ |
38 | final ListView alarms = (ListView) findViewById(R.id.alarm_list); | |
39 | alarms.setAdapter(new ArrayAdapter<Long>(this, R.layout.alarm_row_layout, Utils.getAlarmsByEvent((Application) getApplication(), event._id)){ | |
40 | @Override public View getView(final int position, final View convertView, final ViewGroup parent) { | |
41 | final LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); | |
42 | final View rowView = inflater.inflate(R.layout.alarm_row_layout, parent, false); | |
43 | final TextView date = (TextView) rowView.findViewById(R.id.alarm_datetime); | |
7bd01d93 | 44 | final ImageButton delete = (ImageButton) rowView.findViewById(R.id.alarm_delete); |
539deec9 | 45 | delete.setOnClickListener(new DeleteListener(getItem(position))); |
f6f4503f | 46 | date.setText(DateFormat.getDateTimeInstance().format(getItem(position))); |
539deec9 MG |
47 | |
48 | return rowView; | |
49 | } | |
50 | }); | |
51 | } | |
52 | ||
86ad3786 | 53 | public static void displayEvent(final Context context, final long id){ |
5cf4714f | 54 | final Intent i=new Intent(context,DisplayEventActivity.class); |
86ad3786 | 55 | i.putExtra(DisplayEventActivity.EXTRA_EVENT, id); |
5cf4714f MG |
56 | context.startActivity(i); |
57 | } | |
58 | ||
222ca38d | 59 | @Override |
86ad3786 MG |
60 | protected void onStart() { |
61 | super.onStart(); | |
62 | event=getIntent().hasExtra(EXTRA_EVENT) ? Event.getEventById(this, getIntent().getLongExtra(EXTRA_EVENT, 0)) : new Event(); | |
5cf4714f | 63 | setContentView(R.layout.event_view); |
f580909c | 64 | setTitle(event.title); |
070d3ab2 | 65 | |
8a08d036 MG |
66 | final TextView startDay= (TextView) findViewById(R.id.startday); |
67 | final TextView endDay= (TextView) findViewById(R.id.endday); | |
68 | final TextView startDate= (TextView) findViewById(R.id.startdate); | |
69 | final TextView endDate= (TextView) findViewById(R.id.enddate); | |
70 | final TextView startTime= (TextView) findViewById(R.id.starttime); | |
71 | final TextView endTime= (TextView) findViewById(R.id.endtime); | |
539deec9 | 72 | final TextView description= (TextView) findViewById(R.id.event_view_description);; |
070d3ab2 | 73 | |
f580909c MG |
74 | final Date start=new Date(event.dtstart); |
75 | final Date end=new Date(event.dtend); | |
f6f4503f MG |
76 | final DateFormat dateFormat = DateFormat.getDateInstance(); |
77 | final DateFormat timeFormat = DateFormat.getTimeInstance(); | |
78 | final DateFormat dayOfWeekFormat = new SimpleDateFormat("EEEEEEE", Locale.UK); | |
070d3ab2 | 79 | |
8a08d036 | 80 | startDay.setText(dayOfWeekFormat.format(start)); |
00b0fd8e | 81 | startDate.setText(dateFormat.format(start)); |
ad349897 | 82 | if(!dateFormat.format(start).equals(dateFormat.format(end))) { |
8a08d036 | 83 | endDay.setText(dayOfWeekFormat.format(end)); |
8a08d036 | 84 | endDate.setText(dateFormat.format(end)); |
dec0e894 | 85 | } |
00b0fd8e | 86 | |
8a08d036 | 87 | startTime.setText(timeFormat.format(start)); |
00b0fd8e MG |
88 | if(!start.equals(end)) |
89 | endTime.setText(timeFormat.format(end)); | |
90 | ||
f580909c | 91 | description.setText(event.description); |
539deec9 | 92 | setAdapter(); |
222ca38d | 93 | } |
070d3ab2 | 94 | |
222ca38d | 95 | @Override |
5cf4714f MG |
96 | public boolean onCreateOptionsMenu(final Menu menu) { |
97 | final MenuInflater inflater = getMenuInflater(); | |
8a08d036 | 98 | inflater.inflate(R.menu.event, menu); |
222ca38d PT |
99 | return true; |
100 | } | |
070d3ab2 | 101 | |
46e6c000 | 102 | @Override |
5cf4714f | 103 | public boolean onOptionsItemSelected(final MenuItem item) { |
8a08d036 MG |
104 | // Handle item selection |
105 | switch (item. getItemId()) { | |
55084aed | 106 | case R.id.deleteevent: |
dc52b261 P |
107 | final Bundle b=new Bundle(); |
108 | b.putParcelable("Event",event); | |
109 | d.setArguments(b); | |
55084aed | 110 | d.show(getFragmentManager(), "Delete"); |
dc52b261 | 111 | |
55084aed MG |
112 | return true; |
113 | case R.id.edit_event: | |
539deec9 | 114 | AddEventActivity.editEvent(this, event); |
55084aed MG |
115 | return true; |
116 | case R.id.add_alarm: | |
36c4a576 | 117 | AddAlarmActivity.addAlarm(this,event); |
55084aed MG |
118 | return true; |
119 | default: | |
539deec9 | 120 | return false; |
8a08d036 | 121 | } |
46e6c000 | 122 | } |
222ca38d | 123 | } |