Clover Coverage Report - AnCal Coverage Report
Coverage timestamp: gio dic 18 2014 12:18:42 EST
../../../../../img/srcFileCovDistChart8.png 73% of files have more coverage
66   190   20   6,6
20   143   0,3   10
10     2  
1    
This report was generated with an evaluation server license. Purchase Clover or configure your license.
 
  AgendaViewWeek       Line # 15 66 20 77,1% 0.7708333
 
No Tests
 
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.dataview.DataView;
8    import pl.magot.vetch.ancal.dataview.DataViewItem;
9    import pl.magot.vetch.ancal.views.ViewWeekDayItem;
10    import android.graphics.Paint;
11    import android.view.ViewGroup.LayoutParams;
12    import android.widget.LinearLayout;
13   
14   
 
15    public class AgendaViewWeek extends AgendaView
16    {
17    //fields
18    private ArrayList<ViewWeekDayItem> vecDayItems = new ArrayList<ViewWeekDayItem>();
19    protected LinearLayout llayParentWeek = null;
20    Calendar calWeekStart = Calendar.getInstance();
21   
22    //fields
23    private Paint mpt = new Paint();
24   
25    //methods
 
26  1 toggle public AgendaViewWeek(AnCal main)
27    {
28  1 super(main);
29   
30  1 LinearLayout.LayoutParams layParams =
31    new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, main.GetViewSpaceHeight());
32   
33    //create parent content layout for week view (don't know why not works for llayParent
34  1 llayParentWeek = new LinearLayout(main);
35  1 llayParentWeek.setPadding(0, 0, 0, 0);
36  1 llayParentWeek.setOrientation(LinearLayout.HORIZONTAL);
37  1 llayParentWeek.setLayoutParams(layParams);
38    }
39   
 
40  276 toggle @Override
41    public AgendaViewType GetViewType()
42    {
43  276 return AgendaViewType.WEEK;
44    }
45   
 
46  0 toggle @Override
47    public int GetViewIndex()
48    {
49  0 return 2;
50    }
51   
52    private ViewWeekDayItem.OnItemClick mWeekDayItemClick = new ViewWeekDayItem.OnItemClick()
53    {
 
54  2 toggle public void OnClick(ViewWeekDayItem item)
55    {
56  2 OnDayItemClick(item);
57    }
58    };
59   
 
60  1 toggle @Override
61    public void Rebuild()
62    {
63  1 llayParent.removeAllViews();
64  1 llayParentWeek.removeAllViews();
65   
66  1 final int iParentWidth = main.GetViewSpaceWidth();
67  1 final int iParentHeight = main.GetViewSpaceHeight() - 5;
68  1 int iDefaultWidth = 0;
69  1 int iWidth = 0;
70   
71  1 final int iSpaceWidthTime = ViewWeekDayItem.GetSpaceWidthTime(mpt, main.prefs.b24HourMode);
72  1 final int iSpaceHeightHeader = ViewWeekDayItem.GetSpaceHeightHeader(mpt);
73   
74    //build 7 days week view
75  1 vecDayItems.clear();
76  8 for (int iDay = 0; iDay < 7; iDay++)
77    {
78  7 ViewWeekDayItem item = new ViewWeekDayItem(main, iSpaceHeightHeader);
79   
80    //set event
81  7 item.SetItemClick(mWeekDayItemClick);
82   
83    //set size
84  7 if (iDay == 0)
85    {
86  1 item.SetTimeMargin(iSpaceWidthTime, main.prefs.b24HourMode);
87  1 iDefaultWidth = (iParentWidth - iSpaceWidthTime) / 7;
88  1 iWidth = iDefaultWidth + iSpaceWidthTime;
89    } else {
90  6 iWidth = iDefaultWidth;
91    }
92  7 item.SetSize(iWidth, iParentHeight);
93   
94    //add to layout
95  7 vecDayItems.add(item);
96  7 llayParentWeek.addView(item);
97    }
98   
99  1 llayParent.addView(llayParentWeek);
100    }
101   
 
102  2 toggle public void OnDayItemClick(ViewWeekDayItem item)
103    {
104  2 Calendar calDate = Calendar.getInstance();
105  2 calDate.setTimeInMillis(item.GetDate().getTimeInMillis());
106  2 main.SetAgendaView(AgendaViewType.DAY, calDate);
107    }
108   
 
109  36 toggle @Override
110    public void RebuildViewAppointments(DataView dataView)
111    {
112  36 final boolean bIsViewToday = IsViewToday();
113  36 final int iCurrentHour = getTodayCurrentHour();
114   
115  36 calWeekStart.setTimeInMillis(GetViewStartDate().getTimeInMillis());
116  36 calWeekStart.setFirstDayOfWeek(main.prefs.iFirstDayOfWeek);
117   
118    //setup weekdays data
119  36 Calendar calDateToday = main.getDateToday();
120  288 for (int iDay = 0; iDay < 7; iDay++)
121    {
122  252 ViewWeekDayItem item = vecDayItems.get(iDay);
123  252 item.ClearTimeItems();
124  252 item.SetDate(calWeekStart, calDateToday);
125  252 item.SetCurrentHour((bIsViewToday)?iCurrentHour:-1);
126  252 calWeekStart.add(Calendar.DAY_OF_YEAR, 1);
127    }
128   
129    //rebuild view
130  186 for (int i = 0; i < dataView.GetRowsCountTotal(); i++)
131    {
132    //get data item
133  150 DataViewItem row = dataView.GetRow(i, this.GetViewType());
134  150 if (row != null)
135    {
136    //iterate repeat week days in data item
137  352 for (int iDay = 0; iDay < 7; iDay++)
138    {
139    //get item visible date
140  308 if (row.GetVisibleDay(iDay))
141    {
142    //get week day item
143  44 ViewWeekDayItem item = vecDayItems.get(iDay);
144  44 item.AddTimeItem(row.GetStartHour(), row.GetStartMinute(), row.iDurationInMinutes);
145    }
146    }
147   
148    }
149    }
150   
151  36 llayParentWeek.requestLayout();
152  36 llayParentWeek.invalidate();
153    }
154   
 
155  0 toggle @Override
156    public void RebuildViewNotes(DataView dataView)
157    {
158    }
159   
 
160  0 toggle @Override
161    public void RebuildViewTasks(DataView dataView)
162    {
163    }
164   
 
165  0 toggle @Override
166    public void UpdateTimeFormat()
167    {
168  0 int iParentWidth = main.GetViewSpaceWidth();
169  0 int iParentHeight = main.GetViewSpaceHeight();
170  0 int iDefaultWidth = 0;
171  0 int iWidth = 0;
172   
173  0 final int iSpaceWidthTime = ViewWeekDayItem.GetSpaceWidthTime(mpt, main.prefs.b24HourMode);
174   
175  0 for (int iDay = 0; iDay < 7; iDay++)
176    {
177  0 ViewWeekDayItem item = vecDayItems.get(iDay);
178  0 if (iDay == 0)
179    {
180  0 item.SetTimeMargin(iSpaceWidthTime, main.prefs.b24HourMode);
181  0 iDefaultWidth = (iParentWidth - iSpaceWidthTime) / 7;
182  0 iWidth = iDefaultWidth + iSpaceWidthTime;
183    } else {
184  0 iWidth = iDefaultWidth;
185    }
186  0 item.SetSize(iWidth, iParentHeight);
187    }
188    }
189   
190    }