String () { StringBuilder builder = new StringBuilder(); builder.append(CommonXmlStrings.HTML_START).append(CommonXmlStrings.BODY_START); LineSeparator separator = new LineSeparator(builder); builder.append(StringUtil.escapeXmlEntities(XBreakpointUtil.getDisplayText(this))); String errorMessage = getErrorMessage(); if (!StringUtil.isEmpty(errorMessage)) { builder.append(separator.get()); builder.append("<font color='#").append(ColorUtil.toHex(JBColor.RED)).append("'>"); builder.append(errorMessage); builder.append("</font>"); } if (getSuspendPolicy() == SuspendPolicy.NONE) { builder.append(separator.get()).append(XDebuggerBundle.message("xbreakpoint.tooltip.suspend.policy.none")); } else if (getType().isSuspendThreadSupported()) { builder.append(separator.get()); //noinspection EnumSwitchStatementWhichMissesCases switch (getSuspendPolicy()) { case ALL -> builder.append(XDebuggerBundle.message("xbreakpoint.tooltip.suspend.policy.all")); case THREAD -> builder.append(XDebuggerBundle.message("xbreakpoint.tooltip.suspend.policy.thread")); } } String condition = getCondition(); if (!StringUtil.isEmpty(condition)) { builder.append(separator.get()); builder.append(XDebuggerBundle.message("xbreakpoint.tooltip.condition")); builder.append(CommonXmlStrings.NBSP); builder.append(XmlStringUtil.escapeString(condition)); } if (isLogMessage()) { builder.append(separator.get()).append(XDebuggerBundle.message("xbreakpoint.tooltip.log.message")); } if (isLogStack()) { builder.append(separator.get()).append(XDebuggerBundle.message("xbreakpoint.tooltip.log.stack")); } String logExpression = getLogExpression(); if (!StringUtil.isEmpty(logExpression)) { builder.append(separator.get()); builder.append(XDebuggerBundle.message("xbreakpoint.tooltip.log.expression")); builder.append(CommonXmlStrings.NBSP); builder.append(XmlStringUtil.escapeString(logExpression)); } XBreakpoint<?> masterBreakpoint = getBreakpointManager().getDependentBreakpointManager().getMasterBreakpoint(this); if (masterBreakpoint != null) { builder.append(separator.get()); String str = XDebuggerBundle.message("xbreakpoint.tooltip.depends.on"); builder.append(str); builder.append(CommonXmlStrings.NBSP); builder.append(XBreakpointUtil.getShortText(masterBreakpoint)); } builder.append(CommonXmlStrings.BODY_END).append(CommonXmlStrings.HTML_END); //noinspection HardCodedStringLiteral return builder.toString(); }