Package org.pushingpixels.substance.api

# Interface SchemeDerivedColorsResolver

All Known Implementing Classes:
  `DerivedColorsResolverLight`

public interface SchemeDerivedColorsResolver
`SchemeDerivedColorResolver`s must be immutable. The resolvers are passed to derived color schemes to ensure that derived scheme resolve derived colors in the same way as the base scheme.

## Method Summary

Modifier and Type
Method
Description
`Color`
`getBackgroundFillColor(SubstanceColorScheme colorScheme)`
Returns the background fill color for `this` scheme.
`Color`
`getFocusRingColor(SubstanceColorScheme colorScheme)`
Returns the focus ring color for `this` scheme.
`Color`
`getLineColor(SubstanceColorScheme colorScheme)`
Returns the line color for `this` scheme.
`Color`
`getSelectionBackgroundColor(SubstanceColorScheme colorScheme)`
Returns the selection background color for `this` scheme.
`Color`
`getSelectionForegroundColor(SubstanceColorScheme colorScheme)`
Returns the selection foreground color for `this` scheme.
`Color`
`getTextBackgroundFillColor(SubstanceColorScheme colorScheme)`
Returns the text background fill color for `this` scheme.
`Color`
`getWatermarkDarkColor(SubstanceColorScheme colorScheme)`
Returns the watermark dark color for `this` scheme.
`Color`
`getWatermarkLightColor(SubstanceColorScheme colorScheme)`
Returns the watermark light color for `this` scheme.
`Color`
`getWatermarkStampColor(SubstanceColorScheme colorScheme)`
Resolves a derived color for a given color scheme.
`SchemeDerivedColorsResolver`
`invert()`
Inverts this resolver, for use with inverted color schemes and switching from light to dark schemes or vice versa.
`boolean`
`isDark()`
Determines if this resolver is for dark color schemes.

## Method Details

### isDark

boolean isDark()
Determines if this resolver is for dark color schemes.

Returns:
  `true` if it should be used in dark schemes

### invert

SchemeDerivedColorsResolver invert()
Inverts this resolver, for use with inverted color schemes and switching from light to dark schemes or vice versa.

Some resolvers may not support this option. They may choose to throw an `UnsupportedOperationException` in that case. Instead of throwing the exception developers may choose to simply return `this` signifying that the resolver cannot be inverted. Another option would be to use assertions, allowing the developers to discover mistakes during creation, but still being useful for clients:

     public void SchemeDerivedColorsResolver invert() {
         assert false : "this resolver cannot be inverted";

         return this;
     }

Returns:
  an inversion of this resolver
Throws:
  `UnsupportedOperationException` - if this resolver cannot be inverted

### getWatermarkStampColor

Color getWatermarkStampColor(SubstanceColorScheme colorScheme)
Resolves a derived color for a given color scheme.

Returns:
  the watermark stamp color for the supplied scheme.

### getWatermarkLightColor

Color getWatermarkLightColor(SubstanceColorScheme colorScheme)
Returns the watermark light color for `this` scheme.

Returns:
  Watermark light color for `this` scheme.

### getWatermarkDarkColor

Color getWatermarkDarkColor(SubstanceColorScheme colorScheme)
Returns the watermark dark color for `this` scheme.

Returns:
  Watermark dark color for `this` scheme.

### getLineColor

Color getLineColor(SubstanceColorScheme colorScheme)
Returns the line color for `this` scheme.

Returns:
  The line color for `this` scheme.

### getSelectionBackgroundColor

Color getSelectionBackgroundColor(SubstanceColorScheme colorScheme)
Returns the selection background color for `this` scheme.

Returns:
  The selection background color for `this` scheme.

### getSelectionForegroundColor

Color getSelectionForegroundColor(SubstanceColorScheme colorScheme)
Returns the selection foreground color for `this` scheme.

Returns:
  The selection foreground color for `this` scheme.

### getBackgroundFillColor

Color getBackgroundFillColor(SubstanceColorScheme colorScheme)
Returns the background fill color for `this` scheme.

Returns:
  The background fill color for `this` scheme.

### getTextBackgroundFillColor

Color getTextBackgroundFillColor(SubstanceColorScheme colorScheme)
Returns the text background fill color for `this` scheme.

Returns:
  The text background fill color for `this` scheme.

### getFocusRingColor

Color getFocusRingColor(SubstanceColorScheme colorScheme)
Returns the focus ring color for `this` scheme.

Returns:
  The focus ring color for `this` scheme.