Example #1
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="dcp"> 
 /// Embedded object's character position.
 /// </param> 
 /// <param name="uiElementIsland"> 
 /// UIElementIsland associated with embedded object.
 /// </param> 
 /// <param name="para">
 /// TextParagraph associated with embedded object.
 /// </param>
 internal InlineObject(int dcp, UIElementIsland uiElementIsland, TextParagraph para) 
     : base(dcp)
 { 
     _para = para; 
     _uiElementIsland = uiElementIsland;
     _uiElementIsland.DesiredSizeChanged += new DesiredSizeChangedEventHandler(_para.OnUIElementDesiredSizeChanged); 
 }
Example #2
0
        /// <summary>
        /// Ensures the _uiElementIsland variable is up to date
        /// </summary>
        private void UpdateUIElementIsland()
        {
            UIElement childElement = this.Child;

            if(_uiElementIsland == null || _uiElementIsland.Root != childElement)
            {
                if(_uiElementIsland != null)
                {
                    _uiElementIsland.Dispose();
                    _uiElementIsland = null;
                }

                if(childElement != null)
                {
                    _uiElementIsland = new UIElementIsland(childElement);
                }
            }
        }
Example #3
0
 /// <summary>
 /// Create UIElementIsland representing embedded Element Layout island within content world.
 /// </summary>
 private void EnsureUIElementIsland()
 {
     if (_uiElementIsland == null)
     {
         _uiElementIsland = new UIElementIsland(((BlockUIContainer)Element).Child);
         _uiElementIsland.DesiredSizeChanged += new DesiredSizeChangedEventHandler(OnUIElementDesiredSizeChanged);
     }
 }