1714 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			1714 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
#if FRAMEWORK20
 | 
						|
using System;
 | 
						|
using System.ComponentModel;
 | 
						|
using System.Drawing;
 | 
						|
using System.Drawing.Imaging;
 | 
						|
using DevComponents.DotNetBar.Rendering;
 | 
						|
 | 
						|
namespace DevComponents.DotNetBar.Schedule
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// Represents date-navigation control that is used with CalendarView to provide calendar date navigation.
 | 
						|
    /// </summary>
 | 
						|
    [ToolboxItem(true), ToolboxBitmap(typeof(DateNavigator), "Schedule.DateNavigator.ico")]
 | 
						|
    [Designer("DevComponents.DotNetBar.Design.DateNavigatorDesigner, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral,  PublicKeyToken=90f470f34c89ccaf")]
 | 
						|
    public partial class DateNavigator : PanelEx
 | 
						|
    {
 | 
						|
        #region Events
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Occurs when a date Navigation is occurring
 | 
						|
        /// </summary>
 | 
						|
        [Description("Occurs when a date Navigation is occurring.")]
 | 
						|
        public event EventHandler<DateChangingEventArgs> DateChanging;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Occurs when a date Navigation has occurred
 | 
						|
        /// </summary>
 | 
						|
        [Description("Occurs when a date Navigation has occurred.")]
 | 
						|
        public event EventHandler<DateChangedEventArgs> DateChanged;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Occurs when the DateNavigator needs a formatted date label
 | 
						|
        /// </summary>
 | 
						|
        [Description("Occurs when the DateNavigator needs a formatted date label.")]
 | 
						|
        public event EventHandler<GetDateLabelEventArgs> GetDateLabel;
 | 
						|
        
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region Constants
 | 
						|
 | 
						|
        private const int MaxYearMonthSpan = 120;
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region Private variables
 | 
						|
 | 
						|
        private CalendarView _CalendarView;
 | 
						|
 | 
						|
        private string _CurrentDayLabel = "MMMM dd, yyyy";
 | 
						|
 | 
						|
        private string _CurrentWeekStartLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentWeekEndLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentWeekSameYearStartLabel = "MMMM dd";
 | 
						|
        private string _CurrentWeekSameYearEndLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentWeekSameMonthYearStartLabel = "MMMM dd";
 | 
						|
        private string _CurrentWeekSameMonthYearEndLabel = "dd, yyyy";
 | 
						|
 | 
						|
        private string _CurrentMonthStartLabel = "MMMM yyyy";
 | 
						|
        private string _CurrentMonthEndLabel = "MMMM yyyy";
 | 
						|
 | 
						|
        private string _CurrentYearStartLabel = "MMMM yyyy";
 | 
						|
        private string _CurrentYearEndLabel = "MMMM yyyy";
 | 
						|
 | 
						|
        private string _CurrentTimeLineHourLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentTimeLineDayStartLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentTimeLineDayEndLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentTimeLineDaySameYearStartLabel = "MMMM dd";
 | 
						|
        private string _CurrentTimeLineDaySameYearEndLabel = "MMMM dd, yyyy";
 | 
						|
        private string _CurrentTimeLineDaySameMonthYearStartLabel = "MMMM dd";
 | 
						|
        private string _CurrentTimeLineDaySameMonthYearEndLabel = "dd, yyyy";
 | 
						|
        private string _CurrentTimeLineYearStartLabel = "yyyy";
 | 
						|
        private string _CurrentTimeLineYearEndLabel = "yyyy";
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        public DateNavigator()
 | 
						|
        {
 | 
						|
            InitializeComponent();
 | 
						|
            UpdateButtonImages();
 | 
						|
 | 
						|
            Style.BackColor1.Color =
 | 
						|
                ((Office2007Renderer)GlobalManager.Renderer).ColorTable.CalendarView.TimeRulerColors[0].Colors[0];
 | 
						|
 | 
						|
            StyleManager.Register(this);
 | 
						|
        }
 | 
						|
 | 
						|
        #region Public properties
 | 
						|
 | 
						|
        #region CalendarView
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the CalendarView date navigation will be applied to.
 | 
						|
        /// </summary>
 | 
						|
        [DefaultValue(null), Category("Behavior")]
 | 
						|
        [Description("Indicates CalendarView date navigation will be applied to.")]
 | 
						|
        public CalendarView CalendarView
 | 
						|
        {
 | 
						|
            get { return _CalendarView; }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (_CalendarView != null)
 | 
						|
                {
 | 
						|
                    _CalendarView.SelectedViewChanged -= CalendarSelectedViewChanged;
 | 
						|
                    _CalendarView.ViewDateChanged -= CalendarViewViewDateChanged;
 | 
						|
                    _CalendarView.TimeLineViewScrollDateChanged -= CalendarViewTimeLineViewScrollDateChanged;
 | 
						|
                }
 | 
						|
 | 
						|
                _CalendarView = value;
 | 
						|
 | 
						|
                if (_CalendarView != null)
 | 
						|
                {
 | 
						|
                    _CalendarView.SelectedViewChanged += CalendarSelectedViewChanged;
 | 
						|
                    _CalendarView.ViewDateChanged += CalendarViewViewDateChanged;
 | 
						|
                    _CalendarView.TimeLineViewScrollDateChanged += CalendarViewTimeLineViewScrollDateChanged;
 | 
						|
                }
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Handles CalendarView ViewDateChanged events
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        void CalendarViewViewDateChanged(object sender, ViewDateChangedEventArgs e)
 | 
						|
        {
 | 
						|
            UpdateDisplay();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Handle CalendarView SelectedViewChanged events
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        private void CalendarSelectedViewChanged(object sender, SelectedViewEventArgs e)
 | 
						|
        {
 | 
						|
            UpdateDisplay();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Handles CalendarView_TimeLineViewScrollDateChanged events
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        void CalendarViewTimeLineViewScrollDateChanged(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            UpdateDisplay();
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentDayLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Day format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Day format label.")]
 | 
						|
        public string CurrentDayLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentDayLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentDayLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, start format label.")]
 | 
						|
        public string CurrentWeekStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, end format label.")]
 | 
						|
        public string CurrentWeekEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekSameYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, same Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, same Year, start format label.")]
 | 
						|
        public string CurrentWeekSameYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekSameYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekSameYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekSameYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, same Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, same Year, end format label.")]
 | 
						|
        public string CurrentWeekSameYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekSameYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekSameYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekSameMonthYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, same Month & Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, same Month & Year, start format label.")]
 | 
						|
        public string CurrentWeekSameMonthYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekSameMonthYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekSameMonthYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentWeekSameMonthYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Week, same Month & Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Week, same Month & Year, end format label.")]
 | 
						|
        public string CurrentWeekSameMonthYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentWeekSameMonthYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentWeekSameMonthYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentMonthStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Month, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Month, start format label.")]
 | 
						|
        public string CurrentMonthStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentMonthStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentMonthStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentMonthEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Month, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Month, end format label.")]
 | 
						|
        public string CurrentMonthEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentMonthEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentMonthEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Year, start format label.")]
 | 
						|
        public string CurrentYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current Year, end format label.")]
 | 
						|
        public string CurrentYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineHourLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Hour format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Hour format label.")]
 | 
						|
        public string CurrentTimeLineHourLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineHourLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineHourLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDayStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, start format label.")]
 | 
						|
        public string CurrentTimeLineDayStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDayStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDayStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDayEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, end format label.")]
 | 
						|
        public string CurrentTimeLineDayEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDayEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDayEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDaySameYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, same Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, same Year, start format label.")]
 | 
						|
        public string CurrentTimeLineDaySameYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDaySameYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDaySameYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDaySameYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, same Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, same Year, end format label.")]
 | 
						|
        public string CurrentTimeLineDaySameYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDaySameYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDaySameYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDaySameMonthYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, same Month & Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("MMMM dd"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, same Month & Year, start format label.")]
 | 
						|
        public string CurrentTimeLineDaySameMonthYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDaySameMonthYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDaySameMonthYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineDaySameMonthYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Day, same Month & Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("dd, yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Day, same Month & Year, end format label.")]
 | 
						|
        public string CurrentTimeLineDaySameMonthYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineDaySameMonthYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineDaySameMonthYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineYearStartLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Year, start format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Year, start format label.")]
 | 
						|
        public string CurrentTimeLineYearStartLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineYearStartLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineYearStartLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CurrentTimeLineYearEndLabel
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets the current TimeLine Year, end format label
 | 
						|
        /// </summary>
 | 
						|
        [Localizable(true), DefaultValue("yyyy"), Category("Appearance")]
 | 
						|
        [Description("Indicates the current TimeLine Year, end format label.")]
 | 
						|
        public string CurrentTimeLineYearEndLabel
 | 
						|
        {
 | 
						|
            get { return (_CurrentTimeLineYearEndLabel); }
 | 
						|
 | 
						|
            set
 | 
						|
            {
 | 
						|
                if (value == null)
 | 
						|
                    value = "";
 | 
						|
 | 
						|
                _CurrentTimeLineYearEndLabel = value;
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region WeekDaysNavigationEnabled
 | 
						|
 | 
						|
        private bool _WeekDaysNavigationEnabled = true;
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets or sets whether in Week View week-days navigation is enabled. Default value is true. When week-days navigation is enabled
 | 
						|
        /// and start date points to Monday and end date points to Friday, navigating to next day will navigate to next Monday-Friday view.
 | 
						|
        /// </summary>
 | 
						|
        [DefaultValue(true), Category("Behavior")]
 | 
						|
        [Description("Indicates whether in Week View week-days navigation is enabled. When week-days navigation is enabled and start date points to Monday and end date points to Friday, navigating to next day will navigate to next Monday-Friday view.")]
 | 
						|
        public bool WeekDaysNavigationEnabled
 | 
						|
        {
 | 
						|
            get { return _WeekDaysNavigationEnabled; }
 | 
						|
            set
 | 
						|
            {
 | 
						|
                _WeekDaysNavigationEnabled = value;
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region StyleManagerStyleChanged
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if
 | 
						|
        /// its style is controlled by StyleManager.
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="newStyle">New active style.</param>
 | 
						|
        [EditorBrowsable(EditorBrowsableState.Never)]
 | 
						|
        public override void StyleManagerStyleChanged(eDotNetBarStyle newStyle)
 | 
						|
        {
 | 
						|
            base.StyleManagerStyleChanged(newStyle);
 | 
						|
            UpdateButtonImages();
 | 
						|
            this.Style.BackColor1.Color = ((Office2007Renderer)GlobalManager.Renderer).ColorTable.CalendarView.TimeRulerColors[0].Colors[0];
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region Navigate_click routines
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Handles NavigateForward button clicks
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        private void NavigateForwardClick(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            NavigateDatesForward();
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Handles NavigateBack button clicks
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="sender"></param>
 | 
						|
        /// <param name="e"></param>
 | 
						|
        private void NavigateBackClick(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            NavigateDatesBack();
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateDatesForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Navigates forward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateDatesForward()
 | 
						|
        {
 | 
						|
            if (_CalendarView != null)
 | 
						|
            {
 | 
						|
                switch (_CalendarView.SelectedView)
 | 
						|
                {
 | 
						|
                    case eCalendarView.Day:
 | 
						|
                        NavigateDayForward();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Week:
 | 
						|
                        NavigateWeekForward();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Month:
 | 
						|
                        NavigateMonthForward();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Year:
 | 
						|
                        NavigateYearForward();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.TimeLine:
 | 
						|
                        NavigateTimeLineForward();
 | 
						|
                        break;
 | 
						|
                }
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #region NavigateDayForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateDayForward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateDayForward()
 | 
						|
        {
 | 
						|
            DateTime oldDate = _CalendarView.DayViewDate;
 | 
						|
            DateTime newDate = _CalendarView.DayViewDate.AddDays(1);
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Forward,
 | 
						|
                oldDate, oldDate, ref newDate, ref newDate) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.DayViewDate = newDate;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Forward, oldDate, oldDate, newDate, newDate);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateWeekForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateWeekForward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateWeekForward()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.WeekViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.WeekViewEndDate;
 | 
						|
 | 
						|
            TimeSpan span = calendarEnd.Subtract(calendarStart);
 | 
						|
            DateTime start = calendarStart.AddDays(1).Add(span);
 | 
						|
            DateTime end = calendarEnd.AddDays(1).Add(span);
 | 
						|
 | 
						|
            if (WeekDaysNavigationEnabled &&
 | 
						|
                calendarStart.DayOfWeek == DayOfWeek.Monday && calendarEnd.DayOfWeek == DayOfWeek.Friday)
 | 
						|
            {
 | 
						|
                // Browse week-days only
 | 
						|
 | 
						|
                start = calendarStart.AddDays(7);
 | 
						|
                end = start.AddDays(4);
 | 
						|
            }
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Forward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.WeekViewStartDate = start;
 | 
						|
                _CalendarView.WeekViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Forward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateMonthForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateMonthForward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateMonthForward()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.MonthViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.MonthViewEndDate;
 | 
						|
 | 
						|
            TimeSpan span = calendarEnd.Subtract(calendarStart);
 | 
						|
            DateTime start = calendarStart.AddMonths(1);
 | 
						|
            DateTime end = start.Add(span);
 | 
						|
 | 
						|
            if (calendarStart.Day == 1 &&
 | 
						|
                calendarEnd.Day == ScheduleSettings.GetActiveCulture().Calendar.GetDaysInMonth(calendarEnd.Year, calendarEnd.Month))
 | 
						|
            {
 | 
						|
                end = start.AddMonths(1).AddMinutes(-1);
 | 
						|
            }
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Forward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.MonthViewStartDate = start;
 | 
						|
                _CalendarView.MonthViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Forward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateYearForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateYearForward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateYearForward()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.YearViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.YearViewEndDate;
 | 
						|
 | 
						|
            int months = CountMonthSpan(calendarStart, calendarEnd);
 | 
						|
 | 
						|
            DateTime start = calendarEnd.AddMonths(1);
 | 
						|
            start = start.AddDays(-start.Day + 1);
 | 
						|
 | 
						|
            DateTime end = start.AddMonths(months + 1);
 | 
						|
            end = end.AddDays(-1);
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Forward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.YearViewStartDate = start;
 | 
						|
                _CalendarView.YearViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Forward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateTimeLineForward
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateTimeLineForward
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateTimeLineForward()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.TimeLineViewScrollStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.TimeLineViewScrollEndDate;
 | 
						|
 | 
						|
            DateTime start = GetForwardPeriodDate(_CalendarView.TimeLineViewScrollStartDate);
 | 
						|
            DateTime end = start;
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Forward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.TimeLineViewScrollStartDate = start;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Forward, calendarStart, calendarEnd,
 | 
						|
                    _CalendarView.TimeLineViewScrollStartDate, _CalendarView.TimeLineViewScrollEndDate);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region GetForwardPeriodDate
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets the next forward TimeLine Period Date
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="calendarStart">Current date</param>
 | 
						|
        /// <returns>Next Period Date</returns>
 | 
						|
        private DateTime GetForwardPeriodDate(DateTime calendarStart)
 | 
						|
        {
 | 
						|
            // Hours or Minutes
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Minutes ||
 | 
						|
                _CalendarView.TimeLinePeriod == eTimeLinePeriod.Hours)
 | 
						|
            {
 | 
						|
                // Move forward by a day
 | 
						|
 | 
						|
                calendarStart = calendarStart.AddDays(1);
 | 
						|
 | 
						|
                return (new DateTime(calendarStart.Year,
 | 
						|
                    calendarStart.Month, calendarStart.Day, 0, 0, 0));
 | 
						|
            }
 | 
						|
 | 
						|
            // Days
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Days)
 | 
						|
            {
 | 
						|
                // If our interval is a single day, then
 | 
						|
                // move forward by a month
 | 
						|
 | 
						|
                if (_CalendarView.TimeLineInterval == 1)
 | 
						|
                {
 | 
						|
                    calendarStart = calendarStart.AddMonths(1);
 | 
						|
 | 
						|
                    return (new DateTime(calendarStart.Year, calendarStart.Month, 1));
 | 
						|
                }
 | 
						|
 | 
						|
                // The interval is multiple days, so
 | 
						|
                // move forward by a year
 | 
						|
 | 
						|
                calendarStart = calendarStart.AddYears(1);
 | 
						|
 | 
						|
                if (calendarStart.AddMinutes(_CalendarView.BaseInterval).Year > calendarStart.Year)
 | 
						|
                    calendarStart = calendarStart.AddYears(1);
 | 
						|
 | 
						|
                return (new DateTime(calendarStart.Year, 1, 1));
 | 
						|
            }
 | 
						|
 | 
						|
            // Years
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Years)
 | 
						|
            {
 | 
						|
                TimeSpan ts = calendarStart - _CalendarView.TimeLineViewStartDate;
 | 
						|
 | 
						|
                // Move forward by 10 columns at a time
 | 
						|
 | 
						|
                int interval = (int)(ts.TotalMinutes / _CalendarView.BaseInterval);
 | 
						|
 | 
						|
                interval = ((interval + 10) / 10) * 10;
 | 
						|
 | 
						|
                return (_CalendarView.TimeLineViewStartDate.AddMinutes(
 | 
						|
                    interval * _CalendarView.BaseInterval));
 | 
						|
            }
 | 
						|
 | 
						|
            return (calendarStart);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateDatesBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Navigates back
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateDatesBack()
 | 
						|
        {
 | 
						|
            if (_CalendarView != null)
 | 
						|
            {
 | 
						|
                switch (_CalendarView.SelectedView)
 | 
						|
                {
 | 
						|
                    case eCalendarView.Day:
 | 
						|
                        NavigateDayBack();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Week:
 | 
						|
                        NavigateWeekBack();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Month:
 | 
						|
                        NavigateMonthBack();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.Year:
 | 
						|
                        NavigateYearBack();
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eCalendarView.TimeLine:
 | 
						|
                        NavigateTimeLineBack();
 | 
						|
                        break;
 | 
						|
                }
 | 
						|
 | 
						|
                UpdateDisplay();
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #region NavigateDayBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateDayBack
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateDayBack()
 | 
						|
        {
 | 
						|
            DateTime oldDate = _CalendarView.DayViewDate;
 | 
						|
            DateTime newDate = _CalendarView.DayViewDate.AddDays(-1);
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Backward,
 | 
						|
                oldDate, oldDate, ref newDate, ref newDate) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.DayViewDate = newDate;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Backward, oldDate, oldDate, newDate, newDate);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateWeekBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateWeekBack
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateWeekBack()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.WeekViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.WeekViewEndDate;
 | 
						|
 | 
						|
            TimeSpan span = calendarEnd.Subtract(calendarStart).Negate();
 | 
						|
            DateTime start = calendarStart.AddDays(-1).Add(span);
 | 
						|
            DateTime end = calendarEnd.AddDays(-1).Add(span);
 | 
						|
 | 
						|
            if (WeekDaysNavigationEnabled &&
 | 
						|
                calendarStart.DayOfWeek == DayOfWeek.Monday && calendarEnd.DayOfWeek == DayOfWeek.Friday)
 | 
						|
            {
 | 
						|
                // Browse week-days only
 | 
						|
 | 
						|
                start = calendarStart.AddDays(-7);
 | 
						|
                end = start.AddDays(4);
 | 
						|
            }
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Backward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.WeekViewStartDate = start;
 | 
						|
                _CalendarView.WeekViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Backward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateMonthBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateMonthBack
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateMonthBack()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.MonthViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.MonthViewEndDate;
 | 
						|
 | 
						|
            TimeSpan span = calendarEnd.Subtract(calendarStart);
 | 
						|
            DateTime start = calendarStart.AddMonths(-1);
 | 
						|
            DateTime end = start.Add(span);
 | 
						|
 | 
						|
            if (calendarStart.Day == 1 &&
 | 
						|
                calendarEnd.Day == ScheduleSettings.GetActiveCulture().Calendar.GetDaysInMonth(calendarEnd.Year, calendarEnd.Month))
 | 
						|
            {
 | 
						|
                end = start.AddMonths(1).AddMinutes(-1);
 | 
						|
            }
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Backward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.MonthViewStartDate = start;
 | 
						|
                _CalendarView.MonthViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Backward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateYearBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateYearBack
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateYearBack()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.YearViewStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.YearViewEndDate;
 | 
						|
 | 
						|
            int months = CountMonthSpan(calendarStart, calendarEnd);
 | 
						|
 | 
						|
            DateTime end = calendarStart.AddDays(-1);
 | 
						|
            DateTime start = end.AddMonths(-months);
 | 
						|
            start = start.AddDays(-start.Day + 1);
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Backward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.YearViewStartDate = start;
 | 
						|
                _CalendarView.YearViewEndDate = end;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Backward, calendarStart, calendarEnd, start, end);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region NavigateTimeLineBack
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// NavigateTimeLineBack
 | 
						|
        /// </summary>
 | 
						|
        private void NavigateTimeLineBack()
 | 
						|
        {
 | 
						|
            DateTime calendarStart = _CalendarView.TimeLineViewScrollStartDate;
 | 
						|
            DateTime calendarEnd = _CalendarView.TimeLineViewScrollEndDate;
 | 
						|
 | 
						|
            DateTime start = GetBackPeriodDate(_CalendarView.TimeLineViewScrollStartDate);
 | 
						|
            DateTime end = start;
 | 
						|
 | 
						|
            if (DoDateChanging(NavigationDirection.Backward,
 | 
						|
                calendarStart, calendarEnd, ref start, ref end) == false)
 | 
						|
            {
 | 
						|
                _CalendarView.TimeLineViewScrollStartDate = start;
 | 
						|
 | 
						|
                DoDateChanged(NavigationDirection.Backward, calendarStart, calendarEnd,
 | 
						|
                    _CalendarView.TimeLineViewScrollStartDate, _CalendarView.TimeLineViewScrollEndDate);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region GetBackPeriodDate
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets the next back TimeLine Period Date
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="calendarStart">Current date</param>
 | 
						|
        /// <returns>Next back Period Date</returns>
 | 
						|
        private DateTime GetBackPeriodDate(DateTime calendarStart)
 | 
						|
        {
 | 
						|
            // Hours or minutes
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Minutes ||
 | 
						|
                _CalendarView.TimeLinePeriod == eTimeLinePeriod.Hours)
 | 
						|
            {
 | 
						|
                // Go back by a day
 | 
						|
 | 
						|
                if (calendarStart.Hour == 0)
 | 
						|
                    calendarStart = calendarStart.AddDays(-1);
 | 
						|
 | 
						|
                return (new DateTime(calendarStart.Year,
 | 
						|
                    calendarStart.Month, calendarStart.Day, 0, 0, 0));
 | 
						|
            }
 | 
						|
 | 
						|
            // Days
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Days)
 | 
						|
            {
 | 
						|
                // If the interval is a single day
 | 
						|
                // then go back by a month
 | 
						|
 | 
						|
                if (_CalendarView.TimeLineInterval == 1)
 | 
						|
                {
 | 
						|
                    if (calendarStart.Day == 1)
 | 
						|
                        calendarStart = calendarStart.AddMonths(-1);
 | 
						|
 | 
						|
                    return (new DateTime(calendarStart.Year, calendarStart.Month, 1));
 | 
						|
                }
 | 
						|
 | 
						|
                // Multi-day interval, go back
 | 
						|
                // by a year
 | 
						|
 | 
						|
                if (calendarStart.AddMinutes(-_CalendarView.BaseInterval).Year < calendarStart.Year)
 | 
						|
                    calendarStart = calendarStart.AddYears(-1);
 | 
						|
 | 
						|
                return (new DateTime(calendarStart.Year, 1, 1));
 | 
						|
            }
 | 
						|
 | 
						|
            // Years
 | 
						|
 | 
						|
            if (_CalendarView.TimeLinePeriod == eTimeLinePeriod.Years)
 | 
						|
            {
 | 
						|
                TimeSpan ts = calendarStart - _CalendarView.TimeLineViewStartDate;
 | 
						|
 | 
						|
                // Go back 10 columns
 | 
						|
 | 
						|
                int interval = (int)(ts.TotalMinutes / _CalendarView.BaseInterval);
 | 
						|
 | 
						|
                interval = ((interval % 10 == 0)
 | 
						|
                    ? interval - 10 : (interval / 10) * 10);
 | 
						|
 | 
						|
                return (_CalendarView.TimeLineViewStartDate.AddMinutes(
 | 
						|
                    interval * _CalendarView.BaseInterval));
 | 
						|
            }
 | 
						|
 | 
						|
            return (calendarStart);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region CountMonthSpan
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// CountMonthSpan
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="calendarStart"></param>
 | 
						|
        /// <param name="calendarEnd"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        private int CountMonthSpan(DateTime calendarStart, DateTime calendarEnd)
 | 
						|
        {
 | 
						|
            int monthSpan = (calendarEnd.Year * 12 + calendarEnd.Month) -
 | 
						|
                (calendarStart.Year * 12 + calendarStart.Month);
 | 
						|
 | 
						|
            return (monthSpan > MaxYearMonthSpan ? MaxYearMonthSpan : monthSpan);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateDisplay
 | 
						|
 | 
						|
        #region UpdateDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the Date Label text
 | 
						|
        /// </summary>
 | 
						|
        public void UpdateDisplay()
 | 
						|
        {
 | 
						|
            if (IsDisposed == false)
 | 
						|
            {
 | 
						|
                if (_CalendarView == null)
 | 
						|
                {
 | 
						|
                    CurrentDateLabel.Text = "";
 | 
						|
                }
 | 
						|
                else
 | 
						|
                {
 | 
						|
                    if (GetDateLabel != null)
 | 
						|
                    {
 | 
						|
                        GetDateLabelEventArgs args = new GetDateLabelEventArgs();
 | 
						|
 | 
						|
                        GetDateLabel(this, args);
 | 
						|
 | 
						|
                        if (string.IsNullOrEmpty(args.DateLabel) == false)
 | 
						|
                        {
 | 
						|
                            CurrentDateLabel.Text = args.DateLabel;
 | 
						|
                            return;
 | 
						|
                        }
 | 
						|
                    }
 | 
						|
 | 
						|
                    IFormatProvider formatProvider =
 | 
						|
                        ScheduleSettings.GetActiveCulture(); //.GetFormat(typeof (DateTime));
 | 
						|
 | 
						|
                    switch (_CalendarView.SelectedView)
 | 
						|
                    {
 | 
						|
                        case eCalendarView.Day:
 | 
						|
                            UpdateDayDisplay(formatProvider, _CalendarView.DayViewDate);
 | 
						|
                            break;
 | 
						|
 | 
						|
                        case eCalendarView.Week:
 | 
						|
                            UpdateWeekDisplay(formatProvider,
 | 
						|
                                _CalendarView.WeekViewStartDate, _CalendarView.WeekViewEndDate);
 | 
						|
                            break;
 | 
						|
 | 
						|
                        case eCalendarView.Month:
 | 
						|
                            UpdateMonthDisplay(formatProvider,
 | 
						|
                                _CalendarView.MonthViewStartDate, _CalendarView.MonthViewEndDate);
 | 
						|
                            break;
 | 
						|
 | 
						|
                        case eCalendarView.Year:
 | 
						|
                            UpdateYearDisplay(formatProvider,
 | 
						|
                                _CalendarView.YearViewStartDate, _CalendarView.YearViewEndDate);
 | 
						|
                            break;
 | 
						|
 | 
						|
                        case eCalendarView.TimeLine:
 | 
						|
                            UpdateTimeLineDisplay(formatProvider,
 | 
						|
                                _CalendarView.TimeLineViewScrollStartDate,
 | 
						|
                                _CalendarView.TimeLineViewScrollEndDate);
 | 
						|
                            break;
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateDayDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the DayView display
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="formatProvider"></param>
 | 
						|
        /// <param name="start"></param>
 | 
						|
        private void UpdateDayDisplay(IFormatProvider formatProvider, DateTime start)
 | 
						|
        {
 | 
						|
            CurrentDateLabel.Text = (start == DateTime.MinValue)
 | 
						|
                ? "" : start.ToString(CurrentDayLabel, formatProvider);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateWeekDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the WeekView display
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="formatProvider"></param>
 | 
						|
        /// <param name="start"></param>
 | 
						|
        /// <param name="end"></param>
 | 
						|
        private void UpdateWeekDisplay(IFormatProvider formatProvider, DateTime start, DateTime end)
 | 
						|
        {
 | 
						|
            if (start == DateTime.MinValue || end == DateTime.MinValue)
 | 
						|
            {
 | 
						|
                CurrentDateLabel.Text = "";
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                if (start.Year == end.Year && start.Month == end.Month)
 | 
						|
                {
 | 
						|
                    CurrentDateLabel.Text =
 | 
						|
                        start.ToString(CurrentWeekSameYearStartLabel, formatProvider) + @" - " +
 | 
						|
                        end.ToString(CurrentWeekSameYearEndLabel, formatProvider);
 | 
						|
                }
 | 
						|
                else if (start.Year == end.Year)
 | 
						|
                {
 | 
						|
                    CurrentDateLabel.Text =
 | 
						|
                        start.ToString(CurrentWeekSameMonthYearStartLabel, formatProvider) + @" - " +
 | 
						|
                        end.ToString(CurrentWeekSameMonthYearEndLabel, formatProvider);
 | 
						|
                }
 | 
						|
                else
 | 
						|
                {
 | 
						|
                    CurrentDateLabel.Text =
 | 
						|
                        start.ToString(CurrentWeekStartLabel, formatProvider) + @" - " +
 | 
						|
                        end.ToString(CurrentWeekEndLabel, formatProvider);
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateMonthDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the MonthView display
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="formatProvider"></param>
 | 
						|
        /// <param name="start"></param>
 | 
						|
        /// <param name="end"></param>
 | 
						|
        private void UpdateMonthDisplay(IFormatProvider formatProvider, DateTime start, DateTime end)
 | 
						|
        {
 | 
						|
            if (start == DateTime.MinValue || end == DateTime.MinValue)
 | 
						|
            {
 | 
						|
                CurrentDateLabel.Text = "";
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                string s = start.ToString(CurrentMonthStartLabel, formatProvider);
 | 
						|
 | 
						|
                if (end.Year != start.Year)
 | 
						|
                    s += " - " + end.ToString(CurrentMonthEndLabel, formatProvider);
 | 
						|
 | 
						|
                CurrentDateLabel.Text = s;
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateYearDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the YearView display
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="formatProvider"></param>
 | 
						|
        /// <param name="start"></param>
 | 
						|
        /// <param name="end"></param>
 | 
						|
        private void UpdateYearDisplay(IFormatProvider formatProvider, DateTime start, DateTime end)
 | 
						|
        {
 | 
						|
            if (start == DateTime.MinValue)
 | 
						|
            {
 | 
						|
                CurrentDateLabel.Text = "";
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                string s = start.ToString(CurrentYearStartLabel, formatProvider);
 | 
						|
 | 
						|
                if (start.Month != end.Month || start.Year != end.Year)
 | 
						|
                    s += " - " + end.ToString(CurrentYearEndLabel, formatProvider);
 | 
						|
 | 
						|
                CurrentDateLabel.Text = s;
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateTimeLineDisplay
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the TimeLineView display
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="formatProvider"></param>
 | 
						|
        /// <param name="start"></param>
 | 
						|
        /// <param name="end"></param>
 | 
						|
        private void UpdateTimeLineDisplay(IFormatProvider formatProvider, DateTime start, DateTime end)
 | 
						|
        {
 | 
						|
            if (start == DateTime.MinValue || end == DateTime.MinValue)
 | 
						|
            {
 | 
						|
                CurrentDateLabel.Text = "";
 | 
						|
            }
 | 
						|
            else
 | 
						|
            {
 | 
						|
                switch (_CalendarView.TimeLinePeriod)
 | 
						|
                {
 | 
						|
                    case eTimeLinePeriod.Hours:
 | 
						|
                    case eTimeLinePeriod.Minutes:
 | 
						|
                        CurrentDateLabel.Text = start.ToString(CurrentTimeLineHourLabel, formatProvider);
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eTimeLinePeriod.Days:
 | 
						|
                        if (start.Year == end.Year && start.Month == end.Month)
 | 
						|
                        {
 | 
						|
                            CurrentDateLabel.Text =
 | 
						|
                                start.ToString(CurrentTimeLineDaySameMonthYearStartLabel, formatProvider) + @" - " +
 | 
						|
                                end.ToString(CurrentTimeLineDaySameMonthYearEndLabel, formatProvider);
 | 
						|
                        }
 | 
						|
                        else if (start.Year == end.Year)
 | 
						|
                        {
 | 
						|
                            CurrentDateLabel.Text =
 | 
						|
                                start.ToString(CurrentTimeLineDaySameYearStartLabel, formatProvider) + @" - " +
 | 
						|
                                end.ToString(CurrentTimeLineDaySameYearEndLabel, formatProvider);
 | 
						|
                        }
 | 
						|
                        else
 | 
						|
                        {
 | 
						|
                            CurrentDateLabel.Text =
 | 
						|
                                start.ToString(CurrentTimeLineDayStartLabel, formatProvider) + @" - " +
 | 
						|
                                end.ToString(CurrentTimeLineDayEndLabel, formatProvider);
 | 
						|
                        }
 | 
						|
                        break;
 | 
						|
 | 
						|
                    case eTimeLinePeriod.Years:
 | 
						|
                        CurrentDateLabel.Text =
 | 
						|
                            start.ToString(CurrentTimeLineYearStartLabel, formatProvider) + @" - " +
 | 
						|
                            end.ToString(CurrentTimeLineYearEndLabel, formatProvider);
 | 
						|
                        break;
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region UpdateButtonImages
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Updates the button images
 | 
						|
        /// </summary>
 | 
						|
        private void UpdateButtonImages()
 | 
						|
        {
 | 
						|
            Bitmap image = new Bitmap(10, 10, PixelFormat.Format32bppArgb);
 | 
						|
            using (Graphics g = Graphics.FromImage(image))
 | 
						|
            {
 | 
						|
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
 | 
						|
                using (Pen pen = new Pen(GetImageForeColor(), 2))
 | 
						|
                {
 | 
						|
                    g.DrawLines(pen, new Point[] {
 | 
						|
                        new Point(5,0),
 | 
						|
                        new Point(1,4),
 | 
						|
                        new Point(5,8)
 | 
						|
                    });
 | 
						|
                    g.DrawLines(pen, new Point[] {
 | 
						|
                        new Point(1,4),
 | 
						|
                        new Point(9,4)
 | 
						|
                    });
 | 
						|
 | 
						|
                }
 | 
						|
            }
 | 
						|
            if (NavigateBack.Image != null)
 | 
						|
            {
 | 
						|
                Image img = NavigateBack.Image;
 | 
						|
                NavigateBack.Image = null;
 | 
						|
                img.Dispose();
 | 
						|
            }
 | 
						|
            NavigateBack.Image = image;
 | 
						|
 | 
						|
 | 
						|
            image = new Bitmap(10, 10, PixelFormat.Format32bppArgb);
 | 
						|
            using (Graphics g = Graphics.FromImage(image))
 | 
						|
            {
 | 
						|
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
 | 
						|
                using (Pen pen = new Pen(GetImageForeColor(), 2))
 | 
						|
                {
 | 
						|
                    g.DrawLines(pen, new Point[] {
 | 
						|
                        new Point(0,4),
 | 
						|
                        new Point(8,4),
 | 
						|
                        new Point(4,0),
 | 
						|
                        new Point(8,4),
 | 
						|
                        new Point(4,8)
 | 
						|
                    });
 | 
						|
                }
 | 
						|
            }
 | 
						|
            if (NavigateForward.Image != null)
 | 
						|
            {
 | 
						|
                Image img = NavigateForward.Image;
 | 
						|
                NavigateForward.Image = null;
 | 
						|
                img.Dispose();
 | 
						|
            }
 | 
						|
            NavigateForward.Image = image;
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// Gets image fore color
 | 
						|
        /// </summary>
 | 
						|
        /// <returns></returns>
 | 
						|
        private Color GetImageForeColor()
 | 
						|
        {
 | 
						|
            if (GlobalManager.Renderer is Office2007Renderer)
 | 
						|
            {
 | 
						|
                return ((Office2007Renderer)GlobalManager.Renderer).ColorTable.CheckBoxItem.Default.Text;
 | 
						|
            }
 | 
						|
 | 
						|
            return this.ColorScheme.ItemText;
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region DoDateChanging
 | 
						|
 | 
						|
        private bool DoDateChanging(NavigationDirection direction,
 | 
						|
            DateTime oldStartDate, DateTime oldEndDate, ref DateTime newStartDate, ref DateTime newEndDate)
 | 
						|
        {
 | 
						|
            if (DateChanging != null)
 | 
						|
            {
 | 
						|
                DateChangingEventArgs ev = new DateChangingEventArgs(
 | 
						|
                    direction, oldStartDate, oldEndDate, newStartDate, newEndDate);
 | 
						|
 | 
						|
                DateChanging(this, ev);
 | 
						|
 | 
						|
                if (ev.Cancel == true)
 | 
						|
                    return (true);
 | 
						|
 | 
						|
                newStartDate = ev.NewStartDate;
 | 
						|
                newEndDate = ev.NewEndDate;
 | 
						|
            }
 | 
						|
 | 
						|
            return (false);
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region DoDateChanged
 | 
						|
 | 
						|
        private void DoDateChanged(NavigationDirection direction,
 | 
						|
            DateTime oldStartDate, DateTime oldEndDate, DateTime newStartDate, DateTime newEndDate)
 | 
						|
        {
 | 
						|
            if (DateChanged != null)
 | 
						|
            {
 | 
						|
                DateChangedEventArgs ev = new DateChangedEventArgs(
 | 
						|
                    direction, oldStartDate, oldEndDate, newStartDate, newEndDate);
 | 
						|
 | 
						|
                DateChanged(this, ev);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region DateChangingEventArgs
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// DateChangingEventArgs
 | 
						|
        /// </summary>
 | 
						|
        public class DateChangingEventArgs : DateChangedEventArgs
 | 
						|
        {
 | 
						|
            #region Private variables
 | 
						|
 | 
						|
            private bool _Cancel;
 | 
						|
 | 
						|
            #endregion
 | 
						|
 | 
						|
            public DateChangingEventArgs(NavigationDirection direction,
 | 
						|
                DateTime oldStartDate, DateTime oldEndDate, DateTime newStartDate, DateTime newEndDate)
 | 
						|
                : base(direction, oldStartDate, oldEndDate, newStartDate, newEndDate)
 | 
						|
            {
 | 
						|
            }
 | 
						|
 | 
						|
            #region Public properties
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets or sets whether to cancel the operation
 | 
						|
            /// </summary>
 | 
						|
            public bool Cancel
 | 
						|
            {
 | 
						|
                get { return (_Cancel); }
 | 
						|
                set { _Cancel = value; }
 | 
						|
            }
 | 
						|
 | 
						|
            #endregion
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region DateChangedEventArgs
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// DateChangingEventArgs
 | 
						|
        /// </summary>
 | 
						|
        public class DateChangedEventArgs : EventArgs
 | 
						|
        {
 | 
						|
            #region Private variables
 | 
						|
 | 
						|
            NavigationDirection _Direction;
 | 
						|
 | 
						|
            private DateTime _OldStartDate;
 | 
						|
            private DateTime _OldEndDate;
 | 
						|
            private DateTime _NewStartDate;
 | 
						|
            private DateTime _NewEndDate;
 | 
						|
 | 
						|
            #endregion
 | 
						|
 | 
						|
            public DateChangedEventArgs(NavigationDirection direction,
 | 
						|
                DateTime oldStartDate, DateTime oldEndDate, DateTime newStartDate, DateTime newEndDate)
 | 
						|
            {
 | 
						|
                _Direction = direction;
 | 
						|
 | 
						|
                _OldStartDate = oldStartDate;
 | 
						|
                _OldEndDate = oldEndDate;
 | 
						|
                _NewStartDate = newStartDate;
 | 
						|
                _NewEndDate = newEndDate;
 | 
						|
            }
 | 
						|
 | 
						|
            #region Public properties
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets the navigation direction
 | 
						|
            /// </summary>
 | 
						|
            public NavigationDirection Direction
 | 
						|
            {
 | 
						|
                get { return (_Direction); }
 | 
						|
                set { _Direction = value; }
 | 
						|
            }
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets the old navigation start date
 | 
						|
            /// </summary>
 | 
						|
            public DateTime OldStartDate
 | 
						|
            {
 | 
						|
                get { return (_OldStartDate); }
 | 
						|
            }
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets the old navigation end date
 | 
						|
            /// </summary>
 | 
						|
            public DateTime OldEndDate
 | 
						|
            {
 | 
						|
                get { return (_OldEndDate); }
 | 
						|
            }
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets or sets the new navigation start date
 | 
						|
            /// </summary>
 | 
						|
            public DateTime NewStartDate
 | 
						|
            {
 | 
						|
                get { return (_NewStartDate); }
 | 
						|
                set { _NewStartDate = value; }
 | 
						|
            }
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets or sets the new navigation end date
 | 
						|
            /// </summary>
 | 
						|
            public DateTime NewEndDate
 | 
						|
            {
 | 
						|
                get { return (_NewEndDate); }
 | 
						|
                set { _NewEndDate = value; }
 | 
						|
            }
 | 
						|
 | 
						|
            #endregion
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region GetDateLabelEventArgs
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// GetDateLabelEventArgs
 | 
						|
        /// </summary>
 | 
						|
        public class GetDateLabelEventArgs : EventArgs
 | 
						|
        {
 | 
						|
            #region Private variables
 | 
						|
 | 
						|
            private string _DateLabel;
 | 
						|
 | 
						|
            #endregion
 | 
						|
 | 
						|
            #region Public properties
 | 
						|
 | 
						|
            /// <summary>
 | 
						|
            /// Gets the formatted DateLabel
 | 
						|
            /// </summary>
 | 
						|
            public string DateLabel
 | 
						|
            {
 | 
						|
                get { return (_DateLabel); }
 | 
						|
                set { _DateLabel = value; }
 | 
						|
            }
 | 
						|
 | 
						|
            #endregion
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
    }
 | 
						|
 | 
						|
    #region enums
 | 
						|
 | 
						|
    public enum NavigationDirection
 | 
						|
    {
 | 
						|
        Forward,
 | 
						|
        Backward
 | 
						|
    }
 | 
						|
 | 
						|
    #endregion
 | 
						|
}
 | 
						|
#endif
 | 
						|
 |