// Token: 0x06002D18 RID: 11544 RVA: 0x000CB7CC File Offset: 0x000C99CC private void _CreateFlowNodes(BlockElement be) { NamedElement namedElement = be as NamedElement; if (namedElement != null) { this.ConstructSomElement(namedElement); return; } SemanticBasicElement semanticBasicElement = be as SemanticBasicElement; if (semanticBasicElement != null) { this._flowBuilder.AddStartNode(be.ElementType); XmlLanguage value = (XmlLanguage)this._fixedPage.GetValue(FrameworkElement.LanguageProperty); this._flowBuilder.FixedElement.SetValue(FixedElement.LanguageProperty, value); this.SpecialProcessing(semanticBasicElement); List <BlockElement> blockElementList = semanticBasicElement.BlockElementList; foreach (BlockElement be2 in blockElementList) { this._CreateFlowNodes(be2); } this._flowBuilder.AddEndNode(); } }
// Token: 0x06002D1A RID: 11546 RVA: 0x000CB930 File Offset: 0x000C9B30 private void SpecialProcessing(SemanticBasicElement sbe) { ListItemStructure listItemStructure = sbe as ListItemStructure; FixedDSBuilder.NameHashFixedNode nameHashFixedNode; if (listItemStructure != null && listItemStructure.Marker != null && this._nameHashTable.TryGetValue(listItemStructure.Marker, out nameHashFixedNode)) { this._visitedArray[nameHashFixedNode.index] = true; } }
private void SpecialProcessing(SemanticBasicElement sbe) { ds.ListItemStructure listItem = sbe as ds.ListItemStructure; if (listItem != null && listItem.Marker != null) { NameHashFixedNode fen; if (_nameHashTable.TryGetValue(listItem.Marker, out fen) == true) { _visitedArray[fen.index] = true; } } }
/// <summary> /// This function will create the flow node corresponding to this BlockElement. /// This function will call itself recursively. /// </summary> /// <param name="be"></param> private void _CreateFlowNodes(BlockElement be) { // // Break, NamedElement and SemanticBasicElement all derived from BlockElement. // Break element is ignored for now. // NamedElement ne = be as NamedElement; if (ne != null) { // // That is the NamedElement, it might use namedReference or HierachyReference, // we need to construct FixedSOMElement list from this named element. // ConstructSomElement(ne); } else { SemanticBasicElement sbe = be as SemanticBasicElement; if (sbe != null) { // // Add the start node in the flow array. // _flowBuilder.AddStartNode(be.ElementType); //Set the culture info on this node XmlLanguage language = (XmlLanguage)_fixedPage.GetValue(FrameworkElement.LanguageProperty); _flowBuilder.FixedElement.SetValue(FixedElement.LanguageProperty, language); SpecialProcessing(sbe); // // Enumerate all the childeren under this element. // List <BlockElement> blockElementList = sbe.BlockElementList; foreach (BlockElement bElement in blockElementList) { _CreateFlowNodes(bElement); } // // Add the end node in the flow array. // _flowBuilder.AddEndNode(); } } }