Module MaterialFX
Class SynchronizedFloatProperty
java.lang.Object
javafx.beans.binding.NumberExpressionBase
javafx.beans.binding.FloatExpression
javafx.beans.property.ReadOnlyFloatProperty
javafx.beans.property.FloatProperty
javafx.beans.property.FloatPropertyBase
javafx.beans.property.SimpleFloatProperty
io.github.palexdev.materialfx.beans.properties.synced.SynchronizedFloatProperty
- All Implemented Interfaces:
SynchronizedProperty<Number>,NumberExpression,Observable,Property<Number>,ReadOnlyProperty<Number>,ObservableFloatValue,ObservableNumberValue,ObservableValue<Number>,WritableFloatValue,WritableNumberValue,WritableValue<Number>
public class SynchronizedFloatProperty
extends SimpleFloatProperty
implements SynchronizedProperty<Number>
Implementation of
SynchronizedProperty for float values.-
Nested Class Summary
Nested classes/interfaces inherited from interface io.github.palexdev.materialfx.beans.properties.base.SynchronizedProperty
SynchronizedProperty.Helper -
Constructor Summary
ConstructorsConstructorDescriptionSynchronizedFloatProperty(float initialValue) SynchronizedFloatProperty(Object bean, String name) SynchronizedFloatProperty(Object bean, String name, float initialValue) -
Method Summary
Modifier and TypeMethodDescriptionvoidawake()Awakes the property by settingSynchronizedProperty.waiting()to false.voidbind(ObservableValue<? extends Number> source) Creates a unidirectional bindings with the given observable.voidbindBidirectional(Property<Number> other) Creates a bidirectional bindings between this property and the given property.voidDelegate method forBiBindingManager.disposeFor(ObservableValue).protected voidbooleanisBound()Overridden to check theBindingManager.isBound(ObservableValue)andBindingManager.isIgnoreBinding(ObservableValue).booleanvoidsetAndWait(Number value, ObservableValue<?> observable) Sets this property's state to "waiting" then usesExecutionUtils.executeWhen(Observable, Runnable, boolean, Supplier, boolean)to "awake" the property when the given observable changes.voidunbind()Overridden to callBindingManager.unbind(ObservableValue).voidunbindBidirectional(Property<Number> other) Overridden to callBiBindingManager.unbind(ObservableValue, ObservableValue).waiting()Methods inherited from class javafx.beans.property.SimpleFloatProperty
getBean, getNameMethods inherited from class javafx.beans.property.FloatPropertyBase
addListener, addListener, get, invalidated, removeListener, removeListener, set, toStringMethods inherited from class javafx.beans.property.FloatProperty
asObject, floatProperty, setValueMethods inherited from class javafx.beans.property.ReadOnlyFloatProperty
readOnlyFloatPropertyMethods inherited from class javafx.beans.binding.FloatExpression
add, add, add, add, divide, divide, divide, divide, doubleValue, floatExpression, floatExpression, floatValue, getValue, intValue, longValue, multiply, multiply, multiply, multiply, negate, subtract, subtract, subtract, subtractMethods inherited from class javafx.beans.binding.NumberExpressionBase
add, asString, asString, asString, divide, greaterThan, greaterThan, greaterThan, greaterThan, greaterThan, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, greaterThanOrEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, isNotEqualTo, lessThan, lessThan, lessThan, lessThan, lessThan, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, lessThanOrEqualTo, multiply, numberExpression, subtractMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.beans.Observable
addListener, removeListenerMethods inherited from interface javafx.beans.value.ObservableValue
addListener, getValue, removeListenerMethods inherited from interface javafx.beans.property.ReadOnlyProperty
getBean, getNameMethods inherited from interface javafx.beans.value.WritableValue
getValue
-
Constructor Details
-
SynchronizedFloatProperty
public SynchronizedFloatProperty() -
SynchronizedFloatProperty
public SynchronizedFloatProperty(float initialValue) -
SynchronizedFloatProperty
-
SynchronizedFloatProperty
-
-
Method Details
-
setAndWait
Sets this property's state to "waiting" then usesExecutionUtils.executeWhen(Observable, Runnable, boolean, Supplier, boolean)to "awake" the property when the given observable changes. Just like JavaFX properties if the new value is the same as the current value the method returns and does nothing.- Specified by:
setAndWaitin interfaceSynchronizedProperty<Number>- Parameters:
value- the new value of the propertyobservable- the observable to wait for
-
isWaiting
public boolean isWaiting()- Specified by:
isWaitingin interfaceSynchronizedProperty<Number>- Returns:
- whether this property is in waiting state
-
waiting
- Specified by:
waitingin interfaceSynchronizedProperty<Number>- Returns:
- the waiting state property as a read only property
-
awake
public void awake()Awakes the property by settingSynchronizedProperty.waiting()to false. This method should never be invoked by the user, the awakening is automatically managed by the property. If for some reason the property stays in waiting state you are probably doing something wrong.- Specified by:
awakein interfaceSynchronizedProperty<Number>
-
fireValueChangedEvent
protected void fireValueChangedEvent()Overridden to not fire a change event ifwaiting()is true.- Overrides:
fireValueChangedEventin classFloatPropertyBase
-
bind
Creates a unidirectional bindings with the given observable.The binding is created using the new
If the property is already bound it is automatically unbound before bindings to the new observable.BindingManagermechanism.- Specified by:
bindin interfaceProperty<Number>- Overrides:
bindin classFloatPropertyBase- Throws:
IllegalArgumentException- if the given observable is the property itself- See Also:
-
bindBidirectional
Creates a bidirectional bindings between this property and the given property.The binding is created using the new
If the property is already bound unidirectionally it is automatically unbound.BiBindingManagermechanism.If the property is already bound bidirectionally it won't be automatically unbound, just like JavaFX, this way you can have multiple bidirectional bindings
- Specified by:
bindBidirectionalin interfaceProperty<Number>- Overrides:
bindBidirectionalin classFloatProperty- Throws:
IllegalArgumentException- if the given observable is the property itself- See Also:
-
unbind
public void unbind()Overridden to callBindingManager.unbind(ObservableValue).- Specified by:
unbindin interfaceProperty<Number>- Overrides:
unbindin classFloatPropertyBase
-
unbindBidirectional
Overridden to callBiBindingManager.unbind(ObservableValue, ObservableValue).- Specified by:
unbindBidirectionalin interfaceProperty<Number>- Overrides:
unbindBidirectionalin classFloatProperty
-
clearBidirectional
public void clearBidirectional()Delegate method forBiBindingManager.disposeFor(ObservableValue). -
isBound
public boolean isBound()Overridden to check theBindingManager.isBound(ObservableValue)andBindingManager.isIgnoreBinding(ObservableValue).- Specified by:
isBoundin interfaceProperty<Number>- Overrides:
isBoundin classFloatPropertyBase- Returns:
- true only if `BindingManager.isBound()` is true and `isIgnoreBound()` is false
-