Exemplo n.º 1
0
        internal DateTime GetFirstDateToRenderForDisplayMode(DateTime date, CalendarDisplayMode displayMode)
        {
            date = date.Date;
            DateTime firstDateToRender = date;

            if (displayMode == CalendarDisplayMode.MultiDayView)
            {
                DayOfWeek firstDayOfWeek         = this.GetFirstDayOfWeek();
                DateTime  firstDateOfCurrentWeek = CalendarMathHelper.GetFirstDayOfCurrentWeek(date, firstDayOfWeek);

                if (!(firstDateOfCurrentWeek.Date <= date.Date && firstDateOfCurrentWeek.AddDays(7).Date >= date.Date))
                {
                    firstDateToRender = firstDateOfCurrentWeek;
                }

                if (!this.multiDayViewSettings.WeekendsVisible)
                {
                    firstDateToRender = CalendarMathHelper.AddBusinessDays(date, -this.multiDayViewSettings.VisibleDays);
                }
                else
                {
                    firstDateToRender = date.AddDays(-this.multiDayViewSettings.VisibleDays);
                }
            }
            else if (displayMode == CalendarDisplayMode.MonthView)
            {
                DayOfWeek firstDayOfWeekToUse = this.GetFirstDayOfWeek();

                DateTime monthStartDate = CalendarMathHelper.GetFirstDateOfMonth(date);

                int daysToSubtract = (int)monthStartDate.DayOfWeek - (int)firstDayOfWeekToUse;
                if (daysToSubtract <= 0)
                {
                    daysToSubtract += 7;
                }

                firstDateToRender = monthStartDate.Date == DateTime.MinValue.Date ? monthStartDate : monthStartDate.AddDays(-daysToSubtract);
            }
            else if (displayMode == CalendarDisplayMode.YearView)
            {
                firstDateToRender = CalendarMathHelper.GetFirstDateOfYear(date);
            }
            else if (displayMode == CalendarDisplayMode.DecadeView)
            {
                firstDateToRender = CalendarMathHelper.GetFirstDateOfDecade(date);
            }
            else if (displayMode == CalendarDisplayMode.CenturyView)
            {
                firstDateToRender = CalendarMathHelper.GetFirstDateOfCentury(date);
            }

            return(firstDateToRender);
        }
Exemplo n.º 2
0
        internal static DateTime GetCellDateForViewLevel(DateTime date, CalendarDisplayMode displayMode)
        {
            switch (displayMode)
            {
            case CalendarDisplayMode.YearView:
                return(CalendarMathHelper.GetFirstDateOfMonth(date));

            case CalendarDisplayMode.DecadeView:
                return(CalendarMathHelper.GetFirstDateOfYear(date));

            case CalendarDisplayMode.CenturyView:
                return(CalendarMathHelper.GetFirstDateOfDecade(date));

            default:
                return(date);
            }
        }
Exemplo n.º 3
0
        internal static DateTime GetFirstDateForCurrentDisplayUnit(DateTime date, CalendarDisplayMode displayMode)
        {
            // NOTE: Ignore time part for calendar calculations.
            date = date.Date;

            switch (displayMode)
            {
            case CalendarDisplayMode.YearView:
                return(CalendarMathHelper.GetFirstDateOfYear(date));

            case CalendarDisplayMode.DecadeView:
                return(CalendarMathHelper.GetFirstDateOfDecade(date));

            case CalendarDisplayMode.CenturyView:
                return(CalendarMathHelper.GetFirstDateOfCentury(date));

            default:
                return(CalendarMathHelper.GetFirstDateOfMonth(date));
            }
        }
Exemplo n.º 4
0
        internal static bool IsCalendarViewChanged(DateTime displayDate, DateTime newDisplayDate, CalendarDisplayMode displayMode)
        {
            // NOTE: Ignore time part for calendar calculations.
            displayDate    = displayDate.Date;
            newDisplayDate = newDisplayDate.Date;

            switch (displayMode)
            {
            case CalendarDisplayMode.YearView:
                return(displayDate.Year != newDisplayDate.Year);

            case CalendarDisplayMode.DecadeView:
                return(CalendarMathHelper.GetFirstDateOfDecade(displayDate) != CalendarMathHelper.GetFirstDateOfDecade(newDisplayDate));

            case CalendarDisplayMode.CenturyView:
                return(CalendarMathHelper.GetFirstDateOfCentury(displayDate) != CalendarMathHelper.GetFirstDateOfCentury(newDisplayDate));

            default:
                return(CalendarMathHelper.GetFirstDateOfMonth(displayDate) != CalendarMathHelper.GetFirstDateOfMonth(newDisplayDate));
            }
        }
Exemplo n.º 5
0
 private static DateTime GetLastDateOfDecadeView(DateTime date)
 {
     return(CalendarMathHelper.GetFirstDateOfDecade(date).AddYears(9));
 }
Exemplo n.º 6
0
 internal override DateTime GetFirstDateToRender(DateTime date)
 {
     return(CalendarMathHelper.GetFirstDateOfDecade(date));
 }