idea-plugin / arrow.meta.ide.dsl.editor.lineMarker / LineMarkerSyntax / mergeableLineMarkerInfo


open fun LineMarkerSyntax.mergeableLineMarkerInfo(icon: Icon, element: PsiElement, message: (PsiElement) -> String, commonIcon: MergeableLineMarkerInfo<PsiElement>.(others: List<MergeableLineMarkerInfo<*>>) -> Icon = { icon }, mergeWith: MergeableLineMarkerInfo<PsiElement>.(other: MergeableLineMarkerInfo<*>) -> Boolean = { this.icon == it.icon }, placed: Alignment = GutterIconRenderer.Alignment.LEFT, navigate: (event: MouseEvent, element: PsiElement) -> Unit = Noop.effect2, clickAction: AnAction? = null): MergeableLineMarkerInfo<PsiElement>

MergeableLineMarkerInfo can merge multiple LineMarkerInfo’s into one, if mergeWith is true.


commonIcon - defines the common Icon after the merge

navigate - this function allows you to execute anything based on your use-case: actions, manipulations to PsiElements, opening Files or anything else.

Do you like Arrow?

Arrow Org