Module io.github.mmm.ui.fx.core
Package io.github.mmm.ui.fx.widget
Class FxActiveValidatableWidget<W extends javafx.scene.layout.Region,V>
- java.lang.Object
-
- io.github.mmm.ui.api.widget.AbstractUiWidget
-
- io.github.mmm.ui.spi.widget.AbstractUiNativeWidget
-
- io.github.mmm.ui.spi.widget.AbstractUiNativeWidgetWrapper<W>
-
- io.github.mmm.ui.fx.widget.FxWidget<W>
-
- io.github.mmm.ui.fx.widget.FxWidgetStyleable<W>
-
- io.github.mmm.ui.fx.widget.FxWidgetNode<W>
-
- io.github.mmm.ui.fx.widget.FxActiveWidget<W>
-
- io.github.mmm.ui.fx.widget.FxActiveValidatableWidget<W,V>
-
- Type Parameters:
W- type ofJavaFx widget.V- type ofvalue.
- All Implemented Interfaces:
EventSource<UiEvent,UiEventListener>,AttributeReadEnabled,AttributeReadId,AttributeReadValid,AttributeReadValue<V>,AttributeReadVisible,AttributeWriteEnabled,AttributeWriteId,AttributeWriteReadOnly,AttributeWriteTooltip,AttributeWriteValidationFailure,AttributeWriteValue<V>,AttributeWriteValueForUser<V>,AttributeWriteVisible,UiActiveWidget,UiNativeWidget,UiWidget,UiValidatableWidget<V>,UiValuedWidget<V>,UiNativeWidgetWrapper<W>
- Direct Known Subclasses:
FxDataTable,FxInput
public abstract class FxActiveValidatableWidget<W extends javafx.scene.layout.Region,V> extends FxActiveWidget<W> implements UiValidatableWidget<V>
Implementation ofUiInputfor JavaFx.- Since:
- 1.0.0
-
-
Field Summary
-
Fields inherited from class io.github.mmm.ui.fx.widget.FxWidget
CLASS_INVALID, CLASS_READ_ONLY, widget
-
Fields inherited from interface io.github.mmm.ui.api.attribute.AttributeWriteValidationFailure
STYLE_INVALID
-
Fields inherited from interface io.github.mmm.ui.api.widget.UiActiveWidget
ACCESS_KEY_NONE
-
Fields inherited from interface io.github.mmm.ui.api.widget.value.UiValidatableWidget
STYLE_MANDATORY
-
-
Constructor Summary
Constructors Constructor Description FxActiveValidatableWidget(W widget)The constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voiddoSetValidationFailure(String error)Called fromAttributeWriteValidationFailure.setValidationFailure(String)if the failure actually changed.longgetModificationTimestamp()VgetOriginalValue()Validator<? super V>getValidator()protected voidonFocusChanged(boolean focusGain)protected voidonValueChanged(boolean programmatic)Called fromFxWidget.onValueChange(ObservableValue, Object, Object)if triggered by end-user.protected voidsetMandatory(boolean mandatory)voidsetOriginalValue(V originalValue)voidsetValidator(Validator<? super V> validator)voidsetValue(V value, boolean forUser)protected abstract voidsetValueNative(V value)-
Methods inherited from class io.github.mmm.ui.fx.widget.FxActiveWidget
getAccessKey, isFocused, registerFocusChangeHandler, registerHandlers, setAccessKey, setFocused, setParent
-
Methods inherited from class io.github.mmm.ui.fx.widget.FxWidgetNode
getTopWidget, setEnabledNative, setIdNative, setReadOnlyNative, setTooltipNative, setVisibleNative
-
Methods inherited from class io.github.mmm.ui.fx.widget.FxWidgetStyleable
createStyles
-
Methods inherited from class io.github.mmm.ui.fx.widget.FxWidget
getTopNode, getWidget, onAction, onClose, onFocusChange, onValueChange, setTooltip, setWidget
-
Methods inherited from class io.github.mmm.ui.spi.widget.AbstractUiNativeWidgetWrapper
createDefaultStyles, getId, getStyles, getTooltip, onStylesChanged, setId, setTooltip
-
Methods inherited from class io.github.mmm.ui.spi.widget.AbstractUiNativeWidget
addListener, dispose, doDispose, doGetEnabledState, doGetVisibleState, doSetEnabledState, doSetEnabledState, doSetVisibleState, doSetVisibleState, ensureHandlers, fireEvent, getEventAdapter, getParent, getProgrammaticEventType, getReadOnlyFixed, getValidationFailure, hasListeners, isDisposed, isEnabled, isInitiallyVisible, isReadOnly, isValid, isVisible, isVisibleWithoutRoot, removeListener, requireNotDisposed, setEnabled, setProgrammaticEventType, setReadOnly, setReadOnlyFixed, setValidationFailure, setVisible, unwrap, validateDown
-
Methods inherited from class io.github.mmm.ui.api.widget.AbstractUiWidget
isEmpty, setParent, unwrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.github.mmm.ui.api.attribute.AttributeReadId
getId
-
Methods inherited from interface io.github.mmm.ui.api.attribute.AttributeWriteId
setId
-
Methods inherited from interface io.github.mmm.ui.api.attribute.AttributeWriteTooltip
getTooltip, setTooltip
-
Methods inherited from interface io.github.mmm.ui.api.attribute.AttributeWriteValidationFailure
getValidationFailure, setValidationFailure, setValidationFailure
-
Methods inherited from interface io.github.mmm.event.EventSource
addListener, addListener, addWeakListener, removeListener
-
Methods inherited from interface io.github.mmm.ui.api.widget.value.UiValidatableWidget
getValue, getValueOrThrow, isValid, reset, setValue, setValueForUser
-
Methods inherited from interface io.github.mmm.ui.api.widget.UiWidget
cast, dispose, getParent, getReadOnlyFixed, getStyles, isDisposed, isEnabled, isEnabled, isFocused, isModified, isReadOnly, isVisible, isVisible, setEnabled, setEnabled, setFocused, setReadOnly, setReadOnlyFixed, setVisible, setVisible, validate, validate, validate, validateDown, validateUp
-
-
-
-
Constructor Detail
-
FxActiveValidatableWidget
public FxActiveValidatableWidget(W widget)
The constructor.- Parameters:
widget- theJavaFx widget.
-
-
Method Detail
-
getOriginalValue
public V getOriginalValue()
- Specified by:
getOriginalValuein interfaceUiValidatableWidget<W extends javafx.scene.layout.Region>- Returns:
- the original value since it was last set via
UiValidatableWidget.setOriginalValue(Object)or most probably indirectly viaUiValidatableWidget.setValue(Object). If this widget ismodified,UiValidatableWidget.getValue()will return the current value as entered by the end-user while this method will still return the original value.
ATTENTION: The original value shall never be modified to avoid undesired side effects. Various features such asUiValidatableWidget.reset()rely on this fact. - See Also:
UiValidatableWidget.reset()
-
setOriginalValue
public void setOriginalValue(V originalValue)
- Specified by:
setOriginalValuein interfaceUiValidatableWidget<W extends javafx.scene.layout.Region>- Parameters:
originalValue- the new value ofUiValidatableWidget.getOriginalValue().
-
doSetValidationFailure
protected void doSetValidationFailure(String error)
Description copied from class:AbstractUiNativeWidgetCalled fromAttributeWriteValidationFailure.setValidationFailure(String)if the failure actually changed. Do not call manually.- Overrides:
doSetValidationFailurein classAbstractUiNativeWidget- Parameters:
error- the newvalidation failure. Will benullif valid.
-
onFocusChanged
protected void onFocusChanged(boolean focusGain)
- Overrides:
onFocusChangedin classFxWidget<W extends javafx.scene.layout.Region>- Parameters:
focusGain-trueif the focus was gained,falseotherwise (focus has been lost).
-
getValidator
public Validator<? super V> getValidator()
- Specified by:
getValidatorin interfaceUiValidatableWidget<W extends javafx.scene.layout.Region>- Returns:
- the
Validatorto validate thevalueof this input.
-
setValidator
public void setValidator(Validator<? super V> validator)
- Specified by:
setValidatorin interfaceUiValidatableWidget<W extends javafx.scene.layout.Region>- Parameters:
validator- the newvalidator. To add multiple validators, simply useComposedValidatororValidator.append(Validator...).
-
setMandatory
protected void setMandatory(boolean mandatory)
- Parameters:
mandatory- the new mandatory (required) flag.
-
getModificationTimestamp
public long getModificationTimestamp()
- Specified by:
getModificationTimestampin interfaceUiWidget- Returns:
- the timestamp of the last change to this widget. Will be
-1if it notmodified.
-
setValue
public void setValue(V value, boolean forUser)
- Specified by:
setValuein interfaceAttributeWriteValueForUser<W extends javafx.scene.layout.Region>- Specified by:
setValuein interfaceUiValidatableWidget<W extends javafx.scene.layout.Region>- Parameters:
value- the newvalue.forUser- -trueforUiValidatableWidget.setValueForUser(Object)andfalseforUiValidatableWidget.setValue(Object).
-
setValueNative
protected abstract void setValueNative(V value)
- Parameters:
value- the newvalueto set in the native widget.
-
onValueChanged
protected void onValueChanged(boolean programmatic)
Description copied from class:FxWidgetCalled fromFxWidget.onValueChange(ObservableValue, Object, Object)if triggered by end-user.- Overrides:
onValueChangedin classFxWidget<W extends javafx.scene.layout.Region>- Parameters:
programmatic- - seeUiEvent.isProgrammatic().
-
-