#if FRAMEWORK20
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.ObjectModel;
namespace DevComponents.Schedule.Model
{
///
/// Represents the calendar year.
///
public class Year
{
#region Internal Implementation
private int _Year = 0;
private CalendarModel _CalendarModel = null;
private ReadOnlyCollection _ReadOnlyMonths = null;
private List _Months = null;
///
/// Initializes a new instance of the Year class.
///
///
///
public Year(int year, CalendarModel calendarModel)
{
_Year = year;
_CalendarModel = calendarModel;
}
///
/// Returns read-only collection of months in year.
///
public ReadOnlyCollection Months
{
get
{
if (_ReadOnlyMonths == null)
CreateCollection();
return _ReadOnlyMonths;
}
}
private void CreateCollection()
{
_Months = new List(12);
for (int i = 0; i < 12; i++)
{
_Months.Add(new Month(_CalendarModel, _Year, i + 1));
}
_ReadOnlyMonths = new ReadOnlyCollection(_Months);
}
internal void InvalidateAppointments()
{
if (_Months == null) return;
foreach (Month month in _Months)
{
month.InvalidateAppointments();
}
}
internal void InvalidateAppointments(int month, int day)
{
if (_Months == null) return;
_Months[month - 1].InvalidateAppointments(day);
}
#endregion
}
}
#endif