int (@NotNull Control control, int depth, boolean leaf) { if (depth < 0) return -1; // do not paint row if (depth == 0) return 0; int controlWidth = control.getWidth(); int left = getLeftIndent(controlWidth / 2); int right = getRightIndent(); int offset = getLeafIndent(leaf); if (offset < 0) offset = Math.max(controlWidth + left - controlWidth / 2 + JBUIScale.scale(GAP), left + right); return depth > 1 ? (depth - 1) * (left + right) + offset : offset; }