SimpleColoredText (@NotNull XValueNodeImpl value) { SimpleColoredText text = new SimpleColoredText(); XValueTextRendererImpl renderer = new XValueTextRendererImpl(text); final XValuePresentation presentation = value.getValuePresentation(); if (presentation == null) return null; try { if (presentation instanceof XValueCompactPresentation && !value.getTree().isUnderRemoteDebug()) { ((XValueCompactPresentation)presentation).renderValue(renderer, value); } else { presentation.renderValue(renderer); } if (StringUtil.isEmpty(text.toString())) { final String type = value.getValuePresentation().getType(); if (!StringUtil.isEmpty(type)) { text.append(type, SimpleTextAttributes.REGULAR_ATTRIBUTES); } } } catch (Exception e) { LOG.error(e); return null; } return text; }