SubstanceFillPainter fillPainter = SubstanceCoreUtilities
.getFillPainter(tabPane);
SubstanceBorderPainter borderPainter = SubstanceCoreUtilities
.getBorderPainter(tabPane);
SubstanceButtonShaper shaper = SubstanceCoreUtilities
.getButtonShaper(tabPane);
Component compForBackground = tabPane.getTabComponentAt(tabIndex);
if (compForBackground == null)
compForBackground = tabPane.getComponentAt(tabIndex);
if (compForBackground == null)
compForBackground = tabPane;
Color tabColor = compForBackground.getBackground();
if (isSelected && (tabColor instanceof UIResource)) {
// special handling of tabs placed in decoration areas
tabColor = SubstanceColorUtilities
.getBackgroundFillColor(compForBackground);
}
HashMapKey key = SubstanceCoreUtilities.getHashKey(width, height,
isSelected, tabPlacement, fillPainter.getDisplayName(),
borderPainter.getDisplayName(), shaper.getDisplayName(),
tabPlacement == SwingConstants.BOTTOM, side.name(), colorScheme
.getDisplayName(), borderScheme.getDisplayName(),
tabColor);
SubstanceSkin skin = SubstanceCoreUtilities.getSkin(tabPane);