private String layoutVerticalCompoundLabel( int rotation, JComponent c, FontMetrics fm, String text, Icon icon,
		int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition,
		Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap )
	{
		// layout non-rotated
		Rectangle viewR2 = new Rectangle( viewR.height, viewR.width );
		String clippedTitle = SwingUtilities.layoutCompoundLabel( c, fm, text, icon,
			verticalAlignment, horizontalAlignment, verticalTextPosition, horizontalTextPosition,
			viewR2, iconR, textR, textIconGap );

		// rotate icon and text rectangles
		if( rotation == LEFT ) {
			rotateLeft( viewR, iconR );
			rotateLeft( viewR, textR );
		} else {
			rotateRight( viewR, iconR );
			rotateRight( viewR, textR );
		}

		return clippedTitle;
	}
Actually does nearly the same as super.paintContentBorder() but
  - not using UIManager.getColor("TabbedPane.contentAreaColor") to be GUI builder friendly
  - tabsOverlapBorder is always true
  - paint full border (if enabled)
  - not invoking paintContentBorder*Edge() methods
  - repaint selection
  - painting active tab border style
flatlaf-core/src/main/java/com/formdev/flatlaf/ui/FlatTabbedPaneUI.java