Esempio n. 1
0
 /// <summary>
 /// Handle when dependency property value changes to update the underline HtmlContainer with the new value.
 /// </summary>
 private static void OnAvaloniaProperty_valueChanged(AvaloniaObject AvaloniaObject, AvaloniaPropertyChangedEventArgs e)
 {
     var control = AvaloniaObject as HtmlLabel;
     if (control != null)
     {
         if (e.Property == AutoSizeProperty)
         {
             if ((bool)e.NewValue)
             {
                 AvaloniaObject.SetValue(AutoSizeHeightOnlyProperty, false);
                 control.InvalidateMeasure();
                 control.InvalidateVisual();
             }
         }
         else if (e.Property == AutoSizeHeightOnlyProperty)
         {
             if ((bool)e.NewValue)
             {
                 AvaloniaObject.SetValue(AutoSizeProperty, false);
                 control.InvalidateMeasure();
                 control.InvalidateVisual();
             }
         }
     }
 }
Esempio n. 2
0
 private static void AdornedElementChanged(AvaloniaPropertyChangedEventArgs e)
 {
     var adorner = (Visual)e.Sender;
     var adorned = (Visual)e.NewValue;
     var layer = adorner.GetVisualParent<AdornerLayer>();
     layer?.UpdateAdornedElement(adorner, adorned);
 }
Esempio n. 3
0
        private static void ItemsChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var grid = (SimpleGrid)e.Sender;
            var items = (IEnumerable)e.NewValue;
            var template = grid.GetValue(TemplateProperty);

            grid.Children.Clear();

            if (items != null)
            {
                int count = 0;
                int cols = 3;

                foreach (var item in items)
                {
                    foreach (var control in template(item))
                    {
                        grid.Children.Add(control);
                        SimpleGrid.SetColumn(control, count % cols);
                        SimpleGrid.SetRow(control, count / cols);
                        ++count;
                    }
                }
            }
        }
Esempio n. 4
0
        /// <summary>
        /// Reacts to a change in a <see cref="AvaloniaProperty"/> value in order to animate the
        /// change if a <see cref="PropertyTransition"/> is set for the property..
        /// </summary>
        /// <param name="e">The event args.</param>
        protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs e)
        {
            if (e.Priority != BindingPriority.Animation && _propertyTransitions != null)
            {
                var match = _propertyTransitions.FirstOrDefault(x => x.Property == e.Property);

                if (match != null)
                {
                    Animate.Property(this, e.Property, e.OldValue, e.NewValue, match.Easing, match.Duration);
                }
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Called when the <see cref="Control.ContextMenu"/> property changes on a control.
        /// </summary>
        /// <param name="e">The event args.</param>
        private static void ContextMenuChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var control = (Control)e.Sender;

            if (e.OldValue != null)
            {
                control.PointerReleased -= ControlPointerReleased;
            }

            if (e.NewValue != null)
            {
                control.PointerReleased += ControlPointerReleased;
            }
        }
Esempio n. 6
0
        /// <summary>
        /// called when the <see cref="TipProperty"/> property changes on a control.
        /// </summary>
        /// <param name="e">The event args.</param>
        private static void TipChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var control = (Control)e.Sender;

            if (e.OldValue != null)
            {
                control.PointerEnter -= ControlPointerEnter;
                control.PointerLeave -= ControlPointerLeave;
            }

            if (e.NewValue != null)
            {
                control.PointerEnter += ControlPointerEnter;
                control.PointerLeave += ControlPointerLeave;
            }
        }
Esempio n. 7
0
        protected virtual void OnIsExpandedChanged(AvaloniaPropertyChangedEventArgs e)
        {
            IVisual visualContent = Presenter;

            if (Content != null && ContentTransition != null && visualContent != null)
            {
                bool forward = ExpandDirection == ExpandDirection.Left ||
                                ExpandDirection == ExpandDirection.Up;
                if (IsExpanded)
                {
                    ContentTransition.Start(null, visualContent, forward);
                }
                else
                {
                    ContentTransition.Start(visualContent, null, !forward);
                }
            }
        }
Esempio n. 8
0
        /// <summary>
        /// Called when the <see cref="Child"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        private void ChildChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var oldChild = (Control)e.OldValue;
            var newChild = (Control)e.NewValue;

            if (oldChild != null)
            {
                ((ISetLogicalParent)oldChild).SetParent(null);
                LogicalChildren.Clear();
                VisualChildren.Remove(oldChild);
            }

            if (newChild != null)
            {
                ((ISetLogicalParent)newChild).SetParent(this);
                VisualChildren.Add(newChild);
                LogicalChildren.Add(newChild);
            }
        }
 /// <summary>
 /// Called when the <see cref="Template"/> property changes.
 /// </summary>
 /// <param name="e">The event args.</param>
 protected virtual void OnTemplateChanged(AvaloniaPropertyChangedEventArgs e)
 {
     InvalidateMeasure();
 }
Esempio n. 10
0
 /// <summary>
 /// calls <see cref="OnStepIndexChanged(int)"/>
 /// </summary>
 /// <param name="stepBar"></param>
 /// <param name="e"></param>
 private void OnStepIndexChanged(StepBar stepBar, AvaloniaPropertyChangedEventArgs e)
 {
     stepBar.OnStepIndexChanged((int)e.NewValue);
 }
Esempio n. 11
0
 private void OnSelectedDateFormatChanged(AvaloniaPropertyChangedEventArgs e)
 {
     OnDateFormatChanged();
 }
Esempio n. 12
0
 private void OnCellTemplateChanged(AvaloniaPropertyChangedEventArgs e)
 {
     //CellTemplateProperty.Changed.AddClassHandler<DataGridTemplateColumn>(x => x.OnCellTemplateChanged);
     var oldValue = (IDataTemplate)e.OldValue;
     var value    = (IDataTemplate)e.NewValue;
 }
Esempio n. 13
0
 private void ApplyBorderProperties(Underline o, AvaloniaPropertyChangedEventArgs e)
 {
     o.ApplyBorderProperties();
 }
Esempio n. 14
0
 private void ValueChanged(AvaloniaPropertyChangedEventArgs e)
 {
     UpdateIndicator(Bounds.Size);
 }
Esempio n. 15
0
 /// <summary>
 /// Called when the <see cref="ItemTemplate"/> changes.
 /// </summary>
 /// <param name="e">The event args.</param>
 private void ItemTemplateChanged(AvaloniaPropertyChangedEventArgs e)
 {
     if (_itemContainerGenerator != null)
     {
         _itemContainerGenerator.ItemTemplate = (IDataTemplate)e.NewValue;
         // TODO: Rebuild the item containers.
     }
 }
Esempio n. 16
0
 /// <summary>
 /// Calls <see cref="InvalidateArrange"/> on the control on which a property changed.
 /// </summary>
 /// <param name="e">The event args.</param>
 private static void AffectsArrangeInvalidate(AvaloniaPropertyChangedEventArgs e)
 {
     ILayoutable control = e.Sender as ILayoutable;
     control?.InvalidateArrange();
 }
Esempio n. 17
0
 private void SelectedItemChanged(AvaloniaPropertyChangedEventArgs e)
 {
     UpdateSelectionBoxItem(e.NewValue);
     TryFocusSelectedItem();
 }
Esempio n. 18
0
 /// <summary>
 /// Called when the <see cref="IsOpen"/> property changes.
 /// </summary>
 /// <param name="e">The event args.</param>
 private void IsOpenChanged(AvaloniaPropertyChangedEventArgs e)
 {
     if ((bool)e.NewValue)
     {
         Open();
     }
     else
     {
         Close();
     }
 }
Esempio n. 19
0
        /// <summary>
        /// Called when the <see cref="Child"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        private void ChildChanged(AvaloniaPropertyChangedEventArgs e)
        {
            LogicalChildren.Clear();

            ((ISetLogicalParent)e.OldValue)?.SetParent(null);

            if (e.NewValue != null)
            {
                ((ISetLogicalParent)e.NewValue).SetParent(this);
                LogicalChildren.Add((ILogical)e.NewValue);
            }
        }
Esempio n. 20
0
        private void ThumbChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var oldThumb = (Thumb)e.OldValue;
            var newThumb = (Thumb)e.NewValue;

            if (oldThumb != null)
            {
                oldThumb.DragDelta -= ThumbDragged;
            }

            LogicalChildren.Clear();
            VisualChildren.Clear();

            if (newThumb != null)
            {
                newThumb.DragDelta += ThumbDragged;
                LogicalChildren.Add(newThumb);
                VisualChildren.Add(newThumb);
            }
        }
Esempio n. 21
0
 private static void IsEnabledChanged(AvaloniaPropertyChangedEventArgs e)
 {
     ((InputElement)e.Sender).UpdateIsEnabledCore();
 }
Esempio n. 22
0
 /// <summary>
 /// Calls <see cref="Layoutable.InvalidateArrange"/> on the parent of the control whose
 /// property changed, if that parent is a canvas.
 /// </summary>
 /// <param name="e">The event args.</param>
 private static void AffectsCanvasArrangeInvalidate(AvaloniaPropertyChangedEventArgs e)
 {
     var control = e.Sender as IControl;
     var canvas = control?.VisualParent as Canvas;
     canvas?.InvalidateArrange();
 }
Esempio n. 23
0
 /// <summary>
 /// The data changed.
 /// </summary>
 /// <param name="d">The d.</param>
 /// <param name="e">The e.</param>
 protected static void DataChanged(AvaloniaObject d, AvaloniaPropertyChangedEventArgs e)
 {
     ((Series)d).OnDataChanged();
 }
Esempio n. 24
0
 private void TemplatedParentChanged(AvaloniaPropertyChangedEventArgs e)
 {
     (e.NewValue as IItemsPresenterHost)?.RegisterItemsPresenter(this);
 }
        private void ChildChanged(AvaloniaPropertyChangedEventArgs e)
        {
            UpdateScrollableSubscription((IControl)e.NewValue);

            if (e.OldValue != null)
            {
                Offset = default(Vector);
            }
        }
Esempio n. 26
0
        /// <summary>
        /// Called when the <see cref="Template"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        protected virtual void OnTemplateChanged(AvaloniaPropertyChangedEventArgs e)
        {
            if (_templateApplied && VisualChildren.Count > 0)
            {
                _templateApplied = false;
            }

            _templateApplied = false;
            InvalidateMeasure();
        }
Esempio n. 27
0
 /// <summary>
 /// Called when the position is changed.
 /// </summary>
 /// <param name="dependencyPropertyChangedEventArgs">The dependency property changed event args.</param>
 // ReSharper disable once UnusedParameter.Local
 private void OnPositionChanged(AvaloniaPropertyChangedEventArgs dependencyPropertyChangedEventArgs)
 {
     UpdatePositionAndBorder();
 }
 private void OnRootPropertyChanged(BreadcrumbBar bar, AvaloniaPropertyChangedEventArgs e)
 {
     bar.OnRootChanged(bar, e.OldValue, e.NewValue);
 }
Esempio n. 29
0
        /// <inheritdoc/>
        protected override void OnTemplateChanged(AvaloniaPropertyChangedEventArgs e)
        {
            base.OnTemplateChanged(e);

            if (e.NewValue == null)
            {
                ItemContainerGenerator?.Clear();
            }
        }
Esempio n. 30
0
 protected virtual void OnSelectionChanged(object sender, AvaloniaPropertyChangedEventArgs e)
 {
 }
Esempio n. 31
0
        /// <summary>
        /// Called when the <see cref="IsDefault"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        private static void IsDefaultChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var button = e.Sender as Button;
            var isDefault = (bool)e.NewValue;
            var inputRoot = button.VisualRoot as IInputElement;

            if (inputRoot != null)
            {
                if (isDefault)
                {
                    button.ListenForDefault(inputRoot);
                }
                else
                {
                    button.StopListeningForDefault(inputRoot);
                }
            }
        }
        private void OnLayoutTransformChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var newTransform = e.NewValue as Transform;

            if (_transformChangedEvent != null)
            {
                _transformChangedEvent.Dispose();
                _transformChangedEvent = null;
            }

            if (newTransform != null)
            {
                _transformChangedEvent = Observable.FromEventPattern<EventHandler, EventArgs>(
                                        v => newTransform.Changed += v, v => newTransform.Changed -= v)
                                        .Subscribe(onNext: v => ApplyLayoutTransform());
            }

            ApplyLayoutTransform();
        }
Esempio n. 33
0
 private void RGBIndicator_PropertyChanged(object sender, AvaloniaPropertyChangedEventArgs e)
 {
     this.UpdateRGB(new RGBStruct(ColorToShow));
 }
 private void OnItemsChaned(FlyoutsControl o, AvaloniaPropertyChangedEventArgs e)
 {
     this.IsVisible = true;
 }
Esempio n. 35
0
 private void OnCellTemplateChanged(AvaloniaPropertyChangedEventArgs e)
 {
     var oldValue = (IDataTemplate)e.OldValue;
     var value    = (IDataTemplate)e.NewValue;
 }
Esempio n. 36
0
        private static void AffectsGeometryInvalidate(AvaloniaPropertyChangedEventArgs e)
        {
            var control = e.Sender as Geometry;

            control?.InvalidateGeometry();
        }
Esempio n. 37
0
        /// <remark>
        /// OnPrivateSharedSizeScopePropertyChanged is called when new scope enters or
        /// existing scope just left. In both cases if the DefinitionBase object is already registered
        /// in SharedSizeState, it should un-register and register itself in a new one.
        /// </remark>
        private static void OnPrivateSharedSizeScopePropertyChanged(AvaloniaObject d, AvaloniaPropertyChangedEventArgs e)
        {
            DefinitionBase definition = (DefinitionBase)d;

            if (definition.Parent != null)
            {
                SharedSizeScope privateSharedSizeScope = (SharedSizeScope)e.NewValue;

                if (definition._sharedState != null)
                {
                    //  if definition is already registered And shared size scope is changing,
                    //  then un-register the definition from the current shared size state object.
                    definition._sharedState.RemoveMember(definition);
                    definition._sharedState = null;
                }

                if ((definition._sharedState == null) && (privateSharedSizeScope != null))
                {
                    string sharedSizeGroup = definition.SharedSizeGroup;
                    if (sharedSizeGroup != null)
                    {
                        //  if definition is not registered and both: shared size group id AND private shared scope
                        //  are available, then register definition.
                        definition._sharedState = privateSharedSizeScope.EnsureSharedState(definition.SharedSizeGroup);
                        definition._sharedState.AddMember(definition);
                    }
                }
            }
        }
Esempio n. 38
0
 protected virtual void OnObjectBrushesChanged(BrushProxy o, AvaloniaPropertyChangedEventArgs e)
 {
 }
Esempio n. 39
0
 private void VirtualizationModeChanged(AvaloniaPropertyChangedEventArgs e)
 {
     _virtualizer?.Dispose();
     _virtualizer = ItemVirtualizer.Create(this);
     ((ILogicalScrollable)this).InvalidateScroll?.Invoke();
 }
Esempio n. 40
0
 /// <summary>
 /// Called when the <see cref="Content"/> property changes.
 /// </summary>
 /// <param name="e">The event args.</param>
 private void ContentChanged(AvaloniaPropertyChangedEventArgs e)
 {
     _createdChild = false;
     InvalidateMeasure();
 }
Esempio n. 41
0
 /// <summary>
 /// The appearance changed.
 /// </summary>
 /// <param name="d">The d.</param>
 /// <param name="e">The e.</param>
 protected static void AppearanceChanged(AvaloniaObject d, AvaloniaPropertyChangedEventArgs e)
 {
     ((Series)d).OnVisualChanged();
 }
Esempio n. 42
0
 private void TemplatedParentChanged(AvaloniaPropertyChangedEventArgs e)
 {
     (e.NewValue as IContentPresenterHost)?.RegisterContentPresenter(this);
 }
Esempio n. 43
0
 /// <summary>
 /// The on items source changed.
 /// </summary>
 /// <param name="e">Event args</param>
 protected override void ItemsChanged(AvaloniaPropertyChangedEventArgs e)
 {
     base.ItemsChanged(e);
     SubscribeToCollectionChanged(e.OldValue as IEnumerable, e.NewValue as IEnumerable);
     OnDataChanged();
 }
Esempio n. 44
0
 private void SelectedItemChanged(AvaloniaPropertyChangedEventArgs e)
 {
     UpdateSelectionBoxItem(e.NewValue);
 }
Esempio n. 45
0
 private void OnItemPropertyChanged(object sender, AvaloniaPropertyChangedEventArgs e)
 {
     QueueReset();
 }
Esempio n. 46
0
 private static void OnVisibleChanged(NativeControlHost host, AvaloniaPropertyChangedEventArgs arg2)
 => host.UpdateHost();
Esempio n. 47
0
 /// <summary>
 /// Called when the position is changed.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="System.Windows.DependencyPropertyChangedEventArgs" /> instance containing the event data.</param>
 private static void PositionChanged(AvaloniaObject sender, AvaloniaPropertyChangedEventArgs e)
 {
     ((TrackerControl)sender).OnPositionChanged(e);
 }
 private void OnSourceChanged(AvaloniaPropertyChangedEventArgs e)
 {
     OnSourceChanged(e.OldValue, e.NewValue);
 }
Esempio n. 49
0
 static void Invalidate(AvaloniaPropertyChangedEventArgs e)
 {
     (e.Sender as T)?.RaiseInvalidated(EventArgs.Empty);
 }
Esempio n. 50
0
        /// <summary>
        /// Called when the <see cref="SelectedIndex"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        private async void SelectedIndexChanged(AvaloniaPropertyChangedEventArgs e)
        {
            if (Panel != null)
            {
                if (_currentTransition == null)
                {
                    int fromIndex = (int)e.OldValue;
                    int toIndex = (int)e.NewValue;

                    for (;;)
                    {
                        _currentTransition = MoveToPage(fromIndex, toIndex);
                        await _currentTransition;

                        if (_queuedTransitionIndex != -1)
                        {
                            fromIndex = toIndex;
                            toIndex = _queuedTransitionIndex;
                            _queuedTransitionIndex = -1;
                        }
                        else
                        {
                            _currentTransition = null;
                            break;
                        }
                    }
                }
                else
                {
                    _queuedTransitionIndex = (int)e.NewValue;
                }
            }
        }
Esempio n. 51
0
 protected override void OnPropertyChanged(AvaloniaPropertyChangedEventArgs change)
 {
     Order.Add($"Property {change.Property.Name} Changed");
     base.OnPropertyChanged(change);
 }
        /// <inheritdoc/>
        protected override void ItemsChanged(AvaloniaPropertyChangedEventArgs e)
        {
            base.ItemsChanged(e);

            if (_updateCount == 0)
            {
                if (SelectedIndex != -1)
                {
                    SelectedIndex = IndexOf((IEnumerable)e.NewValue, SelectedItem);
                }
                else if (AlwaysSelected && Items != null && Items.Cast<object>().Any())
                {
                    SelectedIndex = 0;
                }
            }
        }
Esempio n. 53
0
        /// <summary>
        /// Caled when the <see cref="Items"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        protected virtual void ItemsChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var incc = e.OldValue as INotifyCollectionChanged;

            if (incc != null)
            {
                incc.CollectionChanged -= ItemsCollectionChanged;
            }

            var oldValue = e.OldValue as IEnumerable;
            var newValue = e.NewValue as IEnumerable;

            RemoveControlItemsFromLogicalChildren(oldValue);
            AddControlItemsToLogicalChildren(newValue);
            SubscribeToItems(newValue);
        }
Esempio n. 54
0
 private static void IsEnabledChanged(AvaloniaPropertyChangedEventArgs e)
 {
     ((InputElement)e.Sender).UpdateIsEnabledCore();
 }
Esempio n. 55
0
 private void OnEditorTemplateChanged(Editor editor, AvaloniaPropertyChangedEventArgs e)
 {
     editor.OnTemplateChanged(e);
 }
Esempio n. 56
0
        /// <summary>
        /// Called when the <see cref="Command"/> property changes.
        /// </summary>
        /// <param name="e">The event args.</param>
        private static void CommandChanged(AvaloniaPropertyChangedEventArgs e)
        {
            var button = e.Sender as Button;

            if (button != null)
            {
                var oldCommand = e.OldValue as ICommand;
                var newCommand = e.NewValue as ICommand;

                if (oldCommand != null)
                {
                    oldCommand.CanExecuteChanged -= button.CanExecuteChanged;
                }

                if (newCommand != null)
                {
                    newCommand.CanExecuteChanged += button.CanExecuteChanged;
                }

                button.CanExecuteChanged(button, EventArgs.Empty);
            }
        }
Esempio n. 57
0
 private void VirtualizationModeChanged(AvaloniaPropertyChangedEventArgs e)
 {
     _virtualizer?.Dispose();
     _virtualizer = ItemVirtualizer.Create(this);
     ((ILogicalScrollable)this).InvalidateScroll?.Invoke();
 }
Esempio n. 58
0
 /// <summary>
 /// Called when the visual appearance is changed.
 /// </summary>
 /// <param name="d">The d.</param>
 /// <param name="e">The <see cref="AvaloniaPropertyChangedEventArgs" /> instance containing the event data.</param>
 private static void AppearanceChanged(AvaloniaObject d, AvaloniaPropertyChangedEventArgs e)
 {
     ((PlotView)d).OnAppearanceChanged();
 }
Esempio n. 59
0
 /// <summary>
 /// Called when the <see cref="Template"/> property changes.
 /// </summary>
 /// <param name="e">The event args.</param>
 protected virtual void OnTemplateChanged(AvaloniaPropertyChangedEventArgs e)
 {
     InvalidateMeasure();
 }
Esempio n. 60
0
 /// <summary>
 /// Called when the model is changed.
 /// </summary>
 /// <param name="d">The sender.</param>
 /// <param name="e">The <see cref="AvaloniaPropertyChangedEventArgs" /> instance containing the event data.</param>
 private static void ModelChanged(AvaloniaObject d, AvaloniaPropertyChangedEventArgs e)
 {
     ((PlotView)d).OnModelChanged();
 }