예제 #1
0
        // Token: 0x06003D44 RID: 15684 RVA: 0x0011BF08 File Offset: 0x0011A108
        internal DependencyObject GetDependencyParent()
        {
            SplayTreeNode           splayTreeNode = this;
            TextTreeTextElementNode textTreeTextElementNode;

            for (;;)
            {
                textTreeTextElementNode = (splayTreeNode as TextTreeTextElementNode);
                if (textTreeTextElementNode != null)
                {
                    break;
                }
                SplayTreeNode containingNode = splayTreeNode.GetContainingNode();
                if (containingNode == null)
                {
                    goto Block_2;
                }
                splayTreeNode = containingNode;
            }
            DependencyObject dependencyObject = textTreeTextElementNode.TextElement;

            Invariant.Assert(dependencyObject != null, "TextElementNode has null TextElement!");
            return(dependencyObject);

Block_2:
            dependencyObject = ((TextTreeRootNode)splayTreeNode).TextContainer.Parent;
            return(dependencyObject);
        }
예제 #2
0
        // Token: 0x06003D45 RID: 15685 RVA: 0x0011BF5C File Offset: 0x0011A15C
        internal DependencyObject GetLogicalTreeNode()
        {
            TextTreeObjectNode textTreeObjectNode = this as TextTreeObjectNode;

            if (textTreeObjectNode != null && textTreeObjectNode.EmbeddedElement is FrameworkElement)
            {
                return(textTreeObjectNode.EmbeddedElement);
            }
            SplayTreeNode           splayTreeNode = this;
            TextTreeTextElementNode textTreeTextElementNode;

            for (;;)
            {
                textTreeTextElementNode = (splayTreeNode as TextTreeTextElementNode);
                if (textTreeTextElementNode != null)
                {
                    break;
                }
                SplayTreeNode containingNode = splayTreeNode.GetContainingNode();
                if (containingNode == null)
                {
                    goto Block_4;
                }
                splayTreeNode = containingNode;
            }
            return(textTreeTextElementNode.TextElement);

Block_4:
            return(((TextTreeRootNode)splayTreeNode).TextContainer.Parent);
        }
예제 #3
0
        // Token: 0x06003D43 RID: 15683 RVA: 0x0011BEE0 File Offset: 0x0011A0E0
        internal TextContainer GetTextTree()
        {
            SplayTreeNode splayTreeNode = this;

            for (;;)
            {
                SplayTreeNode containingNode = splayTreeNode.GetContainingNode();
                if (containingNode == null)
                {
                    break;
                }
                splayTreeNode = containingNode;
            }
            return(((TextTreeRootNode)splayTreeNode).TextContainer);
        }