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:
- Serialized Form
-
-
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 protectedAbstractTextField()Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RegistrationaddBlurListener(FieldEvents.BlurListener listener)Adds aFieldEvents.BlurListenerto this component, which gets fired when this component loses keyboard focus.RegistrationaddFocusListener(FieldEvents.FocusListener listener)Adds aFieldEvents.FocusListenerto this component, which gets fired when this component receives keyboard focus.protected voiddoSetValue(String value)Sets the value of this field.intgetCursorPosition()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 theAbstractComponent.readDesign(Element, DesignContext)andAbstractComponent.writeDesign(Element, DesignContext)methods.StringgetEmptyValue()Returns the value that represents an empty value.intgetMaxLength()Returns the maximum number of characters in the field.StringgetPlaceholder()Returns the current placeholder text.protected AbstractTextFieldStategetState()Returns the shared state bean with information to be sent from the server to the client.protected AbstractTextFieldStategetState(boolean markAsDirty)Returns the shared state for this connector.StringgetValue()Returns the current value of this object.ValueChangeModegetValueChangeMode()Returns the currently setValueChangeMode.intgetValueChangeTimeout()Returns the currently set timeout, in milliseconds, for how oftenHasValue.ValueChangeEvents are triggered if the currentValueChangeModeis set to eitherValueChangeMode.LAZYorValueChangeMode.TIMEOUT.voidreadDesign(org.jsoup.nodes.Element design, DesignContext designContext)Reads the component state from the given design.voidselectAll()Selects all text in the field.voidsetCursorPosition(int pos)Sets the cursor position in the field.voidsetMaxLength(int maxLength)Sets the maximum number of characters in the field.voidsetPlaceholder(String placeholder)Sets the placeholder text.voidsetSelection(int start, int length)Sets the range of text to be selected.voidsetValue(String value)Sets the value of this text field.voidsetValueChangeMode(ValueChangeMode mode)Sets the mode how the TextField triggersHasValue.ValueChangeEvents.voidsetValueChangeTimeout(int timeout)Sets how oftenHasValue.ValueChangeEvents are triggered when theValueChangeModeis set to eitherValueChangeMode.LAZYorValueChangeMode.TIMEOUT.voidwriteDesign(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 togetValue(), fires aHasValue.ValueChangeEvent. ThrowsNullPointerExceptionif the value is null.- Specified by:
setValuein interfaceHasValue<String>- Overrides:
setValuein classAbstractField<String>- Parameters:
value- the new value, notnull- Throws:
NullPointerException- ifvalueisnull
-
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(String)
-
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 set- Since:
- 8.0
-
getValue
public String getValue()
Description copied from interface:HasValueReturns 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 aFieldEvents.FocusListenerto this component, which gets fired when this component receives keyboard focus.- Specified by:
addFocusListenerin interfaceFieldEvents.FocusNotifier- Parameters:
listener- the focus listener- Returns:
- a registration for the listener
- See Also:
Registration
-
addBlurListener
public Registration addBlurListener(FieldEvents.BlurListener listener)
Adds aFieldEvents.BlurListenerto this component, which gets fired when this component loses keyboard focus.- Specified by:
addBlurListenerin interfaceFieldEvents.BlurNotifier- Parameters:
listener- the blur listener- Returns:
- a registration for the listener
- See Also:
Registration
-
setValueChangeMode
public void setValueChangeMode(ValueChangeMode mode)
Description copied from interface:HasValueChangeModeSets the mode how the TextField triggersHasValue.ValueChangeEvents.- Specified by:
setValueChangeModein interfaceHasValueChangeMode- Parameters:
mode- the new mode- See Also:
ValueChangeMode
-
getValueChangeMode
public ValueChangeMode getValueChangeMode()
Description copied from interface:HasValueChangeModeReturns the currently setValueChangeMode.- Specified by:
getValueChangeModein interfaceHasValueChangeMode- Returns:
- the mode used to trigger
HasValue.ValueChangeEvents. - See Also:
ValueChangeMode
-
setValueChangeTimeout
public void setValueChangeTimeout(int timeout)
Description copied from interface:HasValueChangeModeSets how oftenHasValue.ValueChangeEvents are triggered when theValueChangeModeis set to eitherValueChangeMode.LAZYorValueChangeMode.TIMEOUT.- Specified by:
setValueChangeTimeoutin interfaceHasValueChangeMode- Parameters:
timeout- timeout in milliseconds, must be greater or equal to 0- See Also:
ValueChangeMode
-
getValueChangeTimeout
public int getValueChangeTimeout()
Description copied from interface:HasValueChangeModeReturns the currently set timeout, in milliseconds, for how oftenHasValue.ValueChangeEvents are triggered if the currentValueChangeModeis set to eitherValueChangeMode.LAZYorValueChangeMode.TIMEOUT.- Specified by:
getValueChangeTimeoutin interfaceHasValueChangeMode- Returns:
- the timeout in milliseconds of how often
HasValue.ValueChangeEvents are triggered.
-
readDesign
public void readDesign(org.jsoup.nodes.Element design, DesignContext designContext)Description copied from interface:ComponentReads 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:
readDesignin interfaceComponent- Overrides:
readDesignin 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:AbstractComponentReturns 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:
getStatein classAbstractField<String>- Returns:
- updated component shared state
-
getState
protected AbstractTextFieldState getState(boolean markAsDirty)
Description copied from class:AbstractClientConnectorReturns the shared state for this connector.- Overrides:
getStatein classAbstractField<String>- Parameters:
markAsDirty- true if the connector should automatically be marked dirty, false otherwise- Returns:
- The shared state for this connector. Never null.
- See Also:
AbstractClientConnector.getState()
-
doSetValue
protected void doSetValue(String value)
Description copied from class:AbstractFieldSets the value of this field. May do sanitization or throwIllegalArgumentExceptionif the value is invalid. Typically saves the value to shared state.- Specified by:
doSetValuein 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:ComponentWrites 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:
writeDesignin interfaceComponent- Overrides:
writeDesignin 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:AbstractComponentReturns a collection of attributes that should not be handled by the basic implementation of theAbstractComponent.readDesign(Element, DesignContext)andAbstractComponent.writeDesign(Element, DesignContext)methods. Typically these are handled in a custom way in the overridden versions of the above methods- Overrides:
getCustomAttributesin classAbstractField<String>- Returns:
- the collection of attributes that are not handled by the basic implementation
-
getEmptyValue
public String getEmptyValue()
Description copied from interface:HasValueReturns the value that represents an empty value.By default
HasValueis expected to supportnullas empty values. Specific implementations might not support this.- Specified by:
getEmptyValuein interfaceHasValue<String>- Returns:
- empty value
- See Also:
Binder#bind(HasValue, ValueProvider, Setter)
-
-