// ---------------------------------------------------------------------- public static void ShowAll( int periodCount, int startYear, TimeCalendarConfig calendarConfig ) { WriteLine( "Input: count={0}, year={1}", periodCount, startYear ); WriteLine( "Calendar: base-month={0}, week-type={1}, culture={2}", calendarConfig.YearBaseMonth, calendarConfig.YearWeekType, calendarConfig.Culture.Name ); WriteLine(); YearTimeRange yearTimeRange; if ( periodCount == 1 ) { Year year = new Year( startYear, new TimeCalendar( calendarConfig ) ); yearTimeRange = year; Year previousYear = year.GetPreviousYear(); Year nextYears = year.GetNextYear(); ShowYear( year ); ShowCompactYear( previousYear, "Previous Year" ); ShowCompactYear( nextYears, "Next Year" ); WriteLine(); } else { Years years = new Years( startYear, periodCount, new TimeCalendar( calendarConfig ) ); yearTimeRange = years; ShowYears( years ); WriteLine(); foreach ( Year year in years.GetYears() ) { ShowCompactYear( year ); } WriteLine(); } foreach ( Halfyear halfyear in yearTimeRange.GetHalfyears() ) { HalfyearDemo.ShowCompactHalfyear( halfyear ); } WriteLine(); foreach ( Quarter quarter in yearTimeRange.GetQuarters() ) { QuarterDemo.ShowCompactQuarter( quarter ); } WriteLine(); foreach ( Month month in yearTimeRange.GetMonths() ) { MonthDemo.ShowCompactMonth( month ); } WriteLine(); }
// ---------------------------------------------------------------------- public static void ShowAll( int periodCount, int startYear, YearHalfyear yearHalfyear, TimeCalendarConfig calendarConfig ) { WriteLine( "Input: count={0}, year={1}, halfyear={2}", periodCount, startYear, yearHalfyear ); WriteLine(); HalfyearTimeRange halfyearTimeRange; if ( periodCount == 1 ) { Halfyear halfyear = new Halfyear( startYear, yearHalfyear, new TimeCalendar( calendarConfig ) ); halfyearTimeRange = halfyear; Halfyear previousHalfyear = halfyear.GetPreviousHalfyear(); Halfyear nextHalfyear = halfyear.GetNextHalfyear(); ShowHalfyear( halfyear ); ShowCompactHalfyear( previousHalfyear, "Previous Halfyear" ); ShowCompactHalfyear( nextHalfyear, "Next Halfyear" ); WriteLine(); } else { Halfyears halfyears = new Halfyears( startYear, yearHalfyear, periodCount, new TimeCalendar( calendarConfig ) ); halfyearTimeRange = halfyears; ShowHalfyears( halfyears ); WriteLine(); foreach ( Halfyear halfyear in halfyears.GetHalfyears() ) { ShowCompactHalfyear( halfyear ); } WriteLine(); } foreach ( Quarter quarter in halfyearTimeRange.GetQuarters() ) { QuarterDemo.ShowCompactQuarter( quarter ); } WriteLine(); foreach ( Month month in halfyearTimeRange.GetMonths() ) { MonthDemo.ShowCompactMonth( month ); } WriteLine(); }
// ---------------------------------------------------------------------- public TimeCalendar( TimeCalendarConfig config ) { if ( config.StartOffset < TimeSpan.Zero ) { throw new ArgumentOutOfRangeException( "config" ); } if ( config.EndOffset > TimeSpan.Zero ) { throw new ArgumentOutOfRangeException( "config" ); } culture = config.Culture ?? Thread.CurrentThread.CurrentCulture; yearType = config.YearType.HasValue ? config.YearType.Value : YearType.SystemYear; startOffset = config.StartOffset.HasValue ? config.StartOffset.Value : DefaultStartOffset; endOffset = config.EndOffset.HasValue ? config.EndOffset.Value : DefaultEndOffset; yearBaseMonth = config.YearBaseMonth.HasValue ? config.YearBaseMonth.Value : TimeSpec.CalendarYearStartMonth; yearWeekType = config.YearWeekType.HasValue ? config.YearWeekType.Value : YearWeekType.Calendar; dayNameType = config.DayNameType.HasValue ? config.DayNameType.Value : CalendarNameType.Full; monthNameType = config.MonthNameType.HasValue ? config.MonthNameType.Value : CalendarNameType.Full; }
} // TimeCalendar // ---------------------------------------------------------------------- public TimeCalendar(TimeCalendarConfig config) { if (config.StartOffset < TimeSpan.Zero) { throw new ArgumentOutOfRangeException("config"); } if (config.EndOffset > TimeSpan.Zero) { throw new ArgumentOutOfRangeException("config"); } culture = config.Culture ?? Thread.CurrentThread.CurrentCulture; yearType = config.YearType.HasValue ? config.YearType.Value : YearType.SystemYear; startOffset = config.StartOffset.HasValue ? config.StartOffset.Value : DefaultStartOffset; endOffset = config.EndOffset.HasValue ? config.EndOffset.Value : DefaultEndOffset; yearBaseMonth = config.YearBaseMonth.HasValue ? config.YearBaseMonth.Value : TimeSpec.CalendarYearStartMonth; yearWeekType = config.YearWeekType.HasValue ? config.YearWeekType.Value : YearWeekType.Calendar; dayNameType = config.DayNameType.HasValue ? config.DayNameType.Value : CalendarNameType.Full; monthNameType = config.MonthNameType.HasValue ? config.MonthNameType.Value : CalendarNameType.Full; } // TimeCalendar
// ---------------------------------------------------------------------- public static void ShowAll( int periodCount, int year, int weekOfYear, TimeCalendarConfig calendarConfig ) { WriteLine( "Input: year={0}, week={1}", year, weekOfYear ); WriteLine(); WeekTimeRange weekTimeRange; if ( periodCount == 1 ) { Week week = new Week( year, weekOfYear, new TimeCalendar( calendarConfig ) ); weekTimeRange = week; Week previousWeek = week.GetPreviousWeek(); Week nextWeek = week.GetNextWeek(); ShowWeek( week ); ShowCompactWeek( previousWeek, "Previous Week" ); ShowCompactWeek( nextWeek, "Next Week" ); WriteLine(); } else { Weeks weeks = new Weeks( year, weekOfYear, periodCount, new TimeCalendar( calendarConfig ) ); weekTimeRange = weeks; ShowWeeks( weeks ); WriteLine(); foreach ( Week week in weeks.GetWeeks() ) { ShowCompactWeek( week ); } WriteLine(); } foreach ( Day day in weekTimeRange.GetDays() ) { DayDemo.ShowCompactDay( day ); } WriteLine(); }
// ---------------------------------------------------------------------- public static void ShowAll( int periodCount, int startYear, YearQuarter yearQuarter, TimeCalendarConfig calendarConfig ) { WriteLine( "Input: count={0}, year={1}, quarter={2}", periodCount, startYear, yearQuarter ); WriteLine(); QuarterTimeRange quarterTimeRange; if ( periodCount == 1 ) { Quarter quarter = new Quarter( startYear, yearQuarter, new TimeCalendar( calendarConfig ) ); quarterTimeRange = quarter; Quarter previousQuarter = quarter.GetPreviousQuarter(); Quarter nextQuarter = quarter.GetNextQuarter(); ShowQuarter( quarter ); ShowCompactQuarter( previousQuarter, "Previous Quarter" ); ShowCompactQuarter( nextQuarter, "Next Quarter" ); WriteLine(); } else { Quarters quarters = new Quarters( startYear, yearQuarter, periodCount, new TimeCalendar( calendarConfig ) ); quarterTimeRange = quarters; ShowQuarters( quarters ); WriteLine(); foreach ( Quarter quarter in quarters.GetQuarters() ) { ShowCompactQuarter( quarter ); } WriteLine(); } foreach ( Month month in quarterTimeRange.GetMonths() ) { MonthDemo.ShowCompactMonth( month ); } WriteLine(); }
} // TimeCalendar // ---------------------------------------------------------------------- public TimeCalendar(TimeCalendarConfig config) { if (config.StartOffset < TimeSpan.Zero) { throw new ArgumentOutOfRangeException("config"); } if (config.EndOffset > TimeSpan.Zero) { throw new ArgumentOutOfRangeException("config"); } culture = config.Culture ?? Thread.CurrentThread.CurrentCulture; yearType = config.YearType.HasValue ? config.YearType.Value : YearType.SystemYear; startOffset = config.StartOffset.HasValue ? config.StartOffset.Value : DefaultStartOffset; endOffset = config.EndOffset.HasValue ? config.EndOffset.Value : DefaultEndOffset; yearBaseMonth = config.YearBaseMonth.HasValue ? config.YearBaseMonth.Value : TimeSpec.CalendarYearStartMonth; fiscalYearBaseMonth = config.FiscalYearBaseMonth.HasValue ? config.FiscalYearBaseMonth.Value : TimeSpec.FiscalYearBaseMonth; fiscalFirstDayOfYear = config.FiscalFirstDayOfYear.HasValue ? config.FiscalFirstDayOfYear.Value : DayOfWeek.Sunday; fiscalYearAlignment = config.FiscalYearAlignment.HasValue ? config.FiscalYearAlignment.Value : FiscalYearAlignment.None; fiscalQuarterGrouping = config.FiscalQuarterGrouping.HasValue ? config.FiscalQuarterGrouping.Value : FiscalQuarterGrouping.FourFourFiveWeeks; yearWeekType = config.YearWeekType.HasValue ? config.YearWeekType.Value : YearWeekType.Calendar; dayNameType = config.DayNameType.HasValue ? config.DayNameType.Value : CalendarNameType.Full; monthNameType = config.MonthNameType.HasValue ? config.MonthNameType.Value : CalendarNameType.Full; } // TimeCalendar