public abstract class AbstractNumberField<C extends AbstractNumberField<C,T>,T extends Number> extends GeneratedVaadinNumberField<C,T> implements HasSize, HasValidation, HasValueChangeMode, HasPrefixAndSuffix, InputNotifier, KeyNotifier, CompositionNotifier, HasAutocomplete, HasAutocapitalize, HasAutocorrect
vaadin-number-field
element and its subclasses.GeneratedVaadinTextField.ChangeEvent<R extends GeneratedVaadinTextField<R,?>>, GeneratedVaadinTextField.InvalidChangeEvent<R extends GeneratedVaadinTextField<R,?>>
AbstractField.ComponentValueChangeEvent<C extends Component,V>
BlurNotifier.BlurEvent<C extends Component>
FocusNotifier.FocusEvent<C extends Component>
HasValue.ValueChangeEvent<V>, HasValue.ValueChangeListener<E extends HasValue.ValueChangeEvent<?>>
DEFAULT_CHANGE_TIMEOUT
AUTOCOMPLETE_ATTRIBUTE
AUTOCAPITALIZE_ATTRIBUTE
AUTOCORRECT_ATTRIBUTE
Constructor and Description |
---|
AbstractNumberField(SerializableFunction<String,T> parser,
SerializableFunction<T,String> formatter,
double absoluteMin,
double absoluteMax)
Sets up the common logic for number fields.
|
Modifier and Type | Method and Description |
---|---|
T |
getEmptyValue()
Returns the value that represents an empty value.
|
String |
getErrorMessage()
Gets current error message from the component.
|
String |
getLabel()
String used for the label element.
|
protected double |
getMaxDouble()
Description copied from corresponding location in WebComponent:
|
protected double |
getMinDouble()
Description copied from corresponding location in WebComponent:
|
String |
getPlaceholder()
A hint to the user of what can be entered in the component.
|
protected double |
getStepDouble()
Description copied from corresponding location in WebComponent:
|
String |
getTitle()
The text usually displayed in a tooltip popup when the mouse is over the field.
|
T |
getValue()
Returns the current value of the number field.
|
ValueChangeMode |
getValueChangeMode()
Gets current value change mode of the component.
|
int |
getValueChangeTimeout()
Returns the currently set timeout, for how often
HasValue.ValueChangeEvent s are triggered when the ValueChangeMode is set
to ValueChangeMode.LAZY , or ValueChangeMode.TIMEOUT . |
boolean |
hasControls()
Gets whether the control buttons for increasing/decreasing
the value are visible.
|
boolean |
isAutofocus()
Specify that this control should have input focus when the page loads.
|
boolean |
isAutoselect()
Specifies if the field value gets automatically selected when the field
gains focus.
|
boolean |
isClearButtonVisible()
Gets the visibility state of the button which clears the number field.
|
boolean |
isInvalid()
Returns
true if component input is invalid, false
otherwise. |
void |
setAutofocus(boolean autofocus)
Description copied from corresponding location in WebComponent:
|
void |
setAutoselect(boolean autoselect)
Set to
true to always have the field value automatically
selected when the field gains focus, false otherwise. |
void |
setClearButtonVisible(boolean clearButtonVisible)
Set to
false to hide the clear button which clears the
number field. |
void |
setErrorMessage(String errorMessage)
Description copied from corresponding location in WebComponent:
|
void |
setHasControls(boolean hasControls)
Sets the visibility of the control buttons for increasing/decreasing
the value accordingly to the default or specified step.
|
void |
setInvalid(boolean invalid)
Description copied from corresponding location in WebComponent:
|
void |
setLabel(String label)
Description copied from corresponding location in WebComponent:
|
protected void |
setMax(double max)
Description copied from corresponding location in WebComponent:
|
protected void |
setMin(double min)
Description copied from corresponding location in WebComponent:
|
void |
setPlaceholder(String placeholder)
Description copied from corresponding location in WebComponent:
|
void |
setRequiredIndicatorVisible(boolean requiredIndicatorVisible)
Sets the required indicator visible or not.
|
protected void |
setStep(double step)
Description copied from corresponding location in WebComponent:
|
void |
setTitle(String title)
Description copied from corresponding location in WebComponent:
|
void |
setValue(T value)
Sets the value of this number field.
|
void |
setValueChangeMode(ValueChangeMode valueChangeMode)
Sets new value change mode for the component.
|
void |
setValueChangeTimeout(int valueChangeTimeout)
Sets how often
HasValue.ValueChangeEvent s are triggered when the
ValueChangeMode is set to ValueChangeMode.LAZY , or
ValueChangeMode.TIMEOUT . |
protected void |
validate()
Performs server-side validation of the current value.
|
checkValidity, hasControlsBoolean
addChangeListener, addInvalidChangeListener, addThemeVariants, addToInput, addToPrefix, addToSuffix, getAutocapitalizeString, getAutocompleteString, getAutocorrectString, getErrorMessageString, getLabelString, getListString, getMaxlengthDouble, getMinlengthDouble, getNameString, getPatternString, getPlaceholderString, getTitleString, isAutofocusBoolean, isAutoselectBoolean, isClearButtonVisibleBoolean, isDisabledBoolean, isInvalidBoolean, isPreventInvalidInputBoolean, isReadonlyBoolean, isRequiredBoolean, remove, removeAll, removeThemeVariants, setAutocapitalize, setAutocomplete, setAutocorrect, setDisabled, setList, setMaxlength, setMinlength, setName, setPattern, setPreventInvalidInput, setReadonly, setRequired
getSynchronizationRegistration, hasValidValue, setPresentationValue, setSynchronizedEvent
addValueChangeListener, isEmpty, setModelValue, valueEquals
addListener, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getLocale, getParent, getTranslation, getTranslation, getUI, hasListener, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, set, setElement, setId, setVisible
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getHeight, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, setHeight, setHeightFull, setMaxHeight, setMaxWidth, setMinHeight, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidthFull
getPrefixComponent, getSuffixComponent, setPrefixComponent, setSuffixComponent
addInputListener
addKeyDownListener, addKeyDownListener, addKeyPressListener, addKeyPressListener, addKeyUpListener, addKeyUpListener
addCompositionEndListener, addCompositionStartListener, addCompositionUpdateListener
getAutocomplete, setAutocomplete
getAutocapitalize, setAutocapitalize
isAutocorrect, setAutocorrect
getElement
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
addFocusShortcut, blur, focus, getTabIndex, setTabIndex
addBlurListener
addFocusListener
isEnabled, setEnabled
addThemeName, addThemeNames, getThemeName, getThemeNames, hasThemeName, removeThemeName, removeThemeNames, setThemeName, setThemeName
isReadOnly, isRequiredIndicatorVisible, setReadOnly
clear, getOptionalValue
addAttachListener
addDetachListener
public AbstractNumberField(SerializableFunction<String,T> parser, SerializableFunction<T,String> formatter, double absoluteMin, double absoluteMax)
parser
- function to parse the client-side value string into
server-side valueformatter
- function to format the server-side value into client-side
value stringabsoluteMin
- the smallest possible value of the number type of the field,
will be used as the default min value at server-sideabsoluteMax
- the largest possible value of the number type of the field,
will be used as the default max value at server-sidepublic ValueChangeMode getValueChangeMode()
The default value is ValueChangeMode.ON_CHANGE
.
getValueChangeMode
in interface HasValueChangeMode
null
if
the value is not synchronizedpublic void setValueChangeMode(ValueChangeMode valueChangeMode)
HasValueChangeMode
setValueChangeMode
in interface HasValueChangeMode
valueChangeMode
- new value change mode, or null
to disable the value
synchronizationpublic void setValueChangeTimeout(int valueChangeTimeout)
HasValueChangeMode
HasValue.ValueChangeEvent
s are triggered when the
ValueChangeMode is set to ValueChangeMode.LAZY
, or
ValueChangeMode.TIMEOUT
.
Implementations should use
ValueChangeMode.applyChangeTimeout(ValueChangeMode, int, DomListenerRegistration)
.
setValueChangeTimeout
in interface HasValueChangeMode
valueChangeTimeout
- the timeout in milliseconds of how often
HasValue.ValueChangeEvent
s are triggered.public int getValueChangeTimeout()
HasValueChangeMode
HasValue.ValueChangeEvent
s are triggered when the ValueChangeMode is set
to ValueChangeMode.LAZY
, or ValueChangeMode.TIMEOUT
.getValueChangeTimeout
in interface HasValueChangeMode
HasValue.ValueChangeEvent
s are triggered.public String getErrorMessage()
HasValidation
getErrorMessage
in interface HasValidation
public void setErrorMessage(String errorMessage)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
Error to show when the input value is invalid.
setErrorMessage
in interface HasValidation
setErrorMessage
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
errorMessage
- the String value to setpublic void setLabel(String label)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
String used for the label element.
setLabel
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
label
- the String value to setpublic String getLabel()
label
property from the webcomponentpublic void setPlaceholder(String placeholder)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
A hint to the user of what can be entered in the control.
setPlaceholder
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
placeholder
- the String value to setpublic void setHasControls(boolean hasControls)
setHasControls
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
hasControls
- true
if control buttons should be visible;
false
if those should be hiddensetStep(double)
public boolean hasControls()
true
if buttons are visible, false
otherwisesetStep(double)
public String getPlaceholder()
placeholder
property from the webcomponentpublic void setAutofocus(boolean autofocus)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
Specify that this control should have input focus when the page loads.
setAutofocus
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
autofocus
- the boolean value to setpublic boolean isAutofocus()
autofocus
property from the webcomponentpublic String getTitle()
title
property from the webcomponentpublic void setTitle(String title)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
The text usually displayed in a tooltip popup when the mouse is over the field.
setTitle
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
title
- the String value to setpublic boolean isAutoselect()
true
if autoselect is active, false
otherwisepublic void setAutoselect(boolean autoselect)
true
to always have the field value automatically
selected when the field gains focus, false
otherwise.setAutoselect
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
autoselect
- true
to set auto select on, false
otherwisepublic boolean isClearButtonVisible()
true
if the button is visible, false
otherwisepublic void setClearButtonVisible(boolean clearButtonVisible)
false
to hide the clear button which clears the
number field.setClearButtonVisible
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
clearButtonVisible
- true
to set the button visible,
false
otherwisepublic T getEmptyValue()
getEmptyValue
in interface HasValue<AbstractField.ComponentValueChangeEvent<C extends AbstractNumberField<C,T>,T extends Number>,T extends Number>
getEmptyValue
in class AbstractField<C extends AbstractNumberField<C,T>,T extends Number>
public void setValue(T value)
getValue()
, fires a value change event.setValue
in interface HasValue<AbstractField.ComponentValueChangeEvent<C extends AbstractNumberField<C,T>,T extends Number>,T extends Number>
setValue
in class AbstractField<C extends AbstractNumberField<C,T>,T extends Number>
value
- the new valuepublic T getValue()
null
.getValue
in interface HasValue<AbstractField.ComponentValueChangeEvent<C extends AbstractNumberField<C,T>,T extends Number>,T extends Number>
getValue
in class AbstractField<C extends AbstractNumberField<C,T>,T extends Number>
protected void setMin(double min)
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
The minimum value of the field.
setMin
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
min
- the double value to setprotected double getMinDouble()
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
The minimum value of the field.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
getMinDouble
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
min
property from the webcomponentprotected void setMax(double max)
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
The maximum value of the field.
setMax
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
max
- the double value to setprotected double getMaxDouble()
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
The maximum value of the field.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
getMaxDouble
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
max
property from the webcomponentprotected void setStep(double step)
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
Specifies the allowed number intervals of the field.
setStep
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
step
- the double value to setprotected double getStepDouble()
GeneratedVaadinNumberField
Description copied from corresponding location in WebComponent:
Specifies the allowed number intervals of the field.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
getStepDouble
in class GeneratedVaadinNumberField<C extends AbstractNumberField<C,T>,T extends Number>
step
property from the webcomponentpublic void setInvalid(boolean invalid)
GeneratedVaadinTextField
Description copied from corresponding location in WebComponent:
This property is set to true when the control value is invalid.
setInvalid
in interface HasValidation
setInvalid
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
invalid
- the boolean value to setpublic boolean isInvalid()
HasValidation
true
if component input is invalid, false
otherwise.isInvalid
in interface HasValidation
protected void validate()
validate
in class GeneratedVaadinTextField<C extends AbstractNumberField<C,T>,T extends Number>
public void setRequiredIndicatorVisible(boolean requiredIndicatorVisible)
HasValue
If set visible, it is visually indicated in the user interface.
The method is intended to be used with Binder
which does
server-side validation. In case HTML element has its own (client-side)
validation it should be disabled when
setRequiredIndicatorVisible(true)
is called and re-enabled
back on setRequiredIndicatorVisible(false)
. It's
responsibility of each component implementation to follow the contract so
that the method call doesn't do anything else than show/hide the
"required" indication. Usually components provide their own
setRequired
method which should be called in case the
client-side validation is required.
setRequiredIndicatorVisible
in interface HasValue<AbstractField.ComponentValueChangeEvent<C extends AbstractNumberField<C,T>,T extends Number>,T extends Number>
setRequiredIndicatorVisible
in interface HasValueAndElement<AbstractField.ComponentValueChangeEvent<C extends AbstractNumberField<C,T>,T extends Number>,T extends Number>
requiredIndicatorVisible
- true
to make the required indicator visible,
false
if notCopyright © 2020. All rights reserved.