Class ValuePickerBase<C extends ValuePickerBase<C,V>,V>

java.lang.Object
com.vaadin.flow.component.Component
com.vaadin.flow.component.AbstractField<C,V>
io.jmix.flowui.kit.component.valuepicker.ValuePickerBase<C,V>
All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier, com.vaadin.flow.component.BlurNotifier<C>, com.vaadin.flow.component.DetachNotifier, com.vaadin.flow.component.Focusable<C>, com.vaadin.flow.component.FocusNotifier<C>, com.vaadin.flow.component.HasAriaLabel, com.vaadin.flow.component.HasElement, com.vaadin.flow.component.HasEnabled, com.vaadin.flow.component.HasHelper, com.vaadin.flow.component.HasLabel, com.vaadin.flow.component.HasPlaceholder, com.vaadin.flow.component.HasSize, com.vaadin.flow.component.HasStyle, com.vaadin.flow.component.HasTheme, com.vaadin.flow.component.HasValidation, com.vaadin.flow.component.HasValue<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<C,V>,V>, com.vaadin.flow.component.HasValueAndElement<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<C,V>,V>, com.vaadin.flow.component.shared.HasTooltip, com.vaadin.flow.component.shared.HasValidationProperties, HasActions, HasAutofocus, HasPlaceholder, HasTitle, SupportsFormatter<V>, SupportsUserAction<V>, Serializable
Direct Known Subclasses:
EntityPicker, MultiValuePicker, ValuePicker

@Tag("jmix-value-picker") @JsModule("./src/value-picker/jmix-value-picker.js") public abstract class ValuePickerBase<C extends ValuePickerBase<C,V>,V> extends com.vaadin.flow.component.AbstractField<C,V> implements SupportsFormatter<V>, SupportsUserAction<V>, com.vaadin.flow.component.shared.HasValidationProperties, com.vaadin.flow.component.HasLabel, com.vaadin.flow.component.HasHelper, com.vaadin.flow.component.HasStyle, com.vaadin.flow.component.HasTheme, com.vaadin.flow.component.HasSize, HasPlaceholder, HasTitle, HasAutofocus, HasActions, com.vaadin.flow.component.Focusable<C>, com.vaadin.flow.component.shared.HasTooltip, com.vaadin.flow.component.HasAriaLabel
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.vaadin.flow.component.AbstractField

    com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<C extends com.vaadin.flow.component.Component,V extends Object>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.BlurNotifier

    com.vaadin.flow.component.BlurNotifier.BlurEvent<C extends com.vaadin.flow.component.Component>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.FocusNotifier

    com.vaadin.flow.component.FocusNotifier.FocusEvent<C extends com.vaadin.flow.component.Component>

    Nested classes/interfaces inherited from interface com.vaadin.flow.component.HasValue

    com.vaadin.flow.component.HasValue.ValueChangeEvent<V extends Object>, com.vaadin.flow.component.HasValue.ValueChangeListener<E extends com.vaadin.flow.component.HasValue.ValueChangeEvent<?>>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
     
    protected Formatter<? super V>
     
    protected static final String
     
    protected static final String
     

    Fields inherited from interface io.jmix.flowui.kit.component.HasAutofocus

    AUTOFOCUS_PROPERTY_NAME

    Fields inherited from interface io.jmix.flowui.kit.component.HasPlaceholder

    PLACEHOLDER_PROPERTY_NAME
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addAction(Action action, int index)
    Add an action to the component at the specified index.
    protected com.vaadin.flow.shared.Registration
    addCustomValueSetListener(com.vaadin.flow.component.ComponentEventListener<CustomValueSetEvent<C,V>> listener)
     
    protected String
     
     
    protected String
    formatValue(V value)
     
    Returns an action with passed id.
     
     
     
     
     
    protected void
    handlePropertyChange(com.vaadin.flow.dom.PropertyChangeEvent event)
     
    protected void
     
    protected void
     
    protected boolean
     
    void
    Removes the action from the component.
    protected void
    setAllowCustomValue(boolean allowCustomValue)
     
    void
    setAriaLabel(String ariaLabel)
     
    void
     
    void
    setFormatter(Formatter<? super V> formatter)
    Sets a formatter that is used to produce the strings representation of the value.
    protected void
    setPresentationValue(V newPresentationValue)
     
    void
    setValue(V value)
     
    void
    Sets the value of this component as if the user had set it, i.e.
    protected void
     

    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, findAncestor, fireEvent, from, get, getChildren, getElement, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, 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.AttachNotifier

    addAttachListener

    Methods inherited from interface com.vaadin.flow.component.BlurNotifier

    addBlurListener

    Methods inherited from interface com.vaadin.flow.component.DetachNotifier

    addDetachListener

    Methods inherited from interface com.vaadin.flow.component.Focusable

    addFocusShortcut, blur, focus, getTabIndex, setTabIndex

    Methods inherited from interface com.vaadin.flow.component.FocusNotifier

    addFocusListener

    Methods inherited from interface io.jmix.flowui.kit.component.HasActions

    addAction, removeAction, removeAllActions

    Methods inherited from interface io.jmix.flowui.kit.component.HasAutofocus

    isAutofocus, setAutofocus

    Methods inherited from interface com.vaadin.flow.component.HasElement

    getElement

    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.HasLabel

    getLabel, setLabel

    Methods inherited from interface io.jmix.flowui.kit.component.HasPlaceholder

    getPlaceholder, setPlaceholder

    Methods inherited from interface com.vaadin.flow.component.HasSize

    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.HasStyle

    addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName

    Methods inherited from interface com.vaadin.flow.component.HasTheme

    addThemeName, addThemeNames, getThemeName, getThemeNames, hasThemeName, removeThemeName, removeThemeNames, setThemeName, setThemeName

    Methods inherited from interface io.jmix.flowui.kit.component.HasTitle

    getTitle, setTitle

    Methods inherited from interface com.vaadin.flow.component.shared.HasTooltip

    getTooltip, setTooltipText

    Methods inherited from interface com.vaadin.flow.component.HasValidation

    setManualValidation

    Methods inherited from interface com.vaadin.flow.component.shared.HasValidationProperties

    getErrorMessage, isInvalid, setErrorMessage, setInvalid

    Methods inherited from interface com.vaadin.flow.component.HasValue

    clear, getOptionalValue

    Methods inherited from interface com.vaadin.flow.component.HasValueAndElement

    isReadOnly, isRequiredIndicatorVisible, setReadOnly, setRequiredIndicatorVisible
  • Field Details

  • Constructor Details

    • ValuePickerBase

      protected ValuePickerBase()
  • Method Details

    • initComponent

      protected void initComponent()
    • initFieldValuePropertyChangeListener

      protected void initFieldValuePropertyChangeListener()
    • handlePropertyChange

      protected void handlePropertyChange(com.vaadin.flow.dom.PropertyChangeEvent event)
    • setValue

      public void setValue(@Nullable V value)
      Specified by:
      setValue in interface com.vaadin.flow.component.HasValue<C extends ValuePickerBase<C,V>,V>
      Overrides:
      setValue in class com.vaadin.flow.component.AbstractField<C extends ValuePickerBase<C,V>,V>
    • setValueFromClient

      public void setValueFromClient(@Nullable V value)
      Description copied from interface: SupportsUserAction
      Sets the value of this component as if the user had set it, i.e. HasValue.ValueChangeEvent.isFromClient() returns true.
      Specified by:
      setValueFromClient in interface SupportsUserAction<C extends ValuePickerBase<C,V>>
      Parameters:
      value - the new value
    • validate

      protected void validate()
    • setPresentationValue

      protected void setPresentationValue(@Nullable V newPresentationValue)
      Specified by:
      setPresentationValue in class com.vaadin.flow.component.AbstractField<C extends ValuePickerBase<C,V>,V>
    • formatValue

      protected String formatValue(@Nullable V value)
    • applyDefaultValueFormat

      protected String applyDefaultValueFormat(@Nullable V value)
    • getFormatter

      @Nullable public Formatter<V> getFormatter()
      Specified by:
      getFormatter in interface SupportsFormatter<C extends ValuePickerBase<C,V>>
      Returns:
      a formatter or null if not set
    • setFormatter

      public void setFormatter(@Nullable Formatter<? super V> formatter)
      Description copied from interface: SupportsFormatter
      Sets a formatter that is used to produce the strings representation of the value.
      Specified by:
      setFormatter in interface SupportsFormatter<C extends ValuePickerBase<C,V>>
      Parameters:
      formatter - a formatter to set or null to remove
    • addAction

      public void addAction(Action action, int index)
      Description copied from interface: HasActions
      Add an action to the component at the specified index.
      Specified by:
      addAction in interface HasActions
      Parameters:
      action - action to add
      index - index at which the specified action is to be added
    • removeAction

      public void removeAction(Action action)
      Description copied from interface: HasActions
      Removes the action from the component.
      Specified by:
      removeAction in interface HasActions
      Parameters:
      action - action to remove
    • getActions

      public Collection<Action> getActions()
      Specified by:
      getActions in interface HasActions
      Returns:
      unmodifiable collection of actions
    • getAction

      @Nullable public Action getAction(String id)
      Description copied from interface: HasActions
      Returns an action with passed id.
      Specified by:
      getAction in interface HasActions
      Parameters:
      id - id of the action to find
      Returns:
      an action by its id, or null if not found
    • isAllowCustomValueBoolean

      protected boolean isAllowCustomValueBoolean()
    • setAllowCustomValue

      protected void setAllowCustomValue(boolean allowCustomValue)
    • getAriaLabel

      public Optional<String> getAriaLabel()
      Specified by:
      getAriaLabel in interface com.vaadin.flow.component.HasAriaLabel
    • setAriaLabel

      public void setAriaLabel(String ariaLabel)
      Specified by:
      setAriaLabel in interface com.vaadin.flow.component.HasAriaLabel
    • getAriaLabelledBy

      public Optional<String> getAriaLabelledBy()
      Specified by:
      getAriaLabelledBy in interface com.vaadin.flow.component.HasAriaLabel
    • setAriaLabelledBy

      public void setAriaLabelledBy(String labelledBy)
      Specified by:
      setAriaLabelledBy in interface com.vaadin.flow.component.HasAriaLabel
    • addCustomValueSetListener

      protected com.vaadin.flow.shared.Registration addCustomValueSetListener(com.vaadin.flow.component.ComponentEventListener<CustomValueSetEvent<C,V>> listener)
    • getActionsSupport

      protected ValuePickerActionSupport getActionsSupport()
    • createActionsSupport

      protected ValuePickerActionSupport createActionsSupport()