Spec-Zone.ru › OpenJavaFX 17

Class StyleablePropertyFactory<S extends Styleable>

java.lang.Object
javafx.css.StyleablePropertyFactory<S>
Type Parameters:
S - The type of Styleable
public class StyleablePropertyFactory<S extends Styleable>
extends Object
Methods for creating instances of StyleableProperty with corresponding CssMetaData created behind the scenes. These methods greatly reduce the amount of boiler-plate code needed to implement the StyleableProperty and CssMetaData. These methods take a Function<? extends Styleable, StyleableProperty<?>> which returns a reference to the property itself. See the example below. Note that for efficient use of memory and for better CSS performance, creating the StyleablePropertyFactory as a static member, as shown below, is recommended.

 public final class MyButton extends Button {

     private static final StyleablePropertyFactory<MyButton> FACTORY = new StyleablePropertyFactory<>(Button.getClassCssMetaData());

     MyButton(String labelText) {
         super(labelText);
         getStyleClass().add("my-button");
     }

     // Typical JavaFX property implementation
     public ObservableValue<Boolean> selectedProperty() { return (ObservableValue<Boolean>)selected; }
     public final boolean isSelected() { return selected.getValue(); }
     public final void setSelected(boolean isSelected) { selected.setValue(isSelected); }

     // StyleableProperty implementation reduced to one line
     private final StyleableProperty<Boolean> selected =
         FACTORY.createStyleableBooleanProperty(this, "selected", "-my-selected", s -> s.selected);

     @Override
     public List<CssMetaData<? extends Styleable, ?>> getControlCssMetaData() {
         return FACTORY.getCssMetaData();
     }

 }
 

The example above is the simplest use of StyleablePropertyFactory. But, this use does not provide the static CssMetaData that is useful for getClassCssMetaData(), which is described in the javadoc for CssMetaData. Static CssMetaData can, however, be created via StyleablePropertyFactory methods and will be returned by the methods which create StyleableProperty instances, as the example below illustrates. Note that the static method getClassCssMetaData() is a convention used throughout the JavaFX code base but the getClassCssMetaData() method itself is not used at runtime.


 public final class MyButton extends Button {

     private static final StyleablePropertyFactory<MyButton> FACTORY =
         new StyleablePropertyFactory<>(Button.getClassCssMetaData());

     private static final CssMetaData<MyButton, Boolean> SELECTED =
         FACTORY.createBooleanCssMetaData("-my-selected", s -> s.selected, false, false);

     MyButton(String labelText) {
         super(labelText);
         getStyleClass().add("my-button");
     }

     // Typical JavaFX property implementation
     public ObservableValue<Boolean> selectedProperty() { return (ObservableValue<Boolean>)selected; }
     public final boolean isSelected() { return selected.getValue(); }
     public final void setSelected(boolean isSelected) { selected.setValue(isSelected); }

     // StyleableProperty implementation reduced to one line
     private final StyleableProperty<Boolean> selected =
         new SimpleStyleableBooleanProperty(SELECTED, this, "selected");

     public static List<CssMetaData<? extends Styleable, ?>> getClassCssMetaData() {
         return FACTORY.getCssMetaData();
     }

     @Override
     public List<CssMetaData<? extends Styleable, ?>> getControlCssMetaData() {
         return FACTORY.getCssMetaData();
     }
 }
 

The same can be accomplished with an inner-class. The previous example called new SimpleStyleableBooleanProperty to create the selected property. This example uses the factory to access the CssMetaData that was created along with the anonymous inner-class. For all intents and purposes, the two examples are the same.


 public final class MyButton extends Button {

     private static final StyleablePropertyFactory<MyButton> FACTORY =
         new StyleablePropertyFactory<>(Button.getClassCssMetaData()) {
         {
             createBooleanCssMetaData("-my-selected", s -> s.selected, false, false);
         }
     }


     MyButton(String labelText) {
         super(labelText);
         getStyleClass().add("my-button");
     }

     // Typical JavaFX property implementation
     public ObservableValue<Boolean> selectedProperty() { return (ObservableValue<Boolean>)selected; }
     public final boolean isSelected() { return selected.getValue(); }
     public final void setSelected(boolean isSelected) { selected.setValue(isSelected); }

     // StyleableProperty implementation reduced to one line
     private final StyleableProperty<Boolean> selected =
         new SimpleStyleableBooleanProperty(this, "selected", "my-selected");

     public static List<CssMetaData<? extends Styleable, ?>> getClassCssMetaData() {
         return FACTORY.getCssMetaData();
     }

     @Override
     public List<CssMetaData<? extends Styleable, ?>> getControlCssMetaData() {
         return FACTORY.getCssMetaData();
     }
 }
 

Caveats:

The only option for creating a StyleableProperty with a number value is to create a StyleableProperty<Number>. The return value from the getValue() method of the StyleableProperty is a Number. Therefore, the get method of the JavaFX property needs to call the correct value method for the return type. For example,

     public ObservableValue<Double> offsetProperty() { return (ObservableValue<Double>)offset; }
     public Double getOffset() { return offset.getValue().doubleValue(); }
     public void setOffset(Double value) { offset.setValue(value); }
     private final StyleableProperty<Number> offset = FACTORY.createStyleableNumberProperty(this, "offset", "-my-offset", s -> ((MyButton)s).offset);
 
Since:
JavaFX 8u40

Constructor Summary

Constructors
Constructor Description
StyleablePropertyFactory​(List<CssMetaData<? extends Styleable,​?>> parentCssMetaData)
The constructor is passed the CssMetaData of the parent class of <S>, typically by calling the static getClassCssMetaData() method of the parent.

Method Summary

Modifier and Type Method Description
CssMetaData<S,​Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function)
Create a CssMetaData<S, Boolean> with initial value and inherit flag both defaulting to false.
CssMetaData<S,​Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue)
Create a CssMetaData<S, Boolean> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue, boolean inherits)
Create a CssMetaData<S, Boolean> with initial value, and inherit flag.
CssMetaData<S,​Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function)
Create a CssMetaData<S, Color> with initial value of Color.BLACK, and inherit flag defaulting to false.
CssMetaData<S,​Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function, Color initialValue)
Create a CssMetaData<S, Color> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function, Color initialValue, boolean inherits)
Create a CssMetaData<S, Color> with initial value, and inherit flag.
CssMetaData<S,​Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function)
Create a CssMetaData<S, Duration> with initial value of Duration.BLACK, and inherit flag defaulting to false.
CssMetaData<S,​Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function, Duration initialValue)
Create a CssMetaData<S, Duration> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function, Duration initialValue, boolean inherits)
Create a CssMetaData<S, Duration> with initial value, and inherit flag.
<E extends Effect>
CssMetaData<S,​E>
createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function)
Create a CssMetaData<S, Effect> with initial value of null, and inherit flag defaulting to false.
<E extends Effect>
CssMetaData<S,​E>
createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a CssMetaData<S, Effect> with initial value, and inherit flag defaulting to false.
<E extends Effect>
CssMetaData<S,​E>
createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a CssMetaData<S, Effect> with initial value, and inherit flag.
<E extends Enum<E>>
CssMetaData<S,​E>
createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function)
Create a CssMetaData<S, Enum> with initial value of null, and inherit flag defaulting to false.
<E extends Enum<E>>
CssMetaData<S,​E>
createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a CssMetaData<S, Enum> with initial value, and inherit flag defaulting to false.
<E extends Enum<E>>
CssMetaData<S,​E>
createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a CssMetaData<S, Enum> with initial value, and inherit flag.
CssMetaData<S,​Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function)
Create a CssMetaData<S, Font> with initial value of Font.getDefault(), and inherit flag defaulting to true.
CssMetaData<S,​Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function, Font initialValue)
Create a CssMetaData<S, Font> with initial value, and inherit flag defaulting to true.
CssMetaData<S,​Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function, Font initialValue, boolean inherits)
Create a CssMetaData<S, Font> with initial value, and inherit flag.
CssMetaData<S,​Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function)
Create a CssMetaData<S, Insets> with initial value of Insets.EMPTY, and inherit flag defaulting to false.
CssMetaData<S,​Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function, Insets initialValue)
Create a CssMetaData<S, Insets> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function, Insets initialValue, boolean inherits)
Create a CssMetaData<S, Insets> with initial value, and inherit flag.
CssMetaData<S,​Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function)
Create a CssMetaData<S, Paint> with initial value of Color.BLACK, and inherit flag defaulting to false.
CssMetaData<S,​Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function, Paint initialValue)
Create a CssMetaData<S, Paint> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function, Paint initialValue, boolean inherits)
Create a CssMetaData<S, Paint> with initial value, and inherit flag.
CssMetaData<S,​Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function)
Create a CssMetaData<S, Number> with initial value of 0d, and inherit flag defaulting to false.
CssMetaData<S,​Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function, Number initialValue)
Create a CssMetaData<S, Number> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function, Number initialValue, boolean inherits)
Create a CssMetaData<S, Number> with initial value, and inherit flag.
CssMetaData<S,​String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function)
Create a CssMetaData<S, String> with initial value of null, and inherit flag defaulting to false.
CssMetaData<S,​String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a CssMetaData<S, String> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a CssMetaData<S, String> with initial value, and inherit flag.
StyleableProperty<Boolean> createStyleableBooleanProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Boolean> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Boolean> createStyleableBooleanProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function)
Create a StyleableProperty<Boolean>.
StyleableProperty<Boolean> createStyleableBooleanProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue)
Create a StyleableProperty<Boolean> with initial value.
StyleableProperty<Boolean> createStyleableBooleanProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue, boolean inherits)
Create a StyleableProperty<Boolean> with initial value and inherit flag.
StyleableProperty<Color> createStyleableColorProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Color> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Color> createStyleableColorProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function)
Create a StyleableProperty<Color>.
StyleableProperty<Color> createStyleableColorProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function, Color initialValue)
Create a StyleableProperty<Color> with initial value.
StyleableProperty<Color> createStyleableColorProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function, Color initialValue, boolean inherits)
Create a StyleableProperty<Color> with initial value and inherit flag.
StyleableProperty<Duration> createStyleableDurationProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Duration> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Duration> createStyleableDurationProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function)
Create a StyleableProperty<Duration>.
StyleableProperty<Duration> createStyleableDurationProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function, Duration initialValue)
Create a StyleableProperty<Duration> with initial value.
StyleableProperty<Duration> createStyleableDurationProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function, Duration initialValue, boolean inherits)
Create a StyleableProperty<Duration> with initial value and inherit flag.
StyleableProperty<Effect> createStyleableEffectProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Effect> using previously created CssMetaData for the given cssProperty.
<E extends Enum<E>>
StyleableProperty<E>
createStyleableEffectProperty​(S styleable, String propertyName, String cssProperty, Class<E> enumClass)
Create a StyleableProperty<E extends Enum<E>> using previously created CssMetaData for the given cssProperty.
<E extends Effect>
StyleableProperty<E>
createStyleableEffectProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function)
Create a StyleableProperty<Effect>.
<E extends Effect>
StyleableProperty<E>
createStyleableEffectProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a StyleableProperty<Effect> with initial value.
<E extends Effect>
StyleableProperty<E>
createStyleableEffectProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a StyleableProperty<Effect> with initial value and inherit flag.
<E extends Enum<E>>
StyleableProperty<E>
createStyleableEnumProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass)
Create a StyleableProperty<E extends Enum<E>>.
<E extends Enum<E>>
StyleableProperty<E>
createStyleableEnumProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass, E initialValue)
Create a StyleableProperty<E extends Enum<E>> with initial value.
<E extends Enum<E>>
StyleableProperty<E>
createStyleableEnumProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass, E initialValue, boolean inherits)
Create a StyleableProperty<E extends Enum<E>> with initial value and inherit flag.
StyleableProperty<Font> createStyleableFontProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Font> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Font> createStyleableFontProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function)
Create a StyleableProperty<Font>.
StyleableProperty<Font> createStyleableFontProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function, Font initialValue)
Create a StyleableProperty<Font> with initial value.
StyleableProperty<Font> createStyleableFontProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function, Font initialValue, boolean inherits)
Create a StyleableProperty<Font> with initial value and inherit flag.
StyleableProperty<Insets> createStyleableInsetsProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Insets> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Insets> createStyleableInsetsProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function)
Create a StyleableProperty<Inset>.
StyleableProperty<Insets> createStyleableInsetsProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function, Insets initialValue)
Create a StyleableProperty<Inset> with initial value.
StyleableProperty<Insets> createStyleableInsetsProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function, Insets initialValue, boolean inherits)
Create a StyleableProperty<Inset> with initial value and inherit flag.
StyleableProperty<Number> createStyleableNumberProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Number> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Number> createStyleableNumberProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function)
Create a StyleableProperty<Number>.
StyleableProperty<Number> createStyleableNumberProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function, Number initialValue)
Create a StyleableProperty<Number> with initial value.
StyleableProperty<Number> createStyleableNumberProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function, Number initialValue, boolean inherits)
Create a StyleableProperty<Number> with initial value and inherit flag.
StyleableProperty<Paint> createStyleablePaintProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Paint> using previously created CssMetaData for the given cssProperty.
StyleableProperty<Paint> createStyleablePaintProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function)
Create a StyleableProperty<Paint>.
StyleableProperty<Paint> createStyleablePaintProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function, Paint initialValue)
Create a StyleableProperty<Paint> with initial value.
StyleableProperty<Paint> createStyleablePaintProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function, Paint initialValue, boolean inherits)
Create a StyleableProperty<Paint> with initial value and inherit flag.
StyleableProperty<String> createStyleableStringProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<String> using previously created CssMetaData for the given cssProperty.
StyleableProperty<String> createStyleableStringProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function)
Create a StyleableProperty<String>.
StyleableProperty<String> createStyleableStringProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a StyleableProperty<String> with initial value.
StyleableProperty<String> createStyleableStringProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a StyleableProperty<String> with initial value and inherit flag.
StyleableProperty<String> createStyleableUrlProperty​(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<String> using previously created CssMetaData for the given cssProperty.
StyleableProperty<String> createStyleableUrlProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function)
Create a StyleableProperty<String> with initial value.
StyleableProperty<String> createStyleableUrlProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a StyleableProperty<String> with initial value.
StyleableProperty<String> createStyleableUrlProperty​(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a StyleableProperty<String> with initial value and inherit flag.
CssMetaData<S,​String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function)
Create a CssMetaData<S, String> with initial value of null, and inherit flag defaulting to false.
CssMetaData<S,​String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a CssMetaData<S, String> with initial value, and inherit flag defaulting to false.
CssMetaData<S,​String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a CssMetaData<S, String> with initial value, and inherit flag.
List<CssMetaData<? extends Styleable,​?>> getCssMetaData()
Get the CssMetaData for the given Styleable.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

StyleablePropertyFactory

public StyleablePropertyFactory(List<CssMetaData<? extends Styleable,​?>> parentCssMetaData)
The constructor is passed the CssMetaData of the parent class of <S>, typically by calling the static getClassCssMetaData() method of the parent.
Parameters:
parentCssMetaData - The CssMetaData of the parent class of <S>, or null.

Method Details

getCssMetaData

public final List<CssMetaData<? extends Styleable,?>> getCssMetaData()
Get the CssMetaData for the given Styleable. For a Node other than a Control, this method should be called from the Styleable.getCssMetaData() method. For a Control, this method should be called from the Control.getControlCssMetaData() method.
Returns:
the CssMetaData for the given Styleable

createStyleableBooleanProperty

public final StyleableProperty<Boolean> createStyleableBooleanProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue, boolean inherits)
Create a StyleableProperty<Boolean> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Boolean>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Boolean> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableBooleanProperty

public final StyleableProperty<Boolean> createStyleableBooleanProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue)
Create a StyleableProperty<Boolean> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Boolean>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Boolean> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value

createStyleableBooleanProperty

public final StyleableProperty<Boolean> createStyleableBooleanProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Boolean>> function)
Create a StyleableProperty<Boolean>. The initialValue and inherit flag default to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Boolean>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Boolean> that was created by this method call.
Returns:
a StyleableProperty created with default initialValue and inherit flag

createStyleableBooleanProperty

public final StyleableProperty<Boolean> createStyleableBooleanProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Boolean> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Boolean>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableColorProperty

public final StyleableProperty<Color> createStyleableColorProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function, Color initialValue, boolean inherits)
Create a StyleableProperty<Color> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Color>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Color> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableColorProperty

public final StyleableProperty<Color> createStyleableColorProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function, Color initialValue)
Create a StyleableProperty<Color> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Color>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Color> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value

createStyleableColorProperty

public final StyleableProperty<Color> createStyleableColorProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Color>> function)
Create a StyleableProperty<Color>. The initial value defaults to Color.BLACK and the inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Color>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Color> that was created by this method call.
Returns:
a StyleableProperty created with default initial value and inherit flag

createStyleableColorProperty

public final StyleableProperty<Color> createStyleableColorProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Color> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Color>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableDurationProperty

public final StyleableProperty<Duration> createStyleableDurationProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function, Duration initialValue, boolean inherits)
Create a StyleableProperty<Duration> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Duration>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Duration> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableDurationProperty

public final StyleableProperty<Duration> createStyleableDurationProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function, Duration initialValue)
Create a StyleableProperty<Duration> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Duration>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Duration> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableDurationProperty

public final StyleableProperty<Duration> createStyleableDurationProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Duration>> function)
Create a StyleableProperty<Duration>. The initial value defaults to Duration.BLACK and the inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Duration>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Duration> that was created by this method call.
Returns:
a StyleableProperty created with default initial value and false inherit flag

createStyleableDurationProperty

public final StyleableProperty<Duration> createStyleableDurationProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Duration> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Duration>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableEffectProperty

public final <E extends Effect> StyleableProperty<E> createStyleableEffectProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a StyleableProperty<Effect> with initial value and inherit flag.
Type Parameters:
E - The type of StyleableProperty
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Effect>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Effect> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableEffectProperty

public final <E extends Effect> StyleableProperty<E> createStyleableEffectProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a StyleableProperty<Effect> with initial value. The inherit flag defaults to false.
Type Parameters:
E - The StyleableProperty created with initial value and false inherit flag
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Effect>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Effect> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableEffectProperty

public final <E extends Effect> StyleableProperty<E> createStyleableEffectProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function)
Create a StyleableProperty<Effect>. The initial value is null and the inherit flag defaults to false.
Type Parameters:
E - The StyleableProperty created with null initial value and false inherit flag
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Effect>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Effect> that was created by this method call.
Returns:
a StyleableProperty created with null initial value and false inherit flag

createStyleableEffectProperty

public final StyleableProperty<Effect> createStyleableEffectProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Effect> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Effect>
cssProperty - The CSS property name
Returns:
StyleableProperty created using previously created CssMetaData for the given cssProperty
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableEnumProperty

public final <E extends Enum<E>> StyleableProperty<E> createStyleableEnumProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass, E initialValue, boolean inherits)
Create a StyleableProperty<E extends Enum<E>> with initial value and inherit flag. The enumClass parameter is the Class of the Enum that is the value of the property. For example,

 
     private static final StyleablePropertyFactory<MyControl> FACTORY = new StyleablePropertyFactory<>();
     StyleableProperty<Orientation> orientation =
         FACTORY.createStyleableEnumProperty(
             this,
             "orientation",
             "-my-orientation",
             s -> ((MyControl)s).orientation,
             Orientation.class,
             Orientation.HORIZONTAL,
             false);
 
 
Type Parameters:
E - The StyleableProperty created with initial value and inherit flag
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<E extends Enum<E>>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<E extends Enum<E>> that was created by this method call.
enumClass - The Enum class that is the type of the StyleableProperty<E extends Enum<E>>.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableEnumProperty

public final <E extends Enum<E>> StyleableProperty<E> createStyleableEnumProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass, E initialValue)
Create a StyleableProperty<E extends Enum<E>> with initial value. The inherit flag defaults to false. The enumClass parameter is the Class of the Enum that is the value of the property. For example,

 
     private static final StyleablePropertyFactory<MyControl> FACTORY = new StyleablePropertyFactory<>();
     StyleableProperty<Orientation> orientation =
         FACTORY.createStyleableEnumProperty(
             this,
             "orientation",
             "-my-orientation",
             s -> ((MyControl)s).orientation,
             Orientation.class,
             Orientation.HORIZONTAL);
 
 
Type Parameters:
E - The StyleableProperty created with initial value and false inherit flag
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<E extends Enum<E>>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<E extends Enum<E>> that was created by this method call.
enumClass - The Enum class that is the type of the StyleableProperty<E extends Enum<E>>.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableEnumProperty

public final <E extends Enum<E>> StyleableProperty<E> createStyleableEnumProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<E>> function, Class<E> enumClass)
Create a StyleableProperty<E extends Enum<E>>. The initial value is null and inherit flag defaults to false. The enumClass parameter is the Class of the Enum that is the value of the property. For example,

 
     private static final StyleablePropertyFactory<MyControl> FACTORY = new StyleablePropertyFactory<>();
     StyleableProperty<Orientation> orientation =
         FACTORY.createStyleableEnumProperty(
             this,
             "orientation",
             "-my-orientation",
             s -> ((MyControl)s).orientation,
             Orientation.class);
 
 
Type Parameters:
E - The StyleableProperty created with null initial value and false inherit flag
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<E extends Enum<E>>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<E extends Enum<E>> that was created by this method call.
enumClass - The Enum class that is the type of the StyleableProperty<E extends Enum<E>>.
Returns:
a StyleableProperty created with null initial value and false inherit flag

createStyleableEffectProperty

public final <E extends Enum<E>> StyleableProperty<E> createStyleableEffectProperty(S styleable, String propertyName, String cssProperty, Class<E> enumClass)
Create a StyleableProperty<E extends Enum<E>> using previously created CssMetaData for the given cssProperty.
Type Parameters:
E - The StyleableProperty created using previously created CssMetaData
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<E extends Enum<E>>
cssProperty - The CSS property name
enumClass - The Enum class that is the type of the StyleableProperty<E extends Enum<E>>.
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableFontProperty

public final StyleableProperty<Font> createStyleableFontProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function, Font initialValue, boolean inherits)
Create a StyleableProperty<Font> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Font>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Font> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableFontProperty

public final StyleableProperty<Font> createStyleableFontProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function, Font initialValue)
Create a StyleableProperty<Font> with initial value. The inherit flag defaults to true.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Font>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Font> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and true inherit flag

createStyleableFontProperty

public final StyleableProperty<Font> createStyleableFontProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Font>> function)
Create a StyleableProperty<Font>. The initial value defaults to Font.getDefault() and the inherit flag defaults to true.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Font>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Font> that was created by this method call.
Returns:
a StyleableProperty created with default font initial value and true inherit flag

createStyleableFontProperty

public final StyleableProperty<Font> createStyleableFontProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Font> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Font>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableInsetsProperty

public final StyleableProperty<Insets> createStyleableInsetsProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function, Insets initialValue, boolean inherits)
Create a StyleableProperty<Inset> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Inset>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Inset> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableInsetsProperty

public final StyleableProperty<Insets> createStyleableInsetsProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function, Insets initialValue)
Create a StyleableProperty<Inset> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Inset>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Inset> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableInsetsProperty

public final StyleableProperty<Insets> createStyleableInsetsProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Insets>> function)
Create a StyleableProperty<Inset>. The initial value is Insets.EMPTY and the inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Inset>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Inset> that was created by this method call.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableInsetsProperty

public final StyleableProperty<Insets> createStyleableInsetsProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Insets> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Insets>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleablePaintProperty

public final StyleableProperty<Paint> createStyleablePaintProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function, Paint initialValue, boolean inherits)
Create a StyleableProperty<Paint> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Paint>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Paint> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleablePaintProperty

public final StyleableProperty<Paint> createStyleablePaintProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function, Paint initialValue)
Create a StyleableProperty<Paint> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Paint>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Paint> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleablePaintProperty

public final StyleableProperty<Paint> createStyleablePaintProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Paint>> function)
Create a StyleableProperty<Paint>. The initial value defautls to Color.BLACK and the inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Paint>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Paint> that was created by this method call.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleablePaintProperty

public final StyleableProperty<Paint> createStyleablePaintProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Paint> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Paint>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableNumberProperty

public final StyleableProperty<Number> createStyleableNumberProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function, Number initialValue, boolean inherits)
Create a StyleableProperty<Number> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Number>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Number> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableNumberProperty

public final StyleableProperty<Number> createStyleableNumberProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function, Number initialValue)
Create a StyleableProperty<Number> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Number>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Number> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableNumberProperty

public final StyleableProperty<Number> createStyleableNumberProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<Number>> function)
Create a StyleableProperty<Number>. The initial value defaults to zero. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Number>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<Number> that was created by this method call.
Returns:
a StyleableProperty created with zero initial value and false inherit flag

createStyleableNumberProperty

public final StyleableProperty<Number> createStyleableNumberProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<Number> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<Number>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableStringProperty

public final StyleableProperty<String> createStyleableStringProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a StyleableProperty<String> with initial value and inherit flag.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableStringProperty

public final StyleableProperty<String> createStyleableStringProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a StyleableProperty<String> with initial value. The inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableStringProperty

public final StyleableProperty<String> createStyleableStringProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function)
Create a StyleableProperty<String>. The initial value defaults to null and the inherit flag defaults to false.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
Returns:
a StyleableProperty created with null initial value and false inherit flag

createStyleableStringProperty

public final StyleableProperty<String> createStyleableStringProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<String> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createStyleableUrlProperty

public final StyleableProperty<String> createStyleableUrlProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a StyleableProperty<String> with initial value and inherit flag. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a StyleableProperty created with initial value and inherit flag

createStyleableUrlProperty

public final StyleableProperty<String> createStyleableUrlProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a StyleableProperty<String> with initial value. The inherit flag defaults to false. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableUrlProperty

public final StyleableProperty<String> createStyleableUrlProperty(S styleable, String propertyName, String cssProperty, Function<S,​StyleableProperty<String>> function)
Create a StyleableProperty<String> with initial value. The inherit flag defaults to false. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
function - A function that returns the StyleableProperty<String> that was created by this method call.
Returns:
a StyleableProperty created with initial value and false inherit flag

createStyleableUrlProperty

public final StyleableProperty<String> createStyleableUrlProperty(S styleable, String propertyName, String cssProperty)
Create a StyleableProperty<String> using previously created CssMetaData for the given cssProperty.
Parameters:
styleable - The this reference of the returned property. This is also the property bean.
propertyName - The field name of the StyleableProperty<String>
cssProperty - The CSS property name
Returns:
a StyleableProperty created using previously created CssMetaData
Throws:
IllegalArgumentException - if cssProperty is null or empty
NoSuchElementException - if the CssMetaData for cssProperty was not created prior to this method invocation

createBooleanCssMetaData

public final CssMetaData<S,Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue, boolean inherits)
Create a CssMetaData<S, Boolean> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Boolean> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createBooleanCssMetaData

public final CssMetaData<S,Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function, boolean initialValue)
Create a CssMetaData<S, Boolean> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Boolean> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createBooleanCssMetaData

public final CssMetaData<S,Boolean> createBooleanCssMetaData​(String property, Function<S,​StyleableProperty<Boolean>> function)
Create a CssMetaData<S, Boolean> with initial value and inherit flag both defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Boolean> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with false initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createColorCssMetaData

public final CssMetaData<S,Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function, Color initialValue, boolean inherits)
Create a CssMetaData<S, Color> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Color> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createColorCssMetaData

public final CssMetaData<S,Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function, Color initialValue)
Create a CssMetaData<S, Color> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Color> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createColorCssMetaData

public final CssMetaData<S,Color> createColorCssMetaData​(String property, Function<S,​StyleableProperty<Color>> function)
Create a CssMetaData<S, Color> with initial value of Color.BLACK, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Color> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createDurationCssMetaData

public final CssMetaData<S,Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function, Duration initialValue, boolean inherits)
Create a CssMetaData<S, Duration> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Duration> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createDurationCssMetaData

public final CssMetaData<S,Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function, Duration initialValue)
Create a CssMetaData<S, Duration> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Duration> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createDurationCssMetaData

public final CssMetaData<S,Duration> createDurationCssMetaData​(String property, Function<S,​StyleableProperty<Duration>> function)
Create a CssMetaData<S, Duration> with initial value of Duration.BLACK, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Duration> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEffectCssMetaData

public final <E extends Effect> CssMetaData<S,E> createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a CssMetaData<S, Effect> with initial value, and inherit flag.
Type Parameters:
E - The CssMetaData created with initial value and inherit flag
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Effect> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEffectCssMetaData

public final <E extends Effect> CssMetaData<S,E> createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a CssMetaData<S, Effect> with initial value, and inherit flag defaulting to false.
Type Parameters:
E - The CssMetaData created with initial value and false inherit flag
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Effect> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEffectCssMetaData

public final <E extends Effect> CssMetaData<S,E> createEffectCssMetaData​(String property, Function<S,​StyleableProperty<E>> function)
Create a CssMetaData<S, Effect> with initial value of null, and inherit flag defaulting to false.
Type Parameters:
E - The CssMetaData created with null initial value and false inherit flag
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Effect> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with null initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEnumCssMetaData

public final <E extends Enum<E>> CssMetaData<S,E> createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function, E initialValue, boolean inherits)
Create a CssMetaData<S, Enum> with initial value, and inherit flag.
Type Parameters:
E - The CssMetaData created with initial value and inherit flag
Parameters:
enumClass - The Enum class that is the type of the CssMetaData<E extends Enum<E>>.
property - The CSS property name.
function - A function that returns the StyleableProperty<Enum> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEnumCssMetaData

public final <E extends Enum<E>> CssMetaData<S,E> createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function, E initialValue)
Create a CssMetaData<S, Enum> with initial value, and inherit flag defaulting to false.
Type Parameters:
E - The CssMetaData created with initial value and false inherit flag
Parameters:
enumClass - The Enum class that is the type of the CssMetaData<E extends Enum<E>>.
property - The CSS property name.
function - A function that returns the StyleableProperty<Enum> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createEnumCssMetaData

public final <E extends Enum<E>> CssMetaData<S,E> createEnumCssMetaData​(Class<? extends Enum> enumClass, String property, Function<S,​StyleableProperty<E>> function)
Create a CssMetaData<S, Enum> with initial value of null, and inherit flag defaulting to false.
Type Parameters:
E - The CssMetaData created with null initial value and false inherit flag
Parameters:
enumClass - The Enum class that is the type of the CssMetaData<E extends Enum<E>>.
property - The CSS property name.
function - A function that returns the StyleableProperty<Enum> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with null initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createFontCssMetaData

public final CssMetaData<S,Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function, Font initialValue, boolean inherits)
Create a CssMetaData<S, Font> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Font> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createFontCssMetaData

public final CssMetaData<S,Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function, Font initialValue)
Create a CssMetaData<S, Font> with initial value, and inherit flag defaulting to true.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Font> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and true inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createFontCssMetaData

public final CssMetaData<S,Font> createFontCssMetaData​(String property, Function<S,​StyleableProperty<Font>> function)
Create a CssMetaData<S, Font> with initial value of Font.getDefault(), and inherit flag defaulting to true.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Font> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and true inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createInsetsCssMetaData

public final CssMetaData<S,Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function, Insets initialValue, boolean inherits)
Create a CssMetaData<S, Insets> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Insets> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createInsetsCssMetaData

public final CssMetaData<S,Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function, Insets initialValue)
Create a CssMetaData<S, Insets> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Insets> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createInsetsCssMetaData

public final CssMetaData<S,Insets> createInsetsCssMetaData​(String property, Function<S,​StyleableProperty<Insets>> function)
Create a CssMetaData<S, Insets> with initial value of Insets.EMPTY, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Insets> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createPaintCssMetaData

public final CssMetaData<S,Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function, Paint initialValue, boolean inherits)
Create a CssMetaData<S, Paint> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Paint> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createPaintCssMetaData

public final CssMetaData<S,Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function, Paint initialValue)
Create a CssMetaData<S, Paint> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Paint> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createPaintCssMetaData

public final CssMetaData<S,Paint> createPaintCssMetaData​(String property, Function<S,​StyleableProperty<Paint>> function)
Create a CssMetaData<S, Paint> with initial value of Color.BLACK, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Paint> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createSizeCssMetaData

public final CssMetaData<S,Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function, Number initialValue, boolean inherits)
Create a CssMetaData<S, Number> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Number> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createSizeCssMetaData

public final CssMetaData<S,Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function, Number initialValue)
Create a CssMetaData<S, Number> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Number> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createSizeCssMetaData

public final CssMetaData<S,Number> createSizeCssMetaData​(String property, Function<S,​StyleableProperty<Number>> function)
Create a CssMetaData<S, Number> with initial value of 0d, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<Number> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createStringCssMetaData

public final CssMetaData<S,String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a CssMetaData<S, String> with initial value, and inherit flag.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createStringCssMetaData

public final CssMetaData<S,String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a CssMetaData<S, String> with initial value, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createStringCssMetaData

public final CssMetaData<S,String> createStringCssMetaData​(String property, Function<S,​StyleableProperty<String>> function)
Create a CssMetaData<S, String> with initial value of null, and inherit flag defaulting to false.
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with null initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createUrlCssMetaData

public final CssMetaData<S,String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue, boolean inherits)
Create a CssMetaData<S, String> with initial value, and inherit flag. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
inherits - Whether or not the CSS style can be inherited by child nodes
Returns:
a CssMetaData created with initial value, and inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createUrlCssMetaData

public final CssMetaData<S,String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function, String initialValue)
Create a CssMetaData<S, String> with initial value, and inherit flag defaulting to false. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
initialValue - The initial value of the property. CSS may reset the property to this value.
Returns:
a CssMetaData created with initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

createUrlCssMetaData

public final CssMetaData<S,String> createUrlCssMetaData​(String property, Function<S,​StyleableProperty<String>> function)
Create a CssMetaData<S, String> with initial value of null, and inherit flag defaulting to false. Here, the String value represents a URL converted from a CSS url("<path>").
Parameters:
property - The CSS property name.
function - A function that returns the StyleableProperty<String> that corresponds to this CssMetaData.
Returns:
a CssMetaData created with null initial value, and false inherit flag
Throws:
IllegalArgumentException - if property is null or an empty string, or function is null.

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API