}
private void printLine(@NotNull String line, @NotNull ConsoleViewContentType contentType) {
- Filter.Result result = null;
+ Filter.Result result;
try {
result = myFilter.applyFilter(line, line.length());
}
throw new RuntimeException("Error while applying " + myFilter + " to '"+line+"'", t);
}
if (result != null) {
- defaultPrint(line.substring(0, result.getHighlightStartOffset()), contentType);
- String linkText = line.substring(result.getHighlightStartOffset(), result.getHighlightEndOffset());
- printHyperlink(linkText, result.getHyperlinkInfo());
- defaultPrint(line.substring(result.getHighlightEndOffset()), contentType);
+ for (Filter.ResultItem item : result.getResultItems()) {
+ defaultPrint(line.substring(0, item.getHighlightStartOffset()), contentType);
+ String linkText = line.substring(item.getHighlightStartOffset(), item.getHighlightEndOffset());
+ printHyperlink(linkText, item.getHyperlinkInfo());
+ defaultPrint(line.substring(item.getHighlightEndOffset()), contentType);
+ }
}
else {
defaultPrint(line, contentType);