com.vaadin.ui.
Class AbstractTextField
- java.lang.Object
-
- com.vaadin.server.AbstractClientConnector
-
- com.vaadin.ui.AbstractComponent
-
- com.vaadin.ui.AbstractField<String>
-
- com.vaadin.ui.AbstractTextField
-
All Implemented Interfaces:
HasValue<String>
,ContextClickEvent.ContextClickNotifier
,FieldEvents.BlurNotifier
,FieldEvents.FocusNotifier
,MethodEventSource
,ClientConnector
,Sizeable
,Connector
,Component
,Component.Focusable
,HasValueChangeMode
,Serializable
public abstract class AbstractTextField extends AbstractField<String> implements HasValueChangeMode, FieldEvents.FocusNotifier, FieldEvents.BlurNotifier
Abstract base class for text input components.
Since:
8.0
Author:
Vaadin Ltd.
See Also:
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.vaadin.server.ClientConnector
ClientConnector.AttachEvent, ClientConnector.AttachListener, ClientConnector.ConnectorErrorEvent, ClientConnector.DetachEvent, ClientConnector.DetachListener
-
Nested classes/interfaces inherited from interface com.vaadin.ui.Component
Component.ErrorEvent, Component.Event, Component.Focusable, Component.Listener
-
Nested classes/interfaces inherited from interface com.vaadin.data.HasValue
HasValue.ValueChangeEvent<V>, HasValue.ValueChangeListener<V>
-
Nested classes/interfaces inherited from interface com.vaadin.server.Sizeable
Sizeable.Unit
-
-
Field Summary
-
Fields inherited from class com.vaadin.ui.AbstractComponent
DESIGN_ATTR_PLAIN_TEXT
-
Fields inherited from interface com.vaadin.server.Sizeable
SIZE_UNDEFINED, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractTextField()
Creates a new instance.
-
Method Summary
All Methods Modifier and Type Method Description Registration
addBlurListener(FieldEvents.BlurListener listener)
Adds a
FieldEvents.BlurListener
to this component, which gets fired when this component loses keyboard focus.Registration
addFocusListener(FieldEvents.FocusListener listener)
Adds a
FieldEvents.FocusListener
to this component, which gets fired when this component receives keyboard focus.protected void
doSetValue(String value)
Sets the value of this field.
int
getCursorPosition()
Returns the last known cursor position of the field.
protected Collection<String>
getCustomAttributes()
Returns a collection of attributes that should not be handled by the basic implementation of the
AbstractComponent.readDesign(Element, DesignContext)
andAbstractComponent.writeDesign(Element, DesignContext)
methods.String
getEmptyValue()
Returns the value that represents an empty value.
int
getMaxLength()
Returns the maximum number of characters in the field.
String
getPlaceholder()
Returns the current placeholder text.
protected AbstractTextFieldState
getState()
Returns the shared state bean with information to be sent from the server to the client.
protected AbstractTextFieldState
getState(boolean markAsDirty)
Returns the shared state for this connector.
String
getValue()
Returns the current value of this object.
ValueChangeMode
getValueChangeMode()
Returns the currently set
ValueChangeMode
.int
getValueChangeTimeout()
Returns the currently set timeout, in milliseconds, for how often
HasValue.ValueChangeEvent
s are triggered if the currentValueChangeMode
is set to eitherValueChangeMode.LAZY
orValueChangeMode.TIMEOUT
.void
readDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Reads the component state from the given design.
void
selectAll()
Selects all text in the field.
void
setCursorPosition(int pos)
Sets the cursor position in the field.
void
setMaxLength(int maxLength)
Sets the maximum number of characters in the field.
void
setPlaceholder(String placeholder)
Sets the placeholder text.
void
setSelection(int start, int length)
Sets the range of text to be selected.
void
setValue(String value)
Sets the value of this text field.
void
setValueChangeMode(ValueChangeMode mode)
Sets the mode how the TextField triggers
HasValue.ValueChangeEvent
s.void
setValueChangeTimeout(int timeout)
Sets how often
HasValue.ValueChangeEvent
s are triggered when theValueChangeMode
is set to eitherValueChangeMode.LAZY
orValueChangeMode.TIMEOUT
.void
writeDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Writes the component state to the given design.
-
Methods inherited from class com.vaadin.ui.AbstractField
addValueChangeListener, createValueChange, focus, getTabIndex, isDifferentValue, isReadOnly, isRequiredIndicatorVisible, setReadOnly, setRequiredIndicatorVisible, setTabIndex, setValue
-
Methods inherited from class com.vaadin.ui.AbstractComponent
addContextClickListener, addListener, addShortcutListener, addStyleName, attach, beforeClientResponse, detach, findAncestor, fireComponentErrorEvent, fireComponentEvent, getActionManager, getCaption, getComponentError, getData, getDebugId, getDescription, getErrorMessage, getHeight, getHeightUnits, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getWidth, getWidthUnits, isCaptionAsHtml, isConnectorEnabled, isEnabled, isOrHasAncestor, isResponsive, isVisible, removeContextClickListener, removeListener, removeShortcutListener, removeStyleName, setCaption, setCaptionAsHtml, setComponentError, setData, setDebugId, setDescription, setDescription, setEnabled, setHeight, setHeight, setHeightFull, setHeightUndefined, setIcon, setId, setLocale, setParent, setPrimaryStyleName, setResponsive, setSizeFull, setSizeUndefined, setStyleName, setVisible, setWidth, setWidth, setWidthFull, setWidthUndefined
-
Methods inherited from class com.vaadin.server.AbstractClientConnector
addAttachListener, addDetachListener, addExtension, addListener, addListener, addListener, addListener, addListener, addListener, addMethodInvocationToQueue, createState, encodeState, equals, fireEvent, getAllChildrenIterable, getConnectorId, getErrorHandler, getExtensions, getListeners, getResource, getRpcManager, getRpcProxy, getSession, getStateType, getUI, handleConnectorRequest, hashCode, hasListeners, isAttached, isThis, markAsDirty, markAsDirtyRecursive, registerRpc, registerRpc, removeAttachListener, removeDetachListener, removeExtension, removeListener, removeListener, removeListener, removeListener, removeListener, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler, setResource, updateDiffstate
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.vaadin.server.ClientConnector
addAttachListener, addDetachListener, beforeClientResponse, detach, encodeState, getErrorHandler, getExtensions, getRpcManager, getStateType, handleConnectorRequest, isAttached, isConnectorEnabled, markAsDirty, markAsDirtyRecursive, removeAttachListener, removeDetachListener, removeExtension, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler
-
Methods inherited from interface com.vaadin.ui.Component
addListener, addStyleName, addStyleNames, attach, getCaption, getDescription, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getUI, isEnabled, isVisible, removeListener, removeStyleName, removeStyleNames, setCaption, setEnabled, setIcon, setId, setParent, setPrimaryStyleName, setStyleName, setStyleName, setVisible
-
Methods inherited from interface com.vaadin.shared.Connector
getConnectorId
-
Methods inherited from interface com.vaadin.data.HasValue
clear, getDefaultValidator, getOptionalValue, isEmpty
-
Methods inherited from interface com.vaadin.server.Sizeable
getHeight, getHeightUnits, getWidth, getWidthUnits, setHeight, setHeight, setHeightFull, setHeightUndefined, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull, setWidthUndefined
-
-
-
-
Method Detail
-
setValue
public void setValue(String value)
Sets the value of this text field. If the new value is not equal to
getValue()
, fires aHasValue.ValueChangeEvent
. ThrowsNullPointerException
if the value is null.Specified by:
setValue
in interfaceHasValue<String>
Overrides:
setValue
in classAbstractField<String>
Parameters:
value
- the new value, notnull
Throws:
NullPointerException
- ifvalue
isnull
-
getMaxLength
public int getMaxLength()
Returns the maximum number of characters in the field. Value -1 is considered unlimited. Terminal may however have some technical limits.
Returns:
the maxLength
-
setMaxLength
public void setMaxLength(int maxLength)
Sets the maximum number of characters in the field. Value -1 is considered unlimited. Terminal may however have some technical limits.
Parameters:
maxLength
- the maxLength to set
-
getPlaceholder
public String getPlaceholder()
Returns the current placeholder text.
Returns:
the placeholder text
See Also:
-
setPlaceholder
public void setPlaceholder(String placeholder)
Sets the placeholder text. The placeholder is text that is displayed when the field would otherwise be empty, to prompt the user for input.
Parameters:
placeholder
- the placeholder text to setSince:
8.0
-
getValue
public String getValue()
Description copied from interface:
HasValue
Returns the current value of this object.
Implementation note: the implementing class should document whether null values may be returned or not.
-
selectAll
public void selectAll()
Selects all text in the field.
As a side effect the field will become focused.
-
setSelection
public void setSelection(int start, int length)
Sets the range of text to be selected.
As a side effect the field will become focused.
Parameters:
start
- the position of the first character to be selectedlength
- the number of characters to be selected
-
setCursorPosition
public void setCursorPosition(int pos)
Sets the cursor position in the field. As a side effect the field will become focused.
Parameters:
pos
- the position for the cursor
-
getCursorPosition
public int getCursorPosition()
Returns the last known cursor position of the field.
Returns:
the last known cursor position
-
addFocusListener
public Registration addFocusListener(FieldEvents.FocusListener listener)
Adds a
FieldEvents.FocusListener
to this component, which gets fired when this component receives keyboard focus.Specified by:
addFocusListener
in interfaceFieldEvents.FocusNotifier
Parameters:
listener
- the focus listenerReturns:
a registration for the listener
See Also:
-
addBlurListener
public Registration addBlurListener(FieldEvents.BlurListener listener)
Adds a
FieldEvents.BlurListener
to this component, which gets fired when this component loses keyboard focus.Specified by:
addBlurListener
in interfaceFieldEvents.BlurNotifier
Parameters:
listener
- the blur listenerReturns:
a registration for the listener
See Also:
-
setValueChangeMode
public void setValueChangeMode(ValueChangeMode mode)
Description copied from interface:
HasValueChangeMode
Sets the mode how the TextField triggers
HasValue.ValueChangeEvent
s.Specified by:
setValueChangeMode
in interfaceHasValueChangeMode
Parameters:
mode
- the new modeSee Also:
-
getValueChangeMode
public ValueChangeMode getValueChangeMode()
Description copied from interface:
HasValueChangeMode
Returns the currently set
ValueChangeMode
.Specified by:
getValueChangeMode
in interfaceHasValueChangeMode
Returns:
the mode used to trigger
HasValue.ValueChangeEvent
s.See Also:
-
setValueChangeTimeout
public void setValueChangeTimeout(int timeout)
Description copied from interface:
HasValueChangeMode
Sets how often
HasValue.ValueChangeEvent
s are triggered when theValueChangeMode
is set to eitherValueChangeMode.LAZY
orValueChangeMode.TIMEOUT
.Specified by:
setValueChangeTimeout
in interfaceHasValueChangeMode
Parameters:
timeout
- timeout in milliseconds, must be greater or equal to 0See Also:
-
getValueChangeTimeout
public int getValueChangeTimeout()
Description copied from interface:
HasValueChangeMode
Returns the currently set timeout, in milliseconds, for how often
HasValue.ValueChangeEvent
s are triggered if the currentValueChangeMode
is set to eitherValueChangeMode.LAZY
orValueChangeMode.TIMEOUT
.Specified by:
getValueChangeTimeout
in interfaceHasValueChangeMode
Returns:
the timeout in milliseconds of how often
HasValue.ValueChangeEvent
s are triggered.
-
readDesign
public void readDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Description copied from interface:
Component
Reads the component state from the given design.
The component is responsible not only for updating its own state but also for ensuring that its children update their state based on the design.
It is assumed that the component is in its default state when this method is called. Reading should only take into consideration attributes specified in the design and not reset any unspecified attributes to their defaults.
This method must not modify the design.
Specified by:
readDesign
in interfaceComponent
Overrides:
readDesign
in classAbstractField<String>
Parameters:
design
- The element to obtain the state fromdesignContext
- The DesignContext instance used for parsing the design
-
getState
protected AbstractTextFieldState getState()
Description copied from class:
AbstractComponent
Returns the shared state bean with information to be sent from the server to the client. Subclasses should override this method and set any relevant fields of the state returned by super.getState().
Overrides:
getState
in classAbstractField<String>
Returns:
updated component shared state
-
getState
protected AbstractTextFieldState getState(boolean markAsDirty)
Description copied from class:
AbstractClientConnector
Returns the shared state for this connector.
Overrides:
getState
in classAbstractField<String>
Parameters:
markAsDirty
- true if the connector should automatically be marked dirty, false otherwiseReturns:
The shared state for this connector. Never null.
See Also:
-
doSetValue
protected void doSetValue(String value)
Description copied from class:
AbstractField
Sets the value of this field. May do sanitization or throw
IllegalArgumentException
if the value is invalid. Typically saves the value to shared state.Specified by:
doSetValue
in classAbstractField<String>
Parameters:
value
- the new value of the field
-
writeDesign
public void writeDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Description copied from interface:
Component
Writes the component state to the given design.
The component is responsible not only for writing its own state but also for ensuring that its children write their state to the design.
This method must not modify the component state.
Specified by:
writeDesign
in interfaceComponent
Overrides:
writeDesign
in classAbstractField<String>
Parameters:
design
- The element to write the component state to. Any previous attributes or child nodes are not cleared.designContext
- The DesignContext instance used for writing the design
-
getCustomAttributes
protected Collection<String> getCustomAttributes()
Description copied from class:
AbstractComponent
Returns a collection of attributes that should not be handled by the basic implementation of the
AbstractComponent.readDesign(Element, DesignContext)
andAbstractComponent.writeDesign(Element, DesignContext)
methods. Typically these are handled in a custom way in the overridden versions of the above methodsOverrides:
getCustomAttributes
in classAbstractField<String>
Returns:
the collection of attributes that are not handled by the basic implementation
-
getEmptyValue
public String getEmptyValue()
Description copied from interface:
HasValue
Returns the value that represents an empty value.
By default
HasValue
is expected to supportnull
as empty values. Specific implementations might not support this.Specified by:
getEmptyValue
in interfaceHasValue<String>
Returns:
empty value
See Also:
-
-