SIL.FieldWorks.IText.ComplexConcPatternVc.GetNumLines C# (CSharp) Method

GetNumLines() private method

private GetNumLines ( ComplexConcPatternNode node ) : int
node ComplexConcPatternNode
return int
		private int GetNumLines(ComplexConcPatternNode node)
		{
			var morphNode = node as ComplexConcMorphNode;
			if (morphNode != null)
			{
				int numLines = 1;
				if (morphNode.Form != null)
					numLines++;
				if (morphNode.Entry != null)
					numLines++;
				if (morphNode.Gloss != null)
					numLines++;
				if (morphNode.Category != null)
					numLines++;
				numLines += GetNumLines(morphNode.InflFeatures);
				return numLines;
			}

			var wordNode = node as ComplexConcWordNode;
			if (wordNode != null)
			{
				int numLines = 1;
				if (wordNode.Form != null)
					numLines++;
				if (wordNode.Gloss != null)
					numLines++;
				if (wordNode.Category != null)
					numLines++;
				numLines += GetNumLines(wordNode.InflFeatures);
				return numLines;
			}

			var tagNode = node as ComplexConcTagNode;
			if (tagNode != null)
			{
				int numLines = 1;
				if (tagNode.Tag != null)
					numLines++;
				return numLines;
			}

			if (!node.IsLeaf)
				return node.Children.Max(n => GetNumLines(n));

			return 1;
		}

Same methods

ComplexConcPatternVc::GetNumLines ( object>.IDictionary inflFeatures ) : int