public SearchResultNode(IDocument document, SearchResult result) { drawDefault = false; this.result = result; startPosition = result.GetStartPosition(document); Point endPosition = result.GetEndPosition(document); positionText = "(" + (startPosition.Y + 1) + ", " + (startPosition.X + 1) + ") "; LineSegment line = document.GetLineSegment(startPosition.Y); drawableLine = new DrawableLine(document, line, RegularMonospacedFont, BoldMonospacedFont); drawableLine.SetBold(0, drawableLine.LineLength, false); if (startPosition.Y == endPosition.Y) { drawableLine.SetBold(startPosition.X, endPosition.X, true); } specialText = result.DisplayText; if (specialText != null) { displayText = positionText + specialText; } else { displayText = positionText + document.GetText(line).Replace("\t", " "); } Text = displayText; }