]>
Commit | Line | Data |
---|---|---|
1 | package ro.ieval.unical; | |
2 | ||
3 | import android.app.ActionBar; | |
4 | import android.app.Fragment; | |
5 | import android.app.FragmentTransaction; | |
6 | import android.os.Bundle; | |
7 | import android.view.LayoutInflater; | |
8 | import android.view.View; | |
9 | import android.view.ViewGroup; | |
10 | import android.widget.*; | |
11 | ||
12 | import java.text.SimpleDateFormat; | |
13 | import java.util.Date; | |
14 | ||
15 | public final class TrivialFragment extends Fragment { | |
16 | private static class OnItemSelectedListener implements android.widget.AdapterView.OnItemSelectedListener{ | |
17 | private final View repeatCount; | |
18 | private final View repeatUntil; | |
19 | ||
20 | public OnItemSelectedListener(final View repeatCount, final View repeatUntil) { | |
21 | this.repeatCount=repeatCount; | |
22 | this.repeatUntil=repeatUntil; | |
23 | } | |
24 | ||
25 | @Override | |
26 | public void onItemSelected(final AdapterView<?> whatever, final View ignored, final int pos, final long id) { | |
27 | switch(pos){ | |
28 | case 0: | |
29 | repeatCount.setVisibility(View.GONE); | |
30 | repeatUntil.setVisibility(View.GONE); | |
31 | break; | |
32 | case 1: | |
33 | repeatCount.setVisibility(View.GONE); | |
34 | repeatUntil.setVisibility(View.VISIBLE); | |
35 | break; | |
36 | case 2: | |
37 | repeatCount.setVisibility(View.VISIBLE); | |
38 | repeatUntil.setVisibility(View.GONE); | |
39 | break; | |
40 | default: | |
41 | } | |
42 | } | |
43 | ||
44 | @Override public void onNothingSelected(final AdapterView<?> arg0) { /* do nothing */ } | |
45 | } | |
46 | ||
47 | private static class OnCheckedChangeListener implements android.widget.CompoundButton.OnCheckedChangeListener{ | |
48 | private final LinearLayout layout; | |
49 | private final View root; | |
50 | public OnCheckedChangeListener(final LinearLayout layout, final View root){ | |
51 | this.layout=layout; | |
52 | this.root=root; | |
53 | } | |
54 | ||
55 | @Override | |
56 | public void onCheckedChanged(final CompoundButton buttonView, final boolean isChecked) { | |
57 | if(isChecked) { | |
58 | Utils.setEnabledRecursively(layout, true); | |
59 | final Spinner repeatType = (Spinner) root.findViewById(R.id.repeat_type); | |
60 | repeatType.setOnItemSelectedListener(new OnItemSelectedListener(root.findViewById(R.id.repeat_count),root.findViewById(R.id.repeat_until))); | |
61 | }else { | |
62 | Utils.setEnabledRecursively(layout, false); | |
63 | } | |
64 | } | |
65 | } | |
66 | ||
67 | public static final String ARGUMENT_EVENT = "Event"; | |
68 | public static final String ARGUMENT_LAYOUT = "layout"; | |
69 | private Event ev; | |
70 | ||
71 | @Override | |
72 | public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) { | |
73 | final View view=inflater.inflate(getArguments().getInt(ARGUMENT_LAYOUT), container, false); | |
74 | ||
75 | ev=getArguments().getParcelable(ARGUMENT_EVENT); | |
76 | switch (getArguments().getInt(ARGUMENT_LAYOUT)) { | |
77 | case R.layout.add_event_basic_tab: | |
78 | final LinearLayout layout = (LinearLayout) view.findViewById(R.id.repeat_layout); | |
79 | final Switch repeatSwitch = (Switch) view.findViewById(R.id.repeat_switch); | |
80 | Utils.setEnabledRecursively(layout, false); | |
81 | ||
82 | repeatSwitch.setOnCheckedChangeListener(new OnCheckedChangeListener(layout, view)); | |
83 | ||
84 | EditText title = (EditText) view.findViewById(R.id.eventtitle); | |
85 | title.setText(ev.title); | |
86 | ||
87 | TextView tstart = (TextView) view.findViewById(R.id.time_start); | |
88 | TextView tend = (TextView) view.findViewById(R.id.time_end); | |
89 | SimpleDateFormat sf=new SimpleDateFormat("HH:MM"); | |
90 | Date d=new Date(ev.dtstart); | |
91 | tstart.setText(sf.format(d).toString()); | |
92 | d.setTime(ev.dtend); | |
93 | tend.setText(sf.format(d).toString()); | |
94 | ||
95 | SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); | |
96 | TextView dstart = (TextView)view.findViewById(R.id.date_start); | |
97 | TextView dend = (TextView)view.findViewById(R.id.date_end); | |
98 | d.setTime(ev.dtstart); | |
99 | dstart.setText(sd.format(d).toString()); | |
100 | d.setTime(ev.dtend); | |
101 | dend.setText(sd.format(d).toString()); | |
102 | break; | |
103 | case R.layout.add_event_details_tab: | |
104 | EditText description = (EditText) view.findViewById(R.id.description); | |
105 | description.setText(ev.description); | |
106 | break; | |
107 | case R.layout.add_event_other_tab: | |
108 | break; | |
109 | } | |
110 | return view; | |
111 | } | |
112 | } |