public class MaskedFieldImpl<V> extends AbstractField<JmixMaskedTextField,java.lang.String,V> implements MaskedField<V>, org.springframework.beans.factory.InitializingBean
MaskedField.ValueMode
TextInputField.CaseConversion, TextInputField.CaseConversionSupported, TextInputField.CursorPositionSupported, TextInputField.EnterPressEvent, TextInputField.EnterPressNotifier, TextInputField.HtmlNameSupported, TextInputField.MaxLengthLimited, TextInputField.TextChangeEvent, TextInputField.TextChangeEventMode, TextInputField.TextChangeNotifier, TextInputField.TextSelectionSupported, TextInputField.TrimSupported
HasValue.ValueChangeEvent<V>
Component.Alignment, Component.BelongToFrame, Component.Disposable, Component.Editable, Component.Focusable, Component.HasCaption, Component.HasDescription, Component.HasIcon, Component.HasXmlDescriptor, Component.Wrapper
HasContextHelp.ContextHelpIconClickEvent
Modifier and Type | Field and Description |
---|---|
protected DataAwareComponentsTools |
dataAwareComponentsTools |
protected io.jmix.core.metamodel.datatype.Datatype<V> |
datatype |
protected com.vaadin.shared.Registration |
enterShortcutRegistration |
protected java.util.Locale |
locale |
protected static java.util.List<java.lang.Character> |
MASK_SYMBOLS |
protected java.lang.String |
nullRepresentation |
protected static char |
PLACE_HOLDER |
editable, parentEditableChangeListener, validators, VALIDATORS_LIST_INITIAL_CAPACITY
internalValue, uiTestIdsSupport, valueBinding
alignment, applicationContext, component, contextHelpIconClickHandler, contextHelpIconClickListener, descriptionAsHtml, element, frame, htmlSanitizerEnabled, icon, ICON_STYLE, id, parent
NAME, TYPE_BIGDECIMAL, TYPE_DEFAULT, TYPE_DOUBLE, TYPE_INTEGER, TYPE_LONG, TYPE_STRING, TYPE_UUID
AUTO_SIZE, AUTO_SIZE_PX, FULL_SIZE
Constructor and Description |
---|
MaskedFieldImpl() |
Modifier and Type | Method and Description |
---|---|
io.jmix.core.common.event.Subscription |
addEnterPressListener(java.util.function.Consumer<TextInputField.EnterPressEvent> listener)
Adds a listener that is invoked when the user presses Enter.
|
void |
afterPropertiesSet() |
void |
commit()
Updates all changes since the previous commit to the data source.
|
protected V |
convertToModel(java.lang.String componentRawValue) |
protected java.lang.String |
convertToPresentation(V modelValue) |
protected JmixMaskedTextField |
createComponent() |
void |
discard()
Discards all changes since last commit.
|
void |
focus()
Sets focus to this component
|
protected java.lang.String |
getConversionErrorMessage() |
io.jmix.core.metamodel.datatype.Datatype<V> |
getDatatype() |
java.lang.String |
getMask() |
protected java.lang.String |
getNullRepresentation() |
java.lang.String |
getRawValue()
Returns a string representation of the value.
|
int |
getTabIndex()
Gets the tabulator index of the
HasTabIndex component. |
MaskedField.ValueMode |
getValueMode() |
protected void |
initComponent(JmixMaskedTextField component) |
protected void |
internalRemoveEnterPressListener(java.util.function.Consumer<TextInputField.EnterPressEvent> listener) |
boolean |
isBuffered() |
boolean |
isEmpty() |
boolean |
isModified()
Tests if the value stored in the object has been modified since it was
last updated from the data source.
|
boolean |
isSendNullRepresentation() |
void |
selectAll() |
void |
setBuffered(boolean buffered)
Sets the buffered mode.
|
void |
setCurrentAuthentication(io.jmix.core.security.CurrentAuthentication currentAuthentication) |
void |
setCursorPosition(int position)
Sets the cursor position in the field.
|
void |
setDataAwareComponentsTools(DataAwareComponentsTools dataAwareComponentsTools) |
void |
setDatatype(io.jmix.core.metamodel.datatype.Datatype<V> datatype)
Sets the given
datatype to the component. |
void |
setMask(java.lang.String mask) |
void |
setSelectionRange(int pos,
int length) |
void |
setSendNullRepresentation(boolean sendNullRepresentation) |
void |
setTabIndex(int tabIndex)
Sets the tabulator index of the
Focusable component. |
void |
setValueMode(MaskedField.ValueMode mode)
Sets ValueMode for component
|
protected void |
updateNullRepresentation() |
addValidator, attachValueChangeListener, getDatatypeConversionErrorMsg, getErrorMessage, getRequiredMessage, getValidators, isEditable, isRequired, isValid, removeValidator, setEditable, setEditableToComponent, setParent, setRequired, setRequiredMessage, setupComponentErrorProvider, triggerValidators, validate
addValueChangeListener, componentValueChanged, fieldValueEquals, getValue, getValueSource, setUiTestId, setUiTestIdsSupport, setValue, setValueSource, setValueToPresentation, valueBindingActivated, valueBindingConnected
addAttachListener, addDetachListener, addStyleName, assignDebugId, attached, detached, getAlignment, getCaption, getComponent, getComposition, getContextHelpIconClickHandler, getContextHelpText, getDebugId, getDescription, getEventHub, getFrame, getHeight, getHeightSizeUnit, getHtmlSanitizer, getIcon, getIconName, getIconResource, getId, getParent, getStyleName, getUiComponentProperties, getUiProperties, getWidth, getWidthSizeUnit, getXmlDescriptor, hasSubscriptions, hasValidationError, isAttached, isCaptionAsHtml, isContextHelpTextHtmlEnabled, isDescriptionAsHtml, isEnabled, isEnabledRecursive, isHtmlSanitizerEnabled, isResponsive, isVisible, isVisibleRecursive, onContextHelpIconClick, publish, removeStyleName, sanitize, setAlignment, setApplicationContext, setCaption, setCaptionAsHtml, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabled, setDebugId, setDescription, setDescriptionAsHtml, setEnabled, setFrame, setHeight, setHtmlSanitizerEnabled, setIcon, setIconFromSet, setId, setResponsive, setStyleName, setValidationError, setVisible, setWidth, setXmlDescriptor, unsubscribe, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getValueSource, setValueSource
addValueChangeListener, clear, getEmptyValue, getValue, setValue
isEditable, isEditableWithParent, setEditable
getFrame, setFrame
addStyleName, getAlignment, getHeight, getHeightSizeUnit, getId, getParent, getStyleName, getWidth, getWidthSizeUnit, isEnabled, isEnabledRecursive, isResponsive, isVisible, isVisibleRecursive, removeStyleName, setAlignment, setEnabled, setHeight, setHeightAuto, setHeightFull, setId, setParent, setResponsive, setSizeAuto, setSizeFull, setStyleName, setVisible, setWidth, setWidthAuto, setWidthFull, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
isValid, isValidateOnCommit, validate
getIcon, setIcon, setIconFromSet
getContextHelpIconClickHandler, getContextHelpText, isContextHelpTextHtmlEnabled, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabled
isCaptionAsHtml, setCaptionAsHtml
getCaption, setCaption
getDescription, setDescription
isDescriptionAsHtml, setDescriptionAsHtml
isHtmlSanitizerEnabled, setHtmlSanitizerEnabled
addValidator, addValidators, getValidators, removeValidator
getRequiredMessage, isRequired, setRequired, setRequiredMessage
isFocusable, setFocusable
protected static final char PLACE_HOLDER
protected static final java.util.List<java.lang.Character> MASK_SYMBOLS
protected com.vaadin.shared.Registration enterShortcutRegistration
protected java.lang.String nullRepresentation
protected io.jmix.core.metamodel.datatype.Datatype<V> datatype
protected java.util.Locale locale
protected DataAwareComponentsTools dataAwareComponentsTools
@Autowired public void setDataAwareComponentsTools(DataAwareComponentsTools dataAwareComponentsTools)
@Autowired public void setCurrentAuthentication(io.jmix.core.security.CurrentAuthentication currentAuthentication)
public void setMask(java.lang.String mask)
setMask
in interface MaskedField<V>
protected void updateNullRepresentation()
protected java.lang.String getNullRepresentation()
public java.lang.String getMask()
getMask
in interface MaskedField<V>
public void setValueMode(MaskedField.ValueMode mode)
MaskedField
MASKED - value contain mask literals CLEAR - value contain only user input.
setValueMode
in interface MaskedField<V>
mode
- value modepublic MaskedField.ValueMode getValueMode()
getValueMode
in interface MaskedField<V>
public boolean isSendNullRepresentation()
isSendNullRepresentation
in interface MaskedField<V>
public void setSendNullRepresentation(boolean sendNullRepresentation)
setSendNullRepresentation
in interface MaskedField<V>
public java.lang.String getRawValue()
MaskedField
getRawValue
in interface MaskedField<V>
@Nullable public io.jmix.core.metamodel.datatype.Datatype<V> getDatatype()
getDatatype
in interface HasDatatype<V>
public void setDatatype(io.jmix.core.metamodel.datatype.Datatype<V> datatype)
HasDatatype
datatype
to the component. Its value will be formatted according to this
datatype.setDatatype
in interface HasDatatype<V>
datatype
- Datatype
instanceprotected java.lang.String convertToPresentation(@Nullable V modelValue) throws ConversionException
convertToPresentation
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
ConversionException
@Nullable protected V convertToModel(@Nullable java.lang.String componentRawValue) throws ConversionException
convertToModel
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
ConversionException
protected java.lang.String getConversionErrorMessage()
protected JmixMaskedTextField createComponent()
public void afterPropertiesSet()
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
protected void initComponent(JmixMaskedTextField component)
public void setCursorPosition(int position)
TextInputField.CursorPositionSupported
setCursorPosition
in interface TextInputField.CursorPositionSupported
position
- new cursor positionpublic void selectAll()
selectAll
in interface TextInputField.TextSelectionSupported
public void setSelectionRange(int pos, int length)
setSelectionRange
in interface TextInputField.TextSelectionSupported
public io.jmix.core.common.event.Subscription addEnterPressListener(java.util.function.Consumer<TextInputField.EnterPressEvent> listener)
TextInputField.EnterPressNotifier
addEnterPressListener
in interface TextInputField.EnterPressNotifier
listener
- a listener to addSubscription
protected void internalRemoveEnterPressListener(java.util.function.Consumer<TextInputField.EnterPressEvent> listener)
public void focus()
Component.Focusable
focus
in interface Component.Focusable
public int getTabIndex()
Component.Focusable
HasTabIndex
component.getTabIndex
in interface Component.Focusable
HasTabIndex
componentpublic void setTabIndex(int tabIndex)
Component.Focusable
Focusable
component.
The tab index property is used to specify the order in which the
fields are focused when the user presses the Tab key. Components with
a defined tab index are focused sequentially first, and then the
components with no tab index.setTabIndex
in interface Component.Focusable
tabIndex
- tab indexpublic void commit()
Buffered
commit
in interface Buffered
commit
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
public void discard()
Buffered
discard
in interface Buffered
discard
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
public boolean isBuffered()
isBuffered
in interface Buffered
isBuffered
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
true
if buffered mode is on, false
otherwisepublic void setBuffered(boolean buffered)
Buffered
When in buffered mode, an internal buffer will be used to store changes
until Buffered.commit()
is called. Calling Buffered.discard()
will revert
the internal buffer to the value of the data source.
When in non-buffered mode both read and write operations will be done
directly on the data source. In this mode the Buffered.commit()
and
Buffered.discard()
methods serve no purpose.
setBuffered
in interface Buffered
setBuffered
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
buffered
- true
if buffered mode should be turned on, false
otherwisepublic boolean isModified()
Buffered
isModified
in interface Buffered
isModified
in class AbstractValueComponent<JmixMaskedTextField,java.lang.String,V>
true
if the value in the object has been modified
since the last data source update, false
if not.