Module javafx.graphics
Package javafx.css

# Class StyleableStringProperty

java.lang.Object
javafx.beans.binding.StringExpression
javafx.beans.property.ReadOnlyStringProperty
javafx.beans.property.StringProperty
javafx.beans.property.StringPropertyBase
javafx.css.StyleableStringProperty

All Implemented Interfaces:
  `Observable`, `Property<String>`, `ReadOnlyProperty<String>`, `ObservableObjectValue<String>`, `ObservableStringValue`, `ObservableValue<String>`, `WritableObjectValue<String>`, `WritableStringValue`, `WritableValue<String>`, `StyleableProperty<String>`

Direct Known Subclasses:
  `SimpleStyleableStringProperty`

    public abstract class StyleableStringProperty
    extends StringPropertyBase
    implements StyleableProperty<String>

This class extends `StringPropertyBase` and provides a partial implementation of a `StyleableProperty`. The method `StyleableProperty.getCssMetaData()` is not implemented. This class is used to make a `StringProperty`, that would otherwise be implemented as a `StringPropertyBase`, styleable by CSS.

Since:
  JavaFX 8.0
See Also:
  `StringPropertyBase`, `CssMetaData`, `StyleableProperty`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `StyleableStringProperty()` | The constructor of the `StyleableStringProperty`.
  `StyleableStringProperty​(String initialValue)` | The constructor of the `StyleableStringProperty`.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `applyStyle​(StyleOrigin origin, String v)` | This method is called from CSS code to set the value of the property.
  `void` | `bind​(ObservableValue<? extends String> observable)` | Create a unidirection binding for this `Property`.
  `StyleOrigin` | `getStyleOrigin()` | Tells the origin of the value of the property.
  `void` | `set​(String v)` | Set the wrapped value.

  ### Methods inherited from class javafx.beans.property.StringPropertyBase

  `addListener, addListener, fireValueChangedEvent, get, invalidated, isBound, removeListener, removeListener, toString, unbind`

  ### Methods inherited from class javafx.beans.property.StringProperty

  `bindBidirectional, bindBidirectional, bindBidirectional, setValue, unbindBidirectional, unbindBidirectional`

  ### Methods inherited from class javafx.beans.binding.StringExpression

  `concat, getValue, getValueSafe, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, isEmpty, isEqualTo, isEqualTo, isEqualToIgnoreCase, isEqualToIgnoreCase, isNotEmpty, isNotEqualTo, isNotEqualTo, isNotEqualToIgnoreCase, isNotEqualToIgnoreCase, isNotNull, isNull, length, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, stringExpression`

  ### Methods inherited from class java.lang.Object

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

  ### Methods inherited from interface javafx.beans.value.ObservableValue

  `getValue`

  ### Methods inherited from interface javafx.beans.property.ReadOnlyProperty

  `getBean, getName`

  ### Methods inherited from interface javafx.css.StyleableProperty

  `getCssMetaData`

  ### Methods inherited from interface javafx.beans.value.WritableValue

  `getValue, setValue`

- ## Constructor Details

  - ### StyleableStringProperty

    public StyleableStringProperty()
    The constructor of the `StyleableStringProperty`.

  - ### StyleableStringProperty

    public StyleableStringProperty​(String initialValue)
    The constructor of the `StyleableStringProperty`.
    Parameters:
      `initialValue` - the initial value of the wrapped `Object`

- ## Method Details

  - ### applyStyle

    public void applyStyle​(StyleOrigin origin, String v)
    This method is called from CSS code to set the value of the property.
    Specified by:
      `applyStyle` in interface `StyleableProperty<String>`
    Parameters:
      `origin` - the origin
      `v` - the value

  - ### bind

    public void bind​(ObservableValue<? extends String> observable)
    Create a unidirection binding for this `Property`.

    Note that JavaFX has all the bind calls implemented through weak listeners. This means the bound property can be garbage collected and stopped from being updated.

    Specified by:
      `bind` in interface `Property<String>`
    Overrides:
      `bind` in class `StringPropertyBase`
    Parameters:
      `observable` - The observable this `Property` should be bound to.

  - ### set

    public void set​(String v)
    Set the wrapped value. Should be equivalent to `WritableValue.setValue(java.lang.Object)`
    Specified by:
      `set` in interface `WritableObjectValue<String>`
    Overrides:
      `set` in class `StringPropertyBase`
    Parameters:
      `v` - The new value
    See Also:
      `WritableObjectValue.get()`

  - ### getStyleOrigin

    public StyleOrigin getStyleOrigin()
    Tells the origin of the value of the property. This is needed to determine whether or not CSS can override the value.
    Specified by:
      `getStyleOrigin` in interface `StyleableProperty<String>`
    Returns:
      the style origin