Ejemplo n.º 1
0
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);

            if (this.GetVisualParent() is IControl parent)
            {
                // HACK: This nasty but it's all WPF's fault. Grid uses an inherited attached
                // property to store SharedSizeGroup state, except property inheritance is done
                // down the logical tree. In this case, the control which is setting
                // Grid.IsSharedSizeScope="True" is not in the logical tree. Instead of fixing
                // the way Grid stores shared size state, the developers of WPF just created a
                // binding of the internal state of the visual parent to the menu item. We don't
                // have much choice but to do the same for now unless we want to refactor Grid,
                // which I honestly am not brave enough to do right now. Here's the same hack in
                // the WPF codebase:
                //
                // https://github.com/dotnet/wpf/blob/89537909bdf36bc918e88b37751add46a8980bb0/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/MenuItem.cs#L2126-L2141
                _gridHack = Bind(
                    DefinitionBase.PrivateSharedSizeScopeProperty,
                    parent.GetBindingObservable(DefinitionBase.PrivateSharedSizeScopeProperty));
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Handles a closed notification from <see cref="ITopLevelImpl.Closed"/>.
        /// </summary>
        protected virtual void HandleClosed()
        {
            if (_globalStyles is object)
            {
                _globalStyles.GlobalStylesAdded   -= ((IStyleHost)this).StylesAdded;
                _globalStyles.GlobalStylesRemoved -= ((IStyleHost)this).StylesRemoved;
            }

            var logicalArgs = new LogicalTreeAttachmentEventArgs(this, this, null);

            ((ILogical)this).NotifyDetachedFromLogicalTree(logicalArgs);

            var visualArgs = new VisualTreeAttachmentEventArgs(this, this);

            OnDetachedFromVisualTreeCore(visualArgs);

            (this as IInputRoot).MouseDevice?.TopLevelClosed(this);
            PlatformImpl = null;
            OnClosed(EventArgs.Empty);
            Renderer?.Dispose();
            Renderer = null;
        }
Ejemplo n.º 3
0
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            var canScrollHorizontally = this.GetObservable(AcceptsReturnProperty)
                                        .Select(x => !x);

            var horizontalScrollBarVisibility = this.GetObservable(AcceptsReturnProperty)
                                                .Select(x => x ? ScrollBarVisibility.Auto : ScrollBarVisibility.Hidden);

            disposables.Add(Bind(
                                ScrollViewer.HorizontalScrollBarVisibilityProperty,
                                horizontalScrollBarVisibility,
                                BindingPriority.Style));

            disposables.Add(TextDocumentProperty.Changed.Subscribe(_ => { SelectionStart = SelectionEnd = CaretIndex = -1; }));

            disposables.Add(this.GetObservable(OffsetProperty).Subscribe(_ =>
            {
                EditorScrolled?.Invoke(this, new EventArgs());
            }));

            disposables.Add(AddHandler(KeyDownEvent, OnKeyDown, RoutingStrategies.Bubble));
        }
Ejemplo n.º 4
0
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);
            _grid = this.GetVisualParent <Grid>();

            if (Orientation == Orientation.Vertical)
            {
                Cursor = new Cursor(StandardCursorType.SizeWestEast);
                var col = GetValue(Grid.ColumnProperty);
                _definitions    = _grid.ColumnDefinitions.Cast <DefinitionBase>().ToList();
                _prevDefinition = _definitions[col - 1];
                _nextDefinition = _definitions[col + 1];
            }
            else
            {
                Cursor = new Cursor(StandardCursorType.SizeNorthSouth);
                var row = GetValue(Grid.RowProperty);
                _definitions    = _grid.RowDefinitions.Cast <DefinitionBase>().ToList();
                _prevDefinition = _definitions[row - 1];
                _nextDefinition = _definitions[row + 1];
            }
        }
Ejemplo n.º 5
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     try
     {
         if (iconImage.Source == null)
         {
             var windowRoot = e.Root as Window;
             if (windowRoot != null)
             {
                 using (var stream = new MemoryStream())
                 {
                     windowRoot.Icon.Save(stream);
                     stream.Seek(0, SeekOrigin.Begin);
                     iconImage.Source = new Bitmap(stream);
                 }
             }
         }
     }
     catch (Exception)
     {
     }
 }
Ejemplo n.º 6
0
        void Unloaded(object sender, VisualTreeAttachmentEventArgs e)
        {
            PadStarted     = null;
            PadFinished    = null;
            PadPressed     = null;
            PadReleased    = null;
            PadModsPressed = null;

            for (int i = 0; i < 100; i++)
            {
                if (!Buttons[i].Empty)
                {
                    Buttons[i].PointerPressed -= MouseDown;
                }
            }

            Buttons = null;
            Grid.Children.Clear();

            Preferences.LaunchpadModelChanged        -= Update_LaunchpadModel;
            Preferences.LaunchpadStyleChanged        -= Update_LaunchpadStyle;
            Preferences.LaunchpadGridRotationChanged -= Update_LaunchpadRotation;
        }
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     if (iconImage.Source == null)
     {
         if (AvaloniaLocator.Current.GetService <IRuntimePlatform>().GetRuntimeInfo().OperatingSystem
             == OperatingSystemType.WinNT)
         {
             //Not implemented yet
             return;
         }
         var windowRoot = e.Root as Window;
         if (windowRoot != null)
         {
             using (var stream = new MemoryStream())
             {
                 windowRoot.Icon.Save(stream);
                 stream.Seek(0, SeekOrigin.Begin);
                 iconImage.Source = new Bitmap(stream);
             }
         }
     }
 }
Ejemplo n.º 8
0
        /// <inheritdoc/>
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);

            var topLevel = e.Root as TopLevel;

            topLevel.Deactivated += Deactivated;

            var pointerPress = topLevel.AddHandler(
                PointerPressedEvent,
                TopLevelPreviewPointerPress,
                RoutingStrategies.Tunnel);

            _subscription = new CompositeDisposable(
                pointerPress,
                Disposable.Create(() => topLevel.Deactivated -= Deactivated));

            var inputRoot = e.Root as IInputRoot;

            if (inputRoot?.AccessKeyHandler != null)
            {
                inputRoot.AccessKeyHandler.MainMenu = this;
            }
        }
Ejemplo n.º 9
0
 void Unloaded(object sender, VisualTreeAttachmentEventArgs e) => _switch = null;
Ejemplo n.º 10
0
 private void Unloaded(object sender, VisualTreeAttachmentEventArgs e) => _rotate = null;
Ejemplo n.º 11
0
        /// <inheritdoc/>
        protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnDetachedFromVisualTree(e);

            if (_accessKeys != null && AccessKey != 0)
            {
                _accessKeys.Unregister(this);
                _accessKeys = null;
            }
        }
Ejemplo n.º 12
0
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);
            _grid = this.GetVisualParent<Grid>();

            _orientation = DetectOrientation();

            int defenitionIndex; //row or col
            if (_orientation == Orientation.Vertical)
            {
                Cursor = new Cursor(StandardCursorType.SizeWestEast);
                _definitions = _grid.ColumnDefinitions.Cast<DefinitionBase>().ToList();
                defenitionIndex = GetValue(Grid.ColumnProperty);
                PseudoClasses.Add(":vertical");
            }
            else
            {
                Cursor = new Cursor(StandardCursorType.SizeNorthSouth);
                defenitionIndex = GetValue(Grid.RowProperty);
                _definitions = _grid.RowDefinitions.Cast<DefinitionBase>().ToList();
                PseudoClasses.Add(":horizontal");
            }

            if (defenitionIndex > 0)
                _prevDefinition = _definitions[defenitionIndex - 1];

            if (defenitionIndex < _definitions.Count - 1)
                _nextDefinition = _definitions[defenitionIndex + 1];
        }
Ejemplo n.º 13
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     AutoScrollToSelectedItemIfNecessary();
 }
Ejemplo n.º 14
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _topLevel = e.Root as TopLevel;
 }
Ejemplo n.º 15
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     SetValue(AvalonEditExtra.SyntaxProperty, "Resources/PacketFilterSyntaxHighlight.xml");
 }
Ejemplo n.º 16
0
        /// <inheritdoc/>
        protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnDetachedFromVisualTree(e);

            if (IsDefault)
            {
                var inputElement = e.Root as IInputElement;

                if (inputElement != null)
                {
                    StopListeningForDefault(inputElement);
                }
            }
        }
Ejemplo n.º 17
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _dataTemplate = null;
 }
Ejemplo n.º 18
0
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _topLevel = null;
 }
Ejemplo n.º 19
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _topLevel = e.Root as TopLevel;
 }
 private void PanAndZoom_DetachedFromVisualTree(object sender, VisualTreeAttachmentEventArgs e)
 {
     if (_element != null)
     {
         Unload();
     }
 }
Ejemplo n.º 21
0
        /// <inheritdoc/>
        protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnDetachedFromVisualTree(e);

            if (IsFocused)
            {
                FocusManager.Instance.Focus(null);
            }
        }
Ejemplo n.º 22
0
 protected override void Unloaded(object sender, VisualTreeAttachmentEventArgs e)
 {
     Action = null;
     base.Unloaded(sender, e);
 }
Ejemplo n.º 23
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTreeCore(e);
     UpdateIsEnabledCore();
 }
Ejemplo n.º 24
0
        /// <inheritdoc/>
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);

            AddHandler(PointerPressedEvent, Pressed, RoutingStrategies.Tunnel);
        }
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     Dispose();
 }
Ejemplo n.º 26
0
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _topLevel = null;
 }
Ejemplo n.º 27
0
 private void AssociatedObjectOnAttachedToVisualTree(object?sender, VisualTreeAttachmentEventArgs e)
 {
     OnAttachedToVisualTree();
 }
Ejemplo n.º 28
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _grid = this.GetVisualParent<Grid>();
     
     if (Orientation == Orientation.Vertical)
     {
         Cursor = new Cursor(StandardCursorType.SizeWestEast);
         var col = GetValue(Grid.ColumnProperty);
         _definitions = _grid.ColumnDefinitions.Cast<DefinitionBase>().ToList();
         _prevDefinition = _definitions[col - 1];
         _nextDefinition = _definitions[col + 1];
     }
     else
     {
         Cursor = new Cursor(StandardCursorType.SizeNorthSouth);
         var row = GetValue(Grid.RowProperty);
         _definitions = _grid.RowDefinitions.Cast<DefinitionBase>().ToList();
         _prevDefinition = _definitions[row - 1];
         _nextDefinition = _definitions[row + 1];
     }
 }
Ejemplo n.º 29
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _treeView = this.GetVisualAncestors().OfType<TreeView>().FirstOrDefault();
 }
Ejemplo n.º 30
0
 /// <summary>
 /// Delegate called on detached from visual tree event
 /// for this control and all of its visual descendents.
 /// </summary>
 /// <param name="e">The event args.</param>
 protected sealed override void OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTreeCore(e);
 }
Ejemplo n.º 31
0
 void Unloaded(object sender, VisualTreeAttachmentEventArgs e) => _filter = null;
Ejemplo n.º 32
0
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     InteractionHandler.Detach(this);
 }
Ejemplo n.º 33
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     ContentDialog.IsShowingDialog = true;
     Debug.WriteLine("Attached to visual tree!");
 }
Ejemplo n.º 34
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     this.UpdateSelectionBoxItem(SelectedItem);
 }
Ejemplo n.º 35
0
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _rootBoundsWatcher?.Dispose();
     _rootBoundsWatcher = null;
 }
Ejemplo n.º 36
0
        /// <inheritdoc/>
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);
            _accessKeys = (e.Root as IInputRoot)?.AccessKeyHandler;

            if (_accessKeys != null && AccessKey != 0)
            {
                _accessKeys.Register(AccessKey, this);
            }
        }
Ejemplo n.º 37
0
 /// <inheritdoc/>
 protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnDetachedFromVisualTree(e);
     _subscription.Dispose();
 }
Ejemplo n.º 38
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _treeView = this.GetVisualAncestors().OfType <TreeView>().FirstOrDefault();
 }
Ejemplo n.º 39
0
        /// <inheritdoc/>
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            base.OnAttachedToVisualTree(e);

            var topLevel = e.Root as TopLevel;

            topLevel.Deactivated += Deactivated;

            var pointerPress = topLevel.AddHandler(
                PointerPressedEvent,
                TopLevelPreviewPointerPress,
                RoutingStrategies.Tunnel);

            _subscription = new CompositeDisposable(
                pointerPress,
                Disposable.Create(() => topLevel.Deactivated -= Deactivated));

            var inputRoot = e.Root as IInputRoot;

            if (inputRoot?.AccessKeyHandler != null)
            {
                inputRoot.AccessKeyHandler.MainMenu = this;
            }
        }
Ejemplo n.º 40
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _dataTemplate = null;
 }
Ejemplo n.º 41
0
 void Unloaded(object sender, VisualTreeAttachmentEventArgs e)
 {
 }
Ejemplo n.º 42
0
 private void OnCaptureDetached(object sender, VisualTreeAttachmentEventArgs e)
 {
     Capture(GetNextCapture(e.Parent));
 }
Ejemplo n.º 43
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     DetachEditor();
     AttachEditor();
 }
Ejemplo n.º 44
0
 /// <inheritdoc/>
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     UpdateIsEnabledCore();
 }
Ejemplo n.º 45
0
 protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
 {
     base.OnAttachedToVisualTree(e);
     _grid = this.GetVisualParent<Grid>();
 }