void (@NotNull EditorSchemeAttributeDescriptor attributeDescriptor, EditorColorsScheme scheme) { if (!(attributeDescriptor instanceof RainbowAttributeDescriptor descriptor)) return; boolean isDefaultLanguage = descriptor.getLanguage() == null; RainbowHighlighter.setRainbowEnabled(scheme, descriptor.getLanguage(), isDefaultLanguage ? Boolean.valueOf(myRainbow.isSelected()) : myInheritAttributesBox.isSelected() ? null : Boolean.valueOf(myRainbow.isSelected())); for (int i = 0; i < myStops.length; ++i) { scheme.setAttributes(RainbowHighlighter.RAINBOW_COLOR_KEYS[i], RainbowHighlighter.createRainbowAttribute(myStops[i].getSelectedColor())); } descriptor.apply(scheme); }