Esempio n. 1
0
 private void Calendar_DisplayModeChanged(object sender, CalendarModeChangedEventArgs e)
 {
     if (e != null)
     {
         this._calendarMode = e.NewMode;
     }
 }
Esempio n. 2
0
        internal CalendarButton GetCalendarButton(DateTime date, CalendarMode mode)
        {
            Debug.Assert(mode != CalendarMode.Month);

            foreach (CalendarButton b in GetCalendarButtons())
            {
                if (b != null && b.DataContext is DateTime)
                {
                    if (mode == CalendarMode.Year)
                    {
                        if (DateTimeHelper.CompareYearMonth(date, (DateTime)b.DataContext) == 0)
                        {
                            return(b);
                        }
                    }
                    else
                    {
                        if (date.Year == ((DateTime)b.DataContext).Year)
                        {
                            return(b);
                        }
                    }
                }
            }

            return(null);
        }
Esempio n. 3
0
        private static bool IsValidDisplayMode(object value)
        {
            CalendarMode mode = (CalendarMode)value;

            return(mode == CalendarMode.Year ||
                   mode == CalendarMode.Decade ||
                   mode == CalendarMode.Month);
        }
Esempio n. 4
0
 // Token: 0x0600261B RID: 9755 RVA: 0x000B6138 File Offset: 0x000B4338
 internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode)
 {
     if (owningCalendar == null)
     {
         throw new ArgumentNullException("owningCalendar");
     }
     this.Date           = date;
     this.ButtonMode     = buttonMode;
     this.OwningCalendar = owningCalendar;
 }
Esempio n. 5
0
        /// <summary>
        /// Builds the visual tree for the DatePicker control when a new template is applied.
        /// </summary>
        public override void OnApplyTemplate()
        {
            base.OnApplyTemplate();

            _dropDownButton = GetTemplateChild(DATEPICKER_elementButtonName) as Button;

            if (_dropDownButton != null)
            {
                _dropDownButton.MouseLeftButtonDown += new MouseButtonEventHandler(DropDownButton_MouseLeftButtonDown);
                _dropDownButton.KeyDown             += new KeyEventHandler(DropDownButton_KeyDown);
                _dropDownButton.IsTabStop            = false;
            }

            _rootGrid = GetTemplateChild(DATEPICKER_elementRootName) as Grid;

            if (_rootGrid != null)
            {
                _stateDisabled         = _rootGrid.Resources[DATEPICKER_stateDisabledName] as Storyboard;
                _stateNormal           = _rootGrid.Resources[DATEPICKER_stateNormalName] as Storyboard;
                _rootGrid.SizeChanged += new SizeChangedEventHandler(RootGrid_SizeChanged);
            }

            _textBox        = GetTemplateChild(DATEPICKER_elementTextBoxName) as WatermarkedTextBox;
            _disabledVisual = GetTemplateChild("DisabledVisual") as FrameworkElement;


            UpdateDisabledVisual(this.IsEnabled);

            this._calendarMode        = CalendarMode.Month;
            this.MouseLeftButtonDown += new MouseButtonEventHandler(DatePicker_MouseLeftButtonDown);
            this.IsTabStop            = true;
            SetWaterMarkText();

            if (_textBox != null)
            {
                _textBox.KeyDown  += new KeyEventHandler(TextBox_KeyDown);
                _textBox.IsTabStop = true;

                if (this.SelectedDate == null)
                {
                    if (!string.IsNullOrEmpty(this._defaultText))
                    {
                        _textBox.Text = this._defaultText;
                    }
                }
                else
                {
                    _textBox.Text = this.DateTimeToString((DateTime)this.SelectedDate);
                }
            }
        }
Esempio n. 6
0
        public static swc.CalendarSelectionMode ToWpf(this CalendarMode mode)
        {
            switch (mode)
            {
            case CalendarMode.Single:
                return(swc.CalendarSelectionMode.SingleDate);

            case CalendarMode.Range:
                return(swc.CalendarSelectionMode.SingleRange);

            default:
                throw new NotSupportedException();
            }
        }
Esempio n. 7
0
        public static NSDatePickerMode ToNS(this CalendarMode mode)
        {
            switch (mode)
            {
            case CalendarMode.Single:
                return(NSDatePickerMode.Single);

            case CalendarMode.Range:
                return(NSDatePickerMode.Range);

            default:
                throw new NotSupportedException();
            }
        }
Esempio n. 8
0
        private static void DisplayTimeEndPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
        {
            CusDatePicker picker   = sender as CusDatePicker;
            Calendar      calendar = picker._calendar;

            if (calendar == null)
            {
                return;
            }
            calendar.DisplayDateEnd = null;
            if (e.NewValue == null)
            {
                return;
            }
            CalendarMode displaymode = picker.DisplayMode;
            DateTime     end;

            if (displaymode == CalendarMode.Year)
            {
                if (DateTime.TryParse(e.NewValue.ToString(), out end))
                {
                    calendar.DisplayDateEnd = end;
                }
                if (!string.IsNullOrWhiteSpace(picker.SelectedTime))
                {
                    if (DateTime.TryParse(picker.SelectedTime, out end))
                    {
                        calendar.DisplayDate = end;
                    }
                }
            }
            else if (displaymode == CalendarMode.Decade)
            {
                int year;
                if (int.TryParse(e.NewValue.ToString(), out year))
                {
                    end = new DateTime(year, 6, 8);
                    calendar.DisplayDateEnd = end;
                }
                if (!string.IsNullOrWhiteSpace(picker.SelectedTime))
                {
                    if (int.TryParse(picker.SelectedTime, out year))
                    {
                        end = new DateTime(year, 6, 8);
                        calendar.DisplayDate = end;
                    }
                }
            }
        }
Esempio n. 9
0
        /// <summary>
        /// Initializes a new instance of the DateTimeAutomationPeer class.
        /// </summary>
        /// <param name="date"></param>
        /// <param name="owningCalendar"></param>
        /// <param name="buttonMode"></param>
        internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode)
            : base()
        {
            if (date == null)
            {
                throw new ArgumentNullException("date");
            }
            if (owningCalendar == null)
            {
                throw new ArgumentNullException("owningCalendar");
            }

            Date           = date;
            ButtonMode     = buttonMode;
            OwningCalendar = owningCalendar;
        }
Esempio n. 10
0
        /// <summary>
        /// Initializes a new instance of the DateTimeAutomationPeer class.
        /// </summary>
        /// <param name="date"></param>
        /// <param name="owningCalendar"></param>
        /// <param name="buttonMode"></param>
        internal DateTimeAutomationPeer(DateTime date, Calendar owningCalendar, CalendarMode buttonMode)
            : base()
        {
            if (date == null)
            {
                throw new ArgumentNullException("date");
            }
            if (owningCalendar == null)
            {
                throw new ArgumentNullException("owningCalendar");
            }

            Date = date;
            ButtonMode = buttonMode;
            OwningCalendar = owningCalendar;
        }
Esempio n. 11
0
        private void next7Days_Click(object sender, RoutedEventArgs e)
        {
            CalendarMode _d = calendarDisplayMode;

            calendarDisplayMode  = CalendarMode.Week;
            weekButton.IsChecked = true;

            CreateWeekView();
            UpdateRibbon();

            DateTime nextWeek = DateTime.Now.AddDays(7);

            weekView.GoTo(nextWeek);

            if (_d == CalendarMode.Month)
            {
                monthView.SaveAndClose();

                if (Settings.AnimationsEnabled)
                {
                    AnimationHelpers.ZoomDisplay anim = new AnimationHelpers.ZoomDisplay(monthView, weekView);
                    anim.SwitchViews(AnimationHelpers.ZoomDirection.In);
                }
                else
                {
                    weekView.Visibility  = Visibility.Visible;
                    monthView.Visibility = Visibility.Hidden;
                }
            }
            else if (_d == CalendarMode.Day)
            {
                dayView.EndEdit();

                if (Settings.AnimationsEnabled)
                {
                    AnimationHelpers.ZoomDisplay anim = new AnimationHelpers.ZoomDisplay(dayView, weekView);
                    anim.SwitchViews(AnimationHelpers.ZoomDirection.Out);
                }
                else
                {
                    weekView.Visibility = Visibility.Visible;
                    dayView.Visibility  = Visibility.Hidden;
                }
            }
        }
Esempio n. 12
0
        private void SetActiveLayout(CalendarMode mode)
        {
            switch (mode)
            {
            case CalendarMode.EditBox:
                activeLayout = editBoxLayout;
                break;

            case CalendarMode.SelectBox:
                break;

            case CalendarMode.Label:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
        // Token: 0x0600253C RID: 9532 RVA: 0x000B3A48 File Offset: 0x000B1C48
        private DateTime?GetNextDate(DateTimeAutomationPeer currentDatePeer, CalendarMode currentMode)
        {
            DateTime?result   = null;
            DateTime dateTime = (currentDatePeer != null) ? currentDatePeer.Date : this.OwningCalendar.DisplayDate;

            if (currentMode == CalendarMode.Month)
            {
                result = new DateTime?(dateTime.AddDays(1.0));
            }
            else if (currentMode == CalendarMode.Year)
            {
                result = new DateTime?(dateTime.AddMonths(1));
            }
            else if (currentMode == CalendarMode.Decade)
            {
                result = new DateTime?(dateTime.AddYears(1));
            }
            return(result);
        }
Esempio n. 14
0
        private static void SetCalendarEventHandlers(DatePicker datePicker, DependencyPropertyChangedEventArgs e)
        {
            if (e.NewValue == e.OldValue)
            {
                return;
            }
            CalendarMode mode = (CalendarMode)e.NewValue;

            if (mode == CalendarMode.Year || mode == CalendarMode.Decade)
            {
                datePicker.CalendarOpened += DatePickerOnCalendarOpened;
                datePicker.CalendarClosed += DatePickerOnCalendarClosed;
            }
            else
            {
                datePicker.CalendarOpened -= DatePickerOnCalendarOpened;
                datePicker.CalendarClosed -= DatePickerOnCalendarClosed;
            }
        }
Esempio n. 15
0
        private DateTime?GetNextDate(DateTimeAutomationPeer currentDatePeer, CalendarMode currentMode)
        {
            DateTime?nextDate = null;

            DateTime startDate = (currentDatePeer != null) ? currentDatePeer.Date : OwningCalendar.DisplayDate;

            if (currentMode == CalendarMode.Month)
            {
                nextDate = startDate.AddDays(1);
            }
            else if (currentMode == CalendarMode.Year)
            {
                nextDate = startDate.AddMonths(1);
            }
            else if (currentMode == CalendarMode.Decade)
            {
                nextDate = startDate.AddYears(1);
            }

            return(nextDate);
        }
 /// <summary>
 /// Inherited code: Requires comment.
 /// </summary>
 /// <param name="mode">Inherited code: Requires comment 1.</param>
 /// <returns>Inherited code: Requires comment 2.</returns>
 private static bool IsValidDisplayMode(CalendarMode mode)
 {
     return mode == CalendarMode.Month
         || mode == CalendarMode.Year
         || mode == CalendarMode.Decade;
 }
 /// <summary>
 /// Initializes a new instance of the
 /// <see cref="T:WinRTXamlToolkit.Controls.CalendarModeChangedEventArgs" />
 /// class.
 /// </summary>
 /// <param name="oldMode">The previous mode.</param>
 /// <param name="newMode">The new mode.</param>
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
     OldMode = oldMode;
     NewMode = newMode;
 }
Esempio n. 18
0
 /// <summary>
 /// Initializes a new instance of the CalendarModeChangedEventArgs class.
 /// </summary>
 /// <param name="oldMode">Previous value of the property, prior to the event being raised.</param>
 /// <param name="newMode">Current value of the property at the time of the event.</param>
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
     this.OldMode = oldMode;
     this.NewMode = newMode;
 }
Esempio n. 19
0
        private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode, bool addParentInfo)
        {
            // try to reuse old peer if it exists either in Current AT or in WeakRefStorage of Peers being sent to Client
            DateTimeCalendarModePair key  = new DateTimeCalendarModePair(date, buttonMode);
            DateTimeAutomationPeer   peer = null;

            DateTimePeers.TryGetValue(key, out peer);

            if (peer == null)
            {
                peer = GetPeerFromWeakRefStorage(key);
                if (peer != null && !addParentInfo)
                {
                    // As cached peer is getting used it must be invalidated. addParentInfo check ensures that call is coming from GetChildrenCore
                    peer.AncestorsInvalid = false;
                    peer.ChildrenValid    = false;
                }
            }

            if (peer == null)
            {
                peer = new DateTimeAutomationPeer(date, OwningCalendar, buttonMode);

                // Sets hwnd and parent info
                if (addParentInfo)
                {
                    if (peer != null)
                    {
                        peer.TrySetParentInfo(this);
                    }
                }
            }
            // Set EventsSource if visual exists
            AutomationPeer wrapperPeer = peer.WrapperPeer;

            if (wrapperPeer != null)
            {
                wrapperPeer.EventsSource = peer;
            }

            return(peer);
        }
 /// <summary>
 /// Initializes a new instance of the CalendarModeChangedEventArgs class.
 /// </summary>
 /// <param name="oldMode">Previous value of the property, prior to the event being raised.</param>
 /// <param name="newMode">Current value of the property at the time of the event.</param>
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
     this.OldMode = oldMode;
     this.NewMode = newMode;
 }
Esempio n. 21
0
        private DateTime? GetDateOffset(DateTime date, int offset, CalendarMode displayMode)
        {
            DateTime? result = null;
            switch (displayMode)
            {
                case CalendarMode.Month:
                {
                    result = DateTimeHelper.AddMonths(date, offset);
                    break;
                }

                case CalendarMode.Year:
                {
                    result = DateTimeHelper.AddYears(date, offset);
                    break;
                }

                case CalendarMode.Decade:
                {
                    result = DateTimeHelper.AddYears(this.DisplayDate, offset * YEARS_PER_DECADE);
                    break;
                }

                default:
                Debug.Assert(false);
                break;
            }

            return result;
        }
Esempio n. 22
0
 public static void SetDisplayMode(DependencyObject obj, CalendarMode value)
 {
     obj.SetValue(DisplayModeProperty, value);
 }
 public CalendarData( DateTime dt, CalendarMode md)
 {
     date = dt;
     mode = md;
 }
 // Token: 0x06002544 RID: 9540 RVA: 0x000B3C85 File Offset: 0x000B1E85
 internal DateTimeCalendarModePair(DateTime date, CalendarMode mode)
 {
     this.ButtonMode = mode;
     this.Date       = date;
 }
Esempio n. 25
0
        /// <summary>
        /// Builds the visual tree for the DatePicker control when a new template is applied.
        /// </summary> 
        public override void OnApplyTemplate() 
        {
            base.OnApplyTemplate(); 

            _dropDownButton = GetTemplateChild(DATEPICKER_elementButtonName) as Button;
 
            if (_dropDownButton != null)
            {
                _dropDownButton.MouseLeftButtonDown += new MouseButtonEventHandler(DropDownButton_MouseLeftButtonDown); 
                _dropDownButton.KeyDown += new KeyEventHandler(DropDownButton_KeyDown); 
                _dropDownButton.IsTabStop = false;
            } 

            _rootGrid = GetTemplateChild(DATEPICKER_elementRootName) as Grid;
 
            if (_rootGrid != null)
            {
                _stateDisabled = _rootGrid.Resources[DATEPICKER_stateDisabledName] as Storyboard; 
                _stateNormal = _rootGrid.Resources[DATEPICKER_stateNormalName] as Storyboard; 
                _rootGrid.SizeChanged += new SizeChangedEventHandler(RootGrid_SizeChanged);
            } 

            _textBox = GetTemplateChild(DATEPICKER_elementTextBoxName) as WatermarkedTextBox;
            _disabledVisual = GetTemplateChild("DisabledVisual") as FrameworkElement; 


            UpdateDisabledVisual(this.IsEnabled); 
 
            this._calendarMode = CalendarMode.Month;
            this.MouseLeftButtonDown += new MouseButtonEventHandler(DatePicker_MouseLeftButtonDown); 
            this.IsTabStop = true;
            SetWaterMarkText();
 
            if (_textBox != null)
            {
                _textBox.KeyDown += new KeyEventHandler(TextBox_KeyDown); 
                _textBox.IsTabStop = true; 

                if (this.SelectedDate == null) 
                {

                    if (!string.IsNullOrEmpty(this._defaultText)) 
                    {
                        _textBox.Text = this._defaultText;
                    } 
                } 
                else
                { 
                    _textBox.Text = this.DateTimeToString((DateTime)this.SelectedDate);
                }
            } 
        }
Esempio n. 26
0
 private void Calendar_DisplayModeChanged(object sender, CalendarModeChangedEventArgs e) 
 {
     if (e != null) 
     {
         this._calendarMode = e.NewMode;
     } 
 }
Esempio n. 27
0
 /// <summary>
 /// Initializes a new instance of the
 /// <see cref="T:WinRTXamlToolkit.Controls.CalendarModeChangedEventArgs" />
 /// class.
 /// </summary>
 /// <param name="oldMode">The previous mode.</param>
 /// <param name="newMode">The new mode.</param>
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
     OldMode = oldMode;
     NewMode = newMode;
 }
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
 }
Esempio n. 29
0
 public CalendarModeChangedEventArgs(CalendarMode oldMode, CalendarMode newMode)
 {
 }
 public CalendarioViewModel(CalendarMode calendarMode)
 {
     this.CalendarMode = calendarMode;
 }
        private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode, bool addParentInfo)
        {
            DateTimeCalendarModePair dateTimeCalendarModePair = new DateTimeCalendarModePair(date, buttonMode);
            DateTimeAutomationPeer   dateTimeAutomationPeer   = null;

            this.DateTimePeers.TryGetValue(dateTimeCalendarModePair, out dateTimeAutomationPeer);
            if (dateTimeAutomationPeer == null)
            {
                dateTimeAutomationPeer = this.GetPeerFromWeakRefStorage(dateTimeCalendarModePair);
                if (dateTimeAutomationPeer != null && !addParentInfo)
                {
                    dateTimeAutomationPeer.AncestorsInvalid = false;
                    dateTimeAutomationPeer.ChildrenValid    = false;
                }
            }
            if (dateTimeAutomationPeer == null)
            {
                dateTimeAutomationPeer = new DateTimeAutomationPeer(date, this.OwningCalendar, buttonMode);
                if (addParentInfo && dateTimeAutomationPeer != null)
                {
                    dateTimeAutomationPeer.TrySetParentInfo(this);
                }
            }
            AutomationPeer wrapperPeer = dateTimeAutomationPeer.WrapperPeer;

            if (wrapperPeer != null)
            {
                wrapperPeer.EventsSource = dateTimeAutomationPeer;
            }
            return(dateTimeAutomationPeer);
        }
 public static T DisplayMode <T>(this T source, CalendarMode value) where T : Calendar
 {
     source.DisplayMode = value;
     return(source);
 }
Esempio n. 33
0
 private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode)
 { 
     return GetOrCreateDateTimeAutomationPeer(date, buttonMode, /*addParentInfo*/ true);
 }
Esempio n. 34
0
 private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode)
 {
     return(GetOrCreateDateTimeAutomationPeer(date, buttonMode, /*addParentInfo*/ true));
 }
Esempio n. 35
0
        private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode, bool addParentInfo)
        {
            // try to reuse old peer if it exists either in Current AT or in WeakRefStorage of Peers being sent to Client
            DateTimeCalendarModePair key = new DateTimeCalendarModePair(date, buttonMode); 
            DateTimeAutomationPeer peer = null;
            DateTimePeers.TryGetValue(key, out peer); 
 
            if (peer == null)
            { 
                peer = GetPeerFromWeakRefStorage(key);
                if (peer != null && !addParentInfo)
                {
                    // As cached peer is getting used it must be invalidated. addParentInfo check ensures that call is coming from GetChildrenCore 
                    peer.AncestorsInvalid = false;
                    peer.ChildrenValid = false; 
                } 
            }
 
            if( peer == null )
            {
                peer = new DateTimeAutomationPeer(date, OwningCalendar, buttonMode);
 
                // Sets hwnd and parent info
                if (addParentInfo) 
                { 
                    if(peer != null)
                        peer.TrySetParentInfo(this); 
                }
            }
            // Set EventsSource if visual exists
            AutomationPeer wrapperPeer = peer.WrapperPeer; 
            if (wrapperPeer != null)
            { 
                wrapperPeer.EventsSource = peer; 
            }
 
            return peer;
        }
Esempio n. 36
0
        IRawElementProviderSimple IItemContainerProvider.FindItemByProperty(IRawElementProviderSimple startAfterProvider, int propertyId, object value)
        {
            DateTimeAutomationPeer startAfterDatePeer = null;

            if (startAfterProvider != null)
            {
                startAfterDatePeer = PeerFromProvider(startAfterProvider) as DateTimeAutomationPeer;
                // if provider is not null, peer must exist
                if (startAfterDatePeer == null)
                {
                    throw new InvalidOperationException(SR.Get(SRID.InavalidStartItem));
                }
            }

            DateTime?    nextDate    = null;
            CalendarMode currentMode = 0;

            if (propertyId == SelectionItemPatternIdentifiers.IsSelectedProperty.Id)
            {
                currentMode = CalendarMode.Month;
                nextDate    = GetNextSelectedDate(startAfterDatePeer, (bool)value);
            }
            else if (propertyId == AutomationElementIdentifiers.NameProperty.Id)
            {
                // finds the button for the given DateTime
                DateTimeFormatInfo format = DateTimeHelper.GetCurrentDateFormat();
                DateTime           parsedDate;
                if (DateTime.TryParse((value as string), format, System.Globalization.DateTimeStyles.None, out parsedDate))
                {
                    nextDate = parsedDate;
                }

                if (!nextDate.HasValue || (startAfterDatePeer != null && nextDate <= startAfterDatePeer.Date))
                {
                    throw new InvalidOperationException(SR.Get(SRID.CalendarNamePropertyValueNotValid));
                }

                currentMode = (startAfterDatePeer != null) ? startAfterDatePeer.ButtonMode : OwningCalendar.DisplayMode;
            }
            else if (propertyId == 0 || propertyId == AutomationElementIdentifiers.ControlTypeProperty.Id)
            {
                // propertyId = 0 returns the button next to the startAfter or the DisplayDate if startAfter is null
                // All items here are buttons, so same behaviour as propertyId = 0
                if (propertyId == AutomationElementIdentifiers.ControlTypeProperty.Id && (int)value != ControlType.Button.Id)
                {
                    return(null);
                }
                currentMode = (startAfterDatePeer != null) ? startAfterDatePeer.ButtonMode : OwningCalendar.DisplayMode;
                nextDate    = GetNextDate(startAfterDatePeer, currentMode);
            }
            else
            {
                throw new ArgumentException(SR.Get(SRID.PropertyNotSupported));
            }

            if (nextDate.HasValue)
            {
                AutomationPeer nextPeer = GetOrCreateDateTimeAutomationPeer(nextDate.Value, currentMode);
                if (nextPeer != null)
                {
                    return(ProviderFromPeer(nextPeer));
                }
            }
            return(null);
        }
Esempio n. 37
0
        private DateTime? GetNextDate(DateTimeAutomationPeer currentDatePeer, CalendarMode currentMode)
        {
            DateTime? nextDate = null; 

            DateTime startDate = (currentDatePeer != null) ? currentDatePeer.Date : OwningCalendar.DisplayDate; 
 
            if (currentMode == CalendarMode.Month)
                nextDate = startDate.AddDays(1); 
            else if (currentMode == CalendarMode.Year)
                nextDate = startDate.AddMonths(1);
            else if (currentMode == CalendarMode.Decade)
                nextDate = startDate.AddYears(1); 

            return nextDate; 
        } 
Esempio n. 38
0
 internal DateTimeCalendarModePair(DateTime date, CalendarMode mode)
 {
     ButtonMode = mode;
     Date       = date;
 }
Esempio n. 39
0
 private DateTime? GetDateOffset(DateTime date, int offset, CalendarMode displayMode) {
     var result = new DateTime?();
     switch (displayMode) {
         case CalendarMode.Month:
             result = Engine.AddMonths(date, offset);
             break;
         case CalendarMode.Year:
             result = Engine.AddYears(date, offset);
             break;
         case CalendarMode.Decade:
             result = Engine.AddYears(DisplayDate, offset * 10);
             break;
     }
     return result;
 }
 private void UpdateViewRenderTransformOrigin(CalendarMode mode) {
     var point = ViewRenderTransformOriginDefaultValue;
     var date = Owner != null && Owner.SelectedDate.HasValue ? Owner.SelectedDate.Value : DisplayDate;
     switch (mode) {
         case CalendarMode.Month:
             point = CalculateViewRenderTransformOrigin(_monthView, GetCalendarDayButton(date));
             break;
         case CalendarMode.Year:
             point = CalculateViewRenderTransformOrigin(
                 _yearView, GetCalendarButton(_yearView, date, CalendarMode.Year));
             break;
         case CalendarMode.Decade:
             point = CalculateViewRenderTransformOrigin(
                 _decadeView, GetCalendarButton(_decadeView, date, CalendarMode.Decade));
             break;
     }
     ViewRenderTransformOrigin = point;
 }
 public void OnDisplayModeChanged(CalendarMode oldMode, CalendarMode newMode, bool useTransitions = true) {
     UpdateViewRenderTransformOrigin(newMode);
     var vs = string.Format("{0}To{1}", oldMode, newMode);
     VisualStateManager.GoToState(this, vs, true);
 }
        internal CalendarButton GetCalendarButton(DateTime date, CalendarMode mode)
        {
            Debug.Assert(mode != CalendarMode.Month);

            foreach (CalendarButton b in GetCalendarButtons())
            {
                if (b != null && b.DataContext is DateTime)
                {
                    if (mode == CalendarMode.Year)
                    {
                        if (DateTimeHelper.CompareYearMonth(date, (DateTime)b.DataContext) == 0)
                        {
                            return b;
                        }
                    }
                    else
                    {
                        if (date.Year == ((DateTime)b.DataContext).Year)
                        {
                            return b;
                        }
                    }
                }
            }

            return null;
        }
Esempio n. 43
0
        public virtual void OnDisplayModeChanged(CalendarMode oldValue, CalendarMode newValue)
        {
            RoutedPropertyChangedEventArgs <CalendarMode> arg = new RoutedPropertyChangedEventArgs <CalendarMode>(oldValue, newValue, DisplayModeChangedEvent);

            this.RaiseEvent(arg);
        }
Esempio n. 44
0
 internal DateTimeCalendarModePair(DateTime date, CalendarMode mode) 
 {
     ButtonMode = mode; 
     Date = date;
 }
 internal MonthYearButton GetCalendarButton(Panel view, DateTime date, CalendarMode mode) {
     foreach (var cb in GetCalendarButtons(view)) {
         if (cb == null || !(cb.DataContext is DateTime))
             continue;
         if (mode == CalendarMode.Year) {
             if (Engine.CompareYearMonth(date, (DateTime)cb.DataContext) == 0)
                 return cb;
         } else if (Engine.CompareYears(date, (DateTime)cb.DataContext) == 0)
             return cb;
     }
     return null;
 }
 // Token: 0x0600252C RID: 9516 RVA: 0x000B33E9 File Offset: 0x000B15E9
 private DateTimeAutomationPeer GetOrCreateDateTimeAutomationPeer(DateTime date, CalendarMode buttonMode)
 {
     return(this.GetOrCreateDateTimeAutomationPeer(date, buttonMode, true));
 }
Esempio n. 47
0
 public static void SetDisplayMode(DependencyObject obj, CalendarMode value)
 {
     obj.SetValue(DisplayModeProperty, value);
 }