in src/main/kotlin/com/intellij/ideolog/editorActions/GoToNextErrorAction.kt [27:47]
override fun actionPerformed(e: AnActionEvent) {
val editor = e.dataContext.getData(CommonDataKeys.EDITOR) ?: return
val psiFile = e.dataContext.getData(CommonDataKeys.PSI_FILE) ?: return
val project = e.dataContext.getData(CommonDataKeys.PROJECT) ?: return
if (!canExecute(e)) return
var pos = editor.caretModel.offset
var event = LogEvent.fromEditor(editor, pos)
while (event.endOffset + 1 < editor.document.textLength) {
pos = event.endOffset + 1
event = LogEvent.fromEditor(editor, pos)
if (event.level == "ERROR") {
val descriptor = OpenFileDescriptor(project, psiFile.virtualFile, event.startOffset)
val navigable = descriptor.setUseCurrentWindow(true)
if (navigable.canNavigate()) navigable.navigate(true)
return
}
}
}