java.lang.Object
org.jhotdraw8.draw.css.converter.ColorCssConverter
- All Implemented Interfaces:
org.jhotdraw8.base.converter.Converter<CssColor>,CssConverter<CssColor>
CssColorConverter.
Parses the following EBNF:
CssColor ::= NamedColor | HexColor | ColorFunction ;
NamedColor ::= 'none' | TT_IDENT;
HexColor ::= ('#'|'0x') , ( hexdigit * 3 | hexdigit * 4 | hexdigit * 6 | hexdigit * 8 );
ColorFunction ::= RGBFunction | RGBAFunction
| HSBFunction | HSBAFunction
| HSLFunction | HSLAFunction
| HWBFunction
| LABFunction
| LCHFunction
| OKLABFunction
| OKLCHFunction
| COLORFunction
;
RGBFunction ::= 'rgb(' , color-params , ')' ;
RGBAFunction ::= 'rgba(' , color-params , ')' ;
HSBFunction ::= 'hsb(' , color-params , ')' ;
HSBAFunction ::= 'hsba(' , color-params , ')' ;
HSLFunction ::= 'hsl(' , color-params , ')' ;
HSLAFunction ::= 'hsla(' , color-params , ')' ;
HWBFunction ::= 'hwb(' , color-params , ')' ;
LABFunction ::= 'lab(' , color-params , ')' ;
OKLABFunction ::= 'oklab(' , color-params , ')' ;
OKLCHFunction ::= 'oklch(' , color-params , ')' ;
COLORFunction ::= 'color(' , color-params , ')' ;
color-params ::= [ color-space-param ] , ( ( number | angle | percentage | 'none' ) , [ "," ] ) * 3 , alpha-param ;
alpha-param ::= [ [ '/' ] ( number | percentage | 'none' ) ] ;
color-space-param ::= 'srgb'
| 'srgb-linear'
| 'display-p3'
| 'a98-rgb'
| 'prophoto-rgb'
| 'rec2020'
| 'xyz'
| 'xyz-d50'
| 'xyz-d65'
;
References:
- CSS Color Module Level 4. 4. Representing Colors: the <color> type.
- w3.org
- CSS Color Module Level 4. 4. Representing Colors: the <color> type. 4.1 The <color> syntax.
- w3.org
- CSS Color Module Level 4. 5. sRGB Colors.
- w3.org
- JavaFX 20. JavaFX CSS Reference Guide. Types. <color>.
- openjfx.io
- Author:
- Werner Randelshofer
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription@Nullable CssColor@Nullable Stringboolean@Nullable CssColorparse(CssTokenizer tt, @Nullable org.jhotdraw8.base.converter.IdResolver idResolver) @Nullable CssColorparseOld(CssTokenizer tt, @Nullable org.jhotdraw8.base.converter.IdResolver idResolver) <TT extends CssColor>
voidproduceTokens(@Nullable TT value, @Nullable org.jhotdraw8.base.converter.IdSupplier idSupplier, Consumer<CssToken> out) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.jhotdraw8.base.converter.Converter
fromString, fromString, fromStringNonNull, fromStringNonNull, fromStringNonNull, fromStringNonNull, needsIdResolver, toString, toStringMethods inherited from interface org.jhotdraw8.css.converter.CssConverter
fromString, fromString, getExamples, parseNonNull, toString, toString, toString, toTokens
-
Constructor Details
-
ColorCssConverter
public ColorCssConverter() -
ColorCssConverter
public ColorCssConverter(boolean nullable)
-
-
Method Details
-
getDefaultValue
- Specified by:
getDefaultValuein interfaceorg.jhotdraw8.base.converter.Converter<CssColor>
-
getHelpText
- Specified by:
getHelpTextin interfaceorg.jhotdraw8.base.converter.Converter<CssColor>- Specified by:
getHelpTextin interfaceCssConverter<CssColor>
-
isNullable
public boolean isNullable()- Specified by:
isNullablein interfaceCssConverter<CssColor>
-
parse
public @Nullable CssColor parse(CssTokenizer tt, @Nullable org.jhotdraw8.base.converter.IdResolver idResolver) throws ParseException, IOException - Specified by:
parsein interfaceCssConverter<CssColor>- Throws:
ParseExceptionIOException
-
parseOld
public @Nullable CssColor parseOld(CssTokenizer tt, @Nullable org.jhotdraw8.base.converter.IdResolver idResolver) throws ParseException, IOException - Throws:
ParseExceptionIOException
-
produceTokens
public <TT extends CssColor> void produceTokens(@Nullable TT value, @Nullable org.jhotdraw8.base.converter.IdSupplier idSupplier, Consumer<CssToken> out) - Specified by:
produceTokensin interfaceCssConverter<CssColor>
-