Ejemplo n.º 1
0
        // Token: 0x06007C09 RID: 31753 RVA: 0x0022DEA4 File Offset: 0x0022C0A4
        internal IList <IAttachedAnnotation> ProcessSubTree(DependencyObject subTree)
        {
            if (subTree == null)
            {
                throw new ArgumentNullException("subTree");
            }
            LocatorManager.ProcessingTreeState processingTreeState = new LocatorManager.ProcessingTreeState();
            PrePostDescendentsWalker <LocatorManager.ProcessingTreeState> prePostDescendentsWalker = new PrePostDescendentsWalker <LocatorManager.ProcessingTreeState>(TreeWalkPriority.VisualTree, new VisitedCallback <LocatorManager.ProcessingTreeState>(this.PreVisit), new VisitedCallback <LocatorManager.ProcessingTreeState>(this.PostVisit), processingTreeState);

            prePostDescendentsWalker.StartWalk(subTree);
            return(processingTreeState.AttachedAnnotations);
        }
Ejemplo n.º 2
0
        // Token: 0x06007C0F RID: 31759 RVA: 0x0022E2D0 File Offset: 0x0022C4D0
        private bool PostVisit(DependencyObject dependencyObject, LocatorManager.ProcessingTreeState data, bool visitedViaVisualTree)
        {
            bool                        flag             = data.Pop();
            SubTreeProcessor            subTreeProcessor = this.GetSubTreeProcessor(dependencyObject);
            bool                        flag2            = false;
            IList <IAttachedAnnotation> list             = subTreeProcessor.PostProcessNode(dependencyObject, flag, out flag2);

            if (list != null)
            {
                data.AttachedAnnotations.AddRange(list);
            }
            data.CalledProcessAnnotations = (data.CalledProcessAnnotations || flag2 || flag);
            return(true);
        }