com.vaadin.flow.component.timepicker.
Class TimePicker
- java.lang.Object
-
- com.vaadin.flow.component.Component
-
- com.vaadin.flow.component.AbstractField<C,T>
-
- com.vaadin.flow.component.AbstractSinglePropertyField<R,T>
-
- com.vaadin.flow.component.timepicker.GeneratedVaadinTimePicker<TimePicker,LocalTime>
-
- com.vaadin.flow.component.timepicker.TimePicker
-
All Implemented Interfaces:
AttachNotifier, BlurNotifier<TimePicker>, DetachNotifier, Focusable<TimePicker>, FocusNotifier<TimePicker>, HasElement, HasEnabled, HasHelper, HasSize, HasStyle, HasValidation, HasValue<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>,LocalTime>, HasValueAndElement<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>,LocalTime>, Serializable
@JsModule(value="./timepickerConnector.js") public class TimePicker extends GeneratedVaadinTimePicker<TimePicker,LocalTime> implements HasSize, HasValidation, HasEnabled, HasHelper
An input component for selecting time of day, based on
vaadin-time-picker
web component.Author:
Vaadin Ltd
See Also:
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.vaadin.flow.component.timepicker.GeneratedVaadinTimePicker
GeneratedVaadinTimePicker.InvalidChangeEvent<R extends GeneratedVaadinTimePicker<R,?>>
-
Nested classes/interfaces inherited from class com.vaadin.flow.component.AbstractField
AbstractField.ComponentValueChangeEvent<C extends Component,V>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.BlurNotifier
BlurNotifier.BlurEvent<C extends Component>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.FocusNotifier
FocusNotifier.FocusEvent<C extends Component>
-
Nested classes/interfaces inherited from interface com.vaadin.flow.component.HasValue
HasValue.ValueChangeEvent<V>, HasValue.ValueChangeListener<E extends HasValue.ValueChangeEvent<?>>
-
-
Constructor Summary
Constructors Constructor and Description TimePicker()
Default constructor.
TimePicker(HasValue.ValueChangeListener<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>> listener)
Convenience constructor to create a time picker with a
ValueChangeListener
.TimePicker(LocalTime time)
Convenience constructor to create a time picker with a pre-selected time.
TimePicker(String label)
Convenience constructor to create a time picker with a label.
TimePicker(String label, LocalTime time)
Convenience constructor to create a time picker with a pre-selected time and a label.
-
Method Summary
All Methods Modifier and Type Method and Description Registration
addInvalidChangeListener(ComponentEventListener<GeneratedVaadinTimePicker.InvalidChangeEvent<TimePicker>> listener)
Adds a listener for
invalid-changed
events fired by the webcomponent.String
getErrorMessage()
Gets the current error message from the time picker.
String
getLabel()
Gets the label of the time picker.
Locale
getLocale()
Gets the Locale for this time picker.
String
getMax()
Deprecated.
usegetMaxTime()
instead.LocalTime
getMaxTime()
Gets the maximum time in the time picker.
String
getMin()
Deprecated.
usegetMinTime()
instead.LocalTime
getMinTime()
Gets the minimum time in the time picker.
String
getPlaceholder()
Gets the placeholder of the time picker.
Duration
getStep()
Gets the step of the time picker.
static Stream<Locale>
getSupportedAvailableLocales()
Returns a stream of all the available locales that are supported by the time picker component.
boolean
isAutoOpen()
Gets whether dropdown will open automatically or not.
boolean
isClearButtonVisible()
Gets whether this time picker displays a clear button when it has value.
boolean
isInvalid()
Gets the validity of the time picker output.
boolean
isRequired()
Determines whether the time picker is marked as input required.
protected void
onAttach(AttachEvent attachEvent)
Called when the component is attached to a UI.
void
setAutoOpen(boolean autoOpen)
Enables or disables the dropdown opening automatically.
void
setClearButtonVisible(boolean clearButtonVisible)
Sets displaying a clear button in the time picker when it has value.
void
setErrorMessage(String errorMessage)
Description copied from corresponding location in WebComponent:
void
setInvalid(boolean invalid)
Description copied from corresponding location in WebComponent:
void
setLabel(String label)
Description copied from corresponding location in WebComponent:
void
setLocale(Locale locale)
Set the Locale for the Time Picker.
void
setMax(String max)
Deprecated.
usesetMaxTime(LocalTime)
instead.void
setMaxTime(LocalTime max)
Sets the maximum time in the time picker.
void
setMin(String min)
Deprecated.
usesetMinTime(LocalTime)
instead.void
setMinTime(LocalTime min)
Sets the minimum time in the time picker.
void
setPlaceholder(String placeholder)
Description copied from corresponding location in WebComponent:
void
setRequired(boolean required)
Description copied from corresponding location in WebComponent:
void
setRequiredIndicatorVisible(boolean requiredIndicatorVisible)
Sets the required indicator visible or not.
void
setStep(Duration step)
Sets the
step
property of the time picker using duration.void
setValue(LocalTime value)
Sets the selected time value of the component.
protected void
validate()
Performs server-side validation of the current value.
-
Methods inherited from class com.vaadin.flow.component.timepicker.GeneratedVaadinTimePicker
checkValidity, getErrorMessageString, getI18nJsonObject, getLabelString, getMaxString, getMinString, getNameString, getPatternString, getPlaceholderString, getStepDouble, isAutofocusBoolean, isClearButtonVisibleBoolean, isDisabledBoolean, isInvalidBoolean, isPreventInvalidInputBoolean, isReadonlyBoolean, isRequiredBoolean, setAutofocus, setDisabled, setI18n, setName, setPattern, setPreventInvalidInput, setReadonly, setStep
-
Methods inherited from class com.vaadin.flow.component.AbstractSinglePropertyField
getSynchronizationRegistration, hasValidValue, setPresentationValue, setSynchronizedEvent
-
Methods inherited from class com.vaadin.flow.component.AbstractField
addValueChangeListener, getEmptyValue, getValue, isEmpty, setModelValue, valueEquals
-
Methods inherited from class com.vaadin.flow.component.Component
addListener, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getParent, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onDetach, onEnabledStateChanged, set, setElement, setId, setVisible
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.vaadin.flow.component.HasSize
getCssSize, getHeight, getHeightUnit, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, getWidthUnit, setHeight, setHeight, setHeightFull, setMaxHeight, setMaxHeight, setMaxWidth, setMaxWidth, setMinHeight, setMinHeight, setMinWidth, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull
-
Methods inherited from interface com.vaadin.flow.component.HasEnabled
isEnabled, setEnabled
-
Methods inherited from interface com.vaadin.flow.component.HasHelper
getHelperComponent, getHelperText, setHelperComponent, setHelperText
-
Methods inherited from interface com.vaadin.flow.component.HasElement
getElement
-
Methods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
-
Methods inherited from interface com.vaadin.flow.component.Focusable
addFocusShortcut, blur, focus, getTabIndex, setTabIndex
-
Methods inherited from interface com.vaadin.flow.component.BlurNotifier
addBlurListener
-
Methods inherited from interface com.vaadin.flow.component.FocusNotifier
addFocusListener
-
Methods inherited from interface com.vaadin.flow.component.HasValueAndElement
isReadOnly, isRequiredIndicatorVisible, setReadOnly
-
Methods inherited from interface com.vaadin.flow.component.HasValue
clear, getOptionalValue
-
Methods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListener
-
Methods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListener
-
-
-
-
Constructor Detail
-
TimePicker
public TimePicker()
Default constructor.
-
TimePicker
public TimePicker(LocalTime time)
Convenience constructor to create a time picker with a pre-selected time.
Parameters:
time
- the pre-selected time in the picker
-
TimePicker
public TimePicker(String label)
Convenience constructor to create a time picker with a label.
Parameters:
label
- the label describing the time pickerSee Also:
-
TimePicker
public TimePicker(String label, LocalTime time)
Convenience constructor to create a time picker with a pre-selected time and a label.
Parameters:
label
- the label describing the time pickertime
- the pre-selected time in the picker
-
TimePicker
public TimePicker(HasValue.ValueChangeListener<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>> listener)
Convenience constructor to create a time picker with a
ValueChangeListener
.Parameters:
listener
- the listener to receive value change eventsSee Also:
AbstractField.addValueChangeListener(HasValue.ValueChangeListener)
-
-
Method Detail
-
setLabel
public void setLabel(String label)
Description copied from class:
GeneratedVaadinTimePicker
Description copied from corresponding location in WebComponent:
The label for this element.
Overrides:
setLabel
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
label
- the String value to set
-
setValue
public void setValue(LocalTime value)
Sets the selected time value of the component. The value can be cleared by setting null.
The value will be truncated to millisecond precision, as that is the maximum that the time picker supports. This means that
AbstractField.getValue()
might return a different value than what was passed in.Specified by:
setValue
in interfaceHasValue<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>,LocalTime>
Overrides:
setValue
in classAbstractField<TimePicker,LocalTime>
Parameters:
value
- the LocalTime instance representing the selected time, or null
-
getLabel
public String getLabel()
Gets the label of the time picker.
Returns:
the
label
property of the time picker
-
setErrorMessage
public void setErrorMessage(String errorMessage)
Description copied from class:
GeneratedVaadinTimePicker
Description copied from corresponding location in WebComponent:
The error message to display when the input is invalid.
Specified by:
setErrorMessage
in interfaceHasValidation
Overrides:
setErrorMessage
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
errorMessage
- the String value to set
-
getErrorMessage
public String getErrorMessage()
Gets the current error message from the time picker.
Specified by:
getErrorMessage
in interfaceHasValidation
Returns:
the current error message
-
setInvalid
public void setInvalid(boolean invalid)
Description copied from class:
GeneratedVaadinTimePicker
Description copied from corresponding location in WebComponent:
Set to true if the value is invalid.
Specified by:
setInvalid
in interfaceHasValidation
Overrides:
setInvalid
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
invalid
- the boolean value to set
-
isInvalid
public boolean isInvalid()
Gets the validity of the time picker output.
return true, if the value is invalid.
Specified by:
isInvalid
in interfaceHasValidation
Returns:
the
validity
property from the time picker
-
setPlaceholder
public void setPlaceholder(String placeholder)
Description copied from class:
GeneratedVaadinTimePicker
Description copied from corresponding location in WebComponent:
A placeholder string in addition to the label.
Overrides:
setPlaceholder
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
placeholder
- the String value to set
-
getPlaceholder
public String getPlaceholder()
Gets the placeholder of the time picker.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
Returns:
the
placeholder
property of the time picker
-
setRequired
public void setRequired(boolean required)
Description copied from class:
GeneratedVaadinTimePicker
Description copied from corresponding location in WebComponent:
Set to true to mark the input as required.
Overrides:
setRequired
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
required
- the boolean value to set
-
setRequiredIndicatorVisible
public void setRequiredIndicatorVisible(boolean requiredIndicatorVisible)
Description copied from interface:
HasValue
Sets the required indicator visible or not.
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 whensetRequiredIndicatorVisible(true)
is called and re-enabled back onsetRequiredIndicatorVisible(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 ownsetRequired
method which should be called in case the client-side validation is required.Specified by:
setRequiredIndicatorVisible
in interfaceHasValue<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>,LocalTime>
Specified by:
setRequiredIndicatorVisible
in interfaceHasValueAndElement<AbstractField.ComponentValueChangeEvent<TimePicker,LocalTime>,LocalTime>
Parameters:
requiredIndicatorVisible
-true
to make the required indicator visible,false
if not
-
isRequired
public boolean isRequired()
Determines whether the time picker is marked as input required.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
Returns:
true
if the input is required,false
otherwise
-
setStep
public void setStep(Duration step)
Sets the
step
property of the time picker using duration. It specifies the intervals for the displayed items in the time picker dropdown and also the displayed time format.The set step needs to evenly divide a day or an hour and has to be larger than 0 milliseconds. By default, the format is
hh:mm
(same as *Duration.ofHours(1)
If the step is less than 60 seconds, the format will be changed to
hh:mm:ss
and it can be inhh:mm:ss.fff
format, when the step is less than 1 second.NOTE: If the step is less than 900 seconds, the dropdown is hidden.
NOTE: changing the step to a larger duration can cause a new
HasValue.ValueChangeEvent
to be fired if some parts (eg. seconds) is discarded from the value.Parameters:
step
- the step to set, notnull
and should divide a day or an hour evenly
-
getStep
public Duration getStep()
Gets the step of the time picker.
This property is not synchronized automatically from the client side, so the returned value may not be the same as in client side.
Returns:
the
step
property from the picker, unit seconds
-
addInvalidChangeListener
public Registration addInvalidChangeListener(ComponentEventListener<GeneratedVaadinTimePicker.InvalidChangeEvent<TimePicker>> listener)
Description copied from class:
GeneratedVaadinTimePicker
Adds a listener for
invalid-changed
events fired by the webcomponent.Overrides:
addInvalidChangeListener
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
listener
- the listenerReturns:
a
Registration
for removing the event listener
-
validate
protected void validate()
Performs server-side validation of the current value. This is needed because it is possible to circumvent the client-side validation constraints using browser development tools.
Overrides:
validate
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
-
onAttach
protected void onAttach(AttachEvent attachEvent)
Description copied from class:
Component
Called when the component is attached to a UI.
The default implementation does nothing.
This method is invoked before the
AttachEvent
is fired for the component.
-
setLocale
public void setLocale(Locale locale)
Set the Locale for the Time Picker. The displayed time will be formatted by the browser using the given locale.
By default, the locale is
null
until the component is attached to an UI, and then locale is set toUI.getLocale()
, unless a locale has been explicitly set before that.The time formatting is done in the browser using the Date.toLocaleTimeString() function.
If for some reason the browser doesn't support the given locale, the en-US locale is used.
NOTE: only the language + country/region codes are used. This means that the script and variant information is not used and supported. NOTE: timezone related data is not supported. NOTE: changing the locale does not cause a new
HasValue.ValueChangeEvent
to be fired.Parameters:
locale
- the locale set to the time picker, cannot be [@code null}
-
getLocale
public Locale getLocale()
Gets the Locale for this time picker.
By default, the locale is
null
until the component is attached to an UI, and then locale is set toUI.getLocale()
, unlesssetLocale(Locale)
has been explicitly called before that.
-
setMin
@Deprecated public void setMin(String min)
Deprecated. use
setMinTime(LocalTime)
instead.Sets the minimum time in the time picker. Times before that will be disabled in the popup.
Overrides:
setMin
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
min
- the minimum time that is allowed to be selected, ornull
to remove any minimum constraints
-
setMinTime
public void setMinTime(LocalTime min)
Sets the minimum time in the time picker. Times before that will be disabled in the popup.
Parameters:
min
- the minimum time that is allowed to be selected, ornull
to remove any minimum constraints
-
getMin
@Deprecated public String getMin()
Deprecated. use
getMinTime()
instead.Gets the minimum time in the time picker. Time before that will be disabled in the popup.
Returns:
the minimum time that is allowed to be selected, or
null
if there's no minimum
-
getMinTime
public LocalTime getMinTime()
Gets the minimum time in the time picker. Time before that will be disabled in the popup.
Returns:
the minimum time that is allowed to be selected, or
null
if there's no minimum
-
setMax
@Deprecated public void setMax(String max)
Deprecated. use
setMaxTime(LocalTime)
instead.Sets the maximum time in the time picker. Times after that will be disabled in the popup.
Overrides:
setMax
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
max
- the maximum time that is allowed to be selected, ornull
to remove any maximum constraints
-
setMaxTime
public void setMaxTime(LocalTime max)
Sets the maximum time in the time picker. Times after that will be disabled in the popup.
Parameters:
max
- the maximum time that is allowed to be selected, ornull
to remove any maximum constraints
-
getMax
@Deprecated public String getMax()
Deprecated. use
getMaxTime()
instead.Gets the maximum time in the time picker. Times after that will be disabled in the popup.
Returns:
the maximum time that is allowed to be selected, or
null
if there's no maximum
-
getMaxTime
public LocalTime getMaxTime()
Gets the maximum time in the time picker. Times after that will be disabled in the popup.
Returns:
the maximum time that is allowed to be selected, or
null
if there's no maximum
-
setClearButtonVisible
public void setClearButtonVisible(boolean clearButtonVisible)
Sets displaying a clear button in the time picker when it has value.
The clear button is an icon, which can be clicked to set the time picker value to
null
.Overrides:
setClearButtonVisible
in classGeneratedVaadinTimePicker<TimePicker,LocalTime>
Parameters:
clearButtonVisible
-true
to display the clear button,false
to hide it
-
isClearButtonVisible
public boolean isClearButtonVisible()
Gets whether this time picker displays a clear button when it has value.
Returns:
true
if this time picker displays a clear button,false
otherwiseSee Also:
-
setAutoOpen
public void setAutoOpen(boolean autoOpen)
Enables or disables the dropdown opening automatically. If
false
the dropdown is only opened when clicking the toggle button or pressing Up or Down arrow keys.Parameters:
autoOpen
-false
to prevent the dropdown from opening automatically
-
isAutoOpen
public boolean isAutoOpen()
Gets whether dropdown will open automatically or not.
Returns:
@{code true} if enabled,
false
otherwise
-
getSupportedAvailableLocales
public static Stream<Locale> getSupportedAvailableLocales()
Returns a stream of all the available locales that are supported by the time picker component.
This is a shorthand for
Locale.getAvailableLocales()
where all locales without theLocale.getLanguage()
have been filtered out, as the browser cannot localize the time for those.Returns:
a stream of the available locales that are supported by the time picker component
See Also:
setLocale(Locale)
,Locale.getAvailableLocales()
,Locale.getLanguage()
-
-