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