Beispiel #1
0
        private void SetAdorner()
        {
            TextPointer  textPosition = this.RichTextBox.Selection.Start;
            AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(this.RichTextBox);

            if (null != adornerLayer && null != this.m_resizingAdorner)
            {
                adornerLayer.Remove(this.m_resizingAdorner);
                this.m_resizingAdorner.Visibility = Visibility.Hidden;
                this.m_resizingAdorner            = null;
            }
            UIElement         uiElement         = null;
            InlineUIContainer inlineUIContainer = Helper.GetInlineUIContainer(textPosition);

            if (null != inlineUIContainer && null != inlineUIContainer.Child)
            {
                uiElement = inlineUIContainer.Child;
            }
            //else
            //{
            //    Table table = Helper.GetTableAncestor(textPosition);
            //    uiElement = ((FlowDocument)table.Parent);
            //}

            if (null != uiElement)
            {
                this.m_resizingAdorner = new ResizingAdorner(uiElement);
                adornerLayer.Add(this.m_resizingAdorner);
            }
        }
Beispiel #2
0
        public void ClearImageResizers(RichTextBox editor)
        {
            if (current != null)
            {
                current.ClearTumb();
                AdornerLayer al = AdornerLayer.GetAdornerLayer(editor);
                al.Remove(current);
                al.Update();
                current = null;
            }

        }
Beispiel #3
0
        private void OnGotFocus(object sender, RoutedEventArgs args)
        {
            _adorner = new ResizingAdorner(this, _desiredSize);
            _adorner.DesiredSizeChanged += OnDesiredSizeChanged;

            var adornerLayer = AdornerLayer.GetAdornerLayer(this);

            if (adornerLayer != null)
            {
                adornerLayer.Add(_adorner);
            }
        }
Beispiel #4
0
 public void AddImageResizers(RichTextBox editor)
 {
     var images = GetVisuals(editor).OfType<Image>();
     al = AdornerLayer.GetAdornerLayer(editor);
     foreach (var image in images)
     {
         current = new ResizingAdorner(new ResizingAdorner(image));
         //ResizingAdorner ral = new ResizingAdorner(image);
         al.Add(current);
         al.Update();
         //LIBTODO:
     }
 }
Beispiel #5
0
        public void ChangeImageResizers(RichTextBox editor, Image im)
        {
            AdornerLayer al  = AdornerLayer.GetAdornerLayer(editor);

            if (current != null)
            {
                al.Remove(current);
            }
            current = new ResizingAdorner(im);
            al.Add(current);
            al.Update();

        }
Beispiel #6
0
        private void OnLostFocus(object sender, RoutedEventArgs args)
        {
            _adorner.ResizeStarted   -= OnResizeStarted;
            _adorner.ResizeCompleted -= OnResizeCompleted;

            var adornerLayer = AdornerLayer.GetAdornerLayer(MyContent);

            if (adornerLayer != null)
            {
                adornerLayer.Remove(_adorner);
                _adorner = null;
            }
        }
Beispiel #7
0
        private void OnGotFocus(object sender, RoutedEventArgs args)
        {
            _adorner = new ResizingAdorner(MyContent);
            _adorner.ResizeStarted   += OnResizeStarted;
            _adorner.ResizeCompleted += OnResizeCompleted;

            var adornerLayer = AdornerLayer.GetAdornerLayer(MyContent);

            if (adornerLayer != null)
            {
                adornerLayer.Add(_adorner);
            }
        }
Beispiel #8
0
        public static void ClearImageResizers()
        {
            if (_currentResizingAdorner != null)
            {
                AdornerLayer noteEditorAdornerLayer = AdornerLayer.GetAdornerLayer(_noteEditor);

                noteEditorAdornerLayer.Remove(_currentResizingAdorner);
                noteEditorAdornerLayer.Update();

                // clear all internal variables
                _currentResizingAdorner = null;
                _imageResized           = false;
            }
        }
Beispiel #9
0
        private void OnLostFocus(object sender, RoutedEventArgs args)
        {
            if (_adorner == null)
            {
                Debug.Fail("Lost focus without creating an adorner");
                return;
            }

            _adorner.DesiredSizeChanged -= OnDesiredSizeChanged;

            var adornerLayer = AdornerLayer.GetAdornerLayer(this);

            if (adornerLayer != null)
            {
                adornerLayer.Remove(_adorner);
                _adorner = null;
            }
        }
Beispiel #10
0
        private void experimentNode_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            if (e.PropertyName == "IsSelected")
            {
                ExperimentNode node = (ExperimentNode)sender;

                AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(m_nodeControl);

                if (node.IsSelected == true)
                {
                    var resizer = new ResizingAdorner(m_nodeControl);
                    resizer.ResizingHorizontally += MoveCenterHorizontally;
                    resizer.ResizingVertically   += MoveCenterVertically;
                    adornerLayer.Add(resizer);
                }
                else
                {
                    adornerLayer.Remove(adornerLayer.GetAdorners(m_nodeControl)[0]);
                }
            }
        }
Beispiel #11
0
        private static void AddAdorner(UIElement rec)
        {
            adornerLayer = AdornerLayer.GetAdornerLayer(rec);
            System.Diagnostics.Debug.Assert(adornerLayer != null, "Oops, you have not defined an AdornerDecorator in the template, check the generic.xaml file.");
            if (adornerLayer == null)
            {
                return;
            }
            if (adornerLayer.GetAdorners(rec) == null)
            {
                ResizingAdorner rad = new ResizingAdorner(rec);

                if (rec is Connectable)
                {
                    rad.HeightEnabled = (rec as Connectable).ResizableHeight;
                    rad.WidthEnabled  = (rec as Connectable).ResizableWidth;
                    rad.MinHeight     = (rec as Connectable).MinHeight;
                    rad.MinWidth      = (rec as Connectable).MinWidth;
                }

                adornerLayer.Add(rad);
            }
        }
Beispiel #12
0
        public static void UpdateImageResizers(Image image)
        {
            AdornerLayer noteEditorAdornerLayer = AdornerLayer.GetAdornerLayer(_noteEditor);

            if (_currentResizingAdorner != null)
            {
                ClearImageResizers();
            }

            _currentResizingAdorner = new ResizingAdorner(image, _noteEditor.ActualWidth, _noteEditor.ActualHeight);
            _currentResizingAdorner.AdornerResized += () =>
            {
                if (_imageResized == false)
                {
                    _imageResized = true;
                    ImageResized?.Invoke();

                    System.Diagnostics.Debug.WriteLine($"{DateTime.Now.TimeOfDay} - [Event] AdornerResized triggered");
                }
            };

            noteEditorAdornerLayer.Add(_currentResizingAdorner);
            noteEditorAdornerLayer.Update();
        }
Beispiel #13
0
        public void AddAdorner(object sender, object followItem = null)
        {
            Drawer.Selector.FinishSelect();

            if (sender is Line line)
            {
                var al  = AdornerLayer.GetAdornerLayer(line);
                var adn = new LineAdorner(line);
                adn.Drawer     = Drawer;
                adn.FollowItem = followItem;
                al?.Add(adn);

                Drawer.DrawTool = Tool.MoveResize;
            }
            else
            {
                var al  = AdornerLayer.GetAdornerLayer((UIElement)sender);
                var adn = new ResizingAdorner((UIElement)sender);
                adn.Drawer = Drawer;
                al?.Add(adn);

                Drawer.DrawTool = Tool.MoveResize;
            }
        }
        private void OnGotFocus(object sender, RoutedEventArgs args) {
            _adorner = new ResizingAdorner(MyContent);
            _adorner.ResizeStarted += OnResizeStarted;
            _adorner.ResizeCompleted += OnResizeCompleted;

            var adornerLayer = AdornerLayer.GetAdornerLayer(MyContent);
            if (adornerLayer != null) {
                adornerLayer.Add(_adorner);
            }
        }
        private void OnLostFocus(object sender, RoutedEventArgs args) {
            _adorner.ResizeStarted -= OnResizeStarted;
            _adorner.ResizeCompleted -= OnResizeCompleted;

            var adornerLayer = AdornerLayer.GetAdornerLayer(MyContent);
            if (adornerLayer != null) {
                adornerLayer.Remove(_adorner);
                _adorner = null;
            }
        }
Beispiel #16
0
        private void SetAdorner()
        {
            TextPointer textPosition = this.RichTextBox.Selection.Start;
            AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(this.RichTextBox);
            if (null != adornerLayer && null != this.m_resizingAdorner)
            {
                adornerLayer.Remove(this.m_resizingAdorner);
                this.m_resizingAdorner.Visibility = Visibility.Hidden;
                this.m_resizingAdorner = null;
            }
            UIElement uiElement = null;
            InlineUIContainer inlineUIContainer = Helper.GetInlineUIContainer(textPosition);

            if (null != inlineUIContainer && null != inlineUIContainer.Child)
            {
                uiElement = inlineUIContainer.Child;
            }
            //else
            //{
            //    Table table = Helper.GetTableAncestor(textPosition);
            //    uiElement = ((FlowDocument)table.Parent);
            //}

            if (null != uiElement)
            {
                this.m_resizingAdorner = new ResizingAdorner(uiElement);
                adornerLayer.Add(this.m_resizingAdorner);
            }
        }