void (@Nls @NotNull String fragment, @NotNull SimpleTextAttributes attributes, boolean isMainText) { Object tag = myAppendingTag ? null : getTag(fragment); if (tag == null) { super.append(fragment, attributes, isMainText); return; } boolean isActive = mySelected || tag.equals(ComponentUtil.getClientProperty(myTree, ACTIVE_TAG)); int linkStyle = getLinkStyle(attributes, isActive); Color linkColor = getLinkColor(isActive); myAppendingTag = true; try { append(fragment, new SimpleTextAttributes(linkStyle, linkColor), tag); } finally { myAppendingTag = false; } }