1 |
|
|
2 |
|
package pl.magot.vetch.ancal.agenda; |
3 |
|
|
4 |
|
|
5 |
|
import java.util.*; |
6 |
|
import pl.magot.vetch.ancal.AnCal; |
7 |
|
import pl.magot.vetch.ancal.R; |
8 |
|
import pl.magot.vetch.ancal.dataview.DataView; |
9 |
|
import pl.magot.vetch.ancal.dataview.DataViewItem; |
10 |
|
import pl.magot.vetch.ancal.views.ViewTodayItemAppointment; |
11 |
|
import pl.magot.vetch.ancal.views.ViewTodayItemHeader; |
12 |
|
import pl.magot.vetch.ancal.views.ViewTodayItemNote; |
13 |
|
import pl.magot.vetch.ancal.views.ViewTodayItemTask; |
14 |
|
import android.view.View; |
15 |
|
import android.widget.LinearLayout; |
16 |
|
import android.graphics.*; |
17 |
|
|
18 |
|
|
|
|
| 95,1% |
Uncovered Elements: 5 (103) |
Complexity: 23 |
Complexity Density: 0,33 |
|
19 |
|
public class AgendaViewToday extends AgendaView |
20 |
|
{ |
21 |
|
|
22 |
|
private Vector<ViewTodayItemHeader> tdhitems = new Vector<ViewTodayItemHeader>(); |
23 |
|
|
24 |
|
|
25 |
|
private final int iTopPadding = 2; |
26 |
|
private final int iBottomPadding = 2; |
27 |
|
private final int iHeadAppts = 0; |
28 |
|
private final int iHeadTasks = 1; |
29 |
|
private final int iHeadNotes = 2; |
30 |
|
|
31 |
|
|
32 |
|
private int iSpaceWidthTime = 0; |
33 |
|
private int iSpaceWidthMinutes = 0; |
34 |
|
private int iSpaceWidthUSTimeMark = 0; |
35 |
|
|
36 |
|
|
37 |
|
private Paint mpt = new Paint(); |
38 |
|
|
39 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (4) |
Complexity: 1 |
Complexity Density: 0,25 |
|
40 |
1
|
public AgendaViewToday(AnCal main)... |
41 |
|
{ |
42 |
1
|
super(main); |
43 |
1
|
iSpaceWidthTime = ViewTodayItemAppointment.GetSpaceWidthTime(mpt); |
44 |
1
|
iSpaceWidthMinutes = ViewTodayItemAppointment.GetSpaceWidthMinutes(mpt); |
45 |
1
|
iSpaceWidthUSTimeMark = ViewTodayItemAppointment.GetSpaceWidthUSTimeMark(mpt); |
46 |
|
} |
47 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
48 |
262
|
@Override... |
49 |
|
public AgendaViewType GetViewType() |
50 |
|
{ |
51 |
262
|
return AgendaViewType.TODAY; |
52 |
|
} |
53 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
54 |
4
|
@Override... |
55 |
|
public int GetViewIndex() |
56 |
|
{ |
57 |
4
|
return 0; |
58 |
|
} |
59 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (15) |
Complexity: 2 |
Complexity Density: 0,15 |
|
60 |
1
|
@Override... |
61 |
|
public void Rebuild() |
62 |
|
{ |
63 |
1
|
llayParent.removeAllViews(); |
64 |
|
|
65 |
1
|
ViewTodayItemHeader tdhi = null; |
66 |
|
|
67 |
|
|
68 |
4
|
for (int i = 0; i < 3; i++) |
69 |
3
|
tdhitems.add(new ViewTodayItemHeader(main)); |
70 |
|
|
71 |
|
|
72 |
1
|
tdhi = InitHeaderItem(iHeadAppts, ViewTodayItemHeader.ViewType.Appointments, R.string.labTodayItemAppointments); |
73 |
1
|
llayParentAppt.addView(tdhi, lparams); |
74 |
|
|
75 |
|
|
76 |
1
|
tdhi = InitHeaderItem(iHeadTasks, ViewTodayItemHeader.ViewType.Tasks, R.string.labTodayItemTasks); |
77 |
1
|
llayParentTask.addView(tdhi, lparams); |
78 |
|
|
79 |
|
|
80 |
1
|
tdhi = InitHeaderItem(iHeadNotes, ViewTodayItemHeader.ViewType.Notes, R.string.labTodayItemNotes); |
81 |
1
|
llayParentNote.addView(tdhi, lparams); |
82 |
|
|
83 |
1
|
llayParent.addView(llayParentAppt, lparams); |
84 |
1
|
llayParent.addView(llayParentTask, lparams); |
85 |
1
|
llayParent.addView(llayParentNote, lparams); |
86 |
|
} |
87 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (8) |
Complexity: 1 |
Complexity Density: 0,12 |
|
88 |
3
|
public ViewTodayItemHeader InitHeaderItem(int index, ViewTodayItemHeader.ViewType type, int iResStrId)... |
89 |
|
{ |
90 |
3
|
ViewTodayItemHeader tdhi = null; |
91 |
|
|
92 |
3
|
tdhi = tdhitems.get(index); |
93 |
3
|
tdhi.SetType(type); |
94 |
3
|
tdhi.SetText(main.utils.GetResStr(iResStrId)); |
95 |
3
|
tdhi.SetInfoText(sTextNone); |
96 |
3
|
tdhi.setPadding(0, iTopPadding, 0, iBottomPadding); |
97 |
|
|
98 |
3
|
tdhi.SetItemClick(new ViewTodayItemHeader.OnHeaderItemClick() { |
|
|
| 100% |
Uncovered Elements: 0 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
99 |
9
|
public void OnClick(View v, ViewTodayItemHeader.ViewType type) {... |
100 |
9
|
doHeaderItemClick(v, type); |
101 |
|
} |
102 |
|
}); |
103 |
3
|
return tdhi; |
104 |
|
} |
105 |
|
|
|
|
| 76,9% |
Uncovered Elements: 3 (13) |
Complexity: 4 |
Complexity Density: 0,57 |
|
106 |
75
|
public void RemoveChildViewsFromHeader(LinearLayout llay)... |
107 |
|
{ |
108 |
135
|
while (llay.getChildCount() > 1) |
109 |
|
{ |
110 |
60
|
View v = llay.getChildAt(1); |
111 |
60
|
if (v == null) |
112 |
0
|
break; |
113 |
60
|
if (v.getClass() != ViewTodayItemHeader.class) |
114 |
60
|
llay.removeViewInLayout(v); |
115 |
|
} |
116 |
75
|
llayParent.invalidate(); |
117 |
|
} |
118 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (5) |
Complexity: 2 |
Complexity Density: 0,67 |
|
119 |
75
|
public void UpdateInfoText(ViewTodayItemHeader tdhi, int iRowsCount)... |
120 |
|
{ |
121 |
75
|
if (iRowsCount == 0) |
122 |
|
{ |
123 |
34
|
tdhi.SetInfoText(sTextNone); |
124 |
|
} else { |
125 |
41
|
tdhi.SetInfoText(Integer.toString(iRowsCount)); |
126 |
|
} |
127 |
|
} |
128 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (15) |
Complexity: 3 |
Complexity Density: 0,27 |
|
129 |
25
|
@Override... |
130 |
|
public void RebuildViewAppointments(DataView dataView) |
131 |
|
{ |
132 |
25
|
RemoveChildViewsFromHeader(llayParentAppt); |
133 |
|
|
134 |
85
|
for (int i = 0; i < dataView.GetRowsCountTotal(); i++) |
135 |
|
{ |
136 |
60
|
DataViewItem row = dataView.GetRow(i, this.GetViewType()); |
137 |
60
|
if (row != null) |
138 |
|
{ |
139 |
27
|
ViewTodayItemAppointment item = new ViewTodayItemAppointment(main); |
140 |
27
|
item.SetRowId(row.lID); |
141 |
27
|
item.SetItemTime(row.GetStartHour(), row.GetStartMinute(), false, main.prefs.b24HourMode, iSpaceWidthTime, iSpaceWidthMinutes, iSpaceWidthUSTimeMark); |
142 |
27
|
item.SetItemData(row.sSubject, row.bAlarm, row.IsRepeat()); |
143 |
27
|
item.SetItemClick(onApptItemClick); |
144 |
27
|
llayParentAppt.addView(item, lparams); |
145 |
|
} |
146 |
|
} |
147 |
25
|
UpdateInfoText(tdhitems.get(iHeadAppts), dataView.GetRowsCountForView(this.GetViewType())); |
148 |
|
} |
149 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (14) |
Complexity: 3 |
Complexity Density: 0,3 |
|
150 |
25
|
@Override... |
151 |
|
public void RebuildViewTasks(DataView dataView) |
152 |
|
{ |
153 |
25
|
RemoveChildViewsFromHeader(llayParentTask); |
154 |
|
|
155 |
56
|
for (int i = 0; i < dataView.GetRowsCountTotal(); i++) |
156 |
|
{ |
157 |
31
|
DataViewItem row = dataView.GetRow(i, this.GetViewType()); |
158 |
31
|
if (row != null) |
159 |
|
{ |
160 |
30
|
ViewTodayItemTask item = new ViewTodayItemTask(main); |
161 |
30
|
item.SetRowId(row.lID); |
162 |
30
|
item.SetItemData(row.bDone, row.sSubject, row.bAlarm); |
163 |
30
|
item.SetItemClick(onTaskItemClick); |
164 |
30
|
llayParentTask.addView(item, lparams); |
165 |
|
} |
166 |
|
} |
167 |
25
|
UpdateInfoText(tdhitems.get(iHeadTasks), dataView.GetRowsCountForView(this.GetViewType())); |
168 |
|
} |
169 |
|
|
|
|
| 92,9% |
Uncovered Elements: 1 (14) |
Complexity: 3 |
Complexity Density: 0,3 |
|
170 |
25
|
@Override... |
171 |
|
public void RebuildViewNotes(DataView dataView) |
172 |
|
{ |
173 |
25
|
RemoveChildViewsFromHeader(llayParentNote); |
174 |
|
|
175 |
32
|
for (int i = 0; i < dataView.GetRowsCountTotal(); i++) |
176 |
|
{ |
177 |
7
|
DataViewItem row = dataView.GetRow(i, this.GetViewType()); |
178 |
7
|
if (row != null) |
179 |
|
{ |
180 |
7
|
ViewTodayItemNote item = new ViewTodayItemNote(main); |
181 |
7
|
item.SetRowId(row.lID); |
182 |
7
|
item.SetItemData(row.sSubject); |
183 |
7
|
item.SetItemClick(onNoteItemClick); |
184 |
7
|
llayParentNote.addView(item, lparams); |
185 |
|
} |
186 |
|
} |
187 |
25
|
UpdateInfoText(tdhitems.get(iHeadNotes), dataView.GetRowsCountForView(this.GetViewType())); |
188 |
|
} |
189 |
|
|
|
|
| - |
Uncovered Elements: 0 (0) |
Complexity: 1 |
Complexity Density: - |
|
190 |
0
|
@Override... |
191 |
|
public void UpdateTimeFormat() |
192 |
|
{ |
193 |
|
} |
194 |
|
|
195 |
|
} |