Class JmixComboBox<V>
java.lang.Object
com.vaadin.flow.component.Component
com.vaadin.flow.component.AbstractField<C,T>
com.vaadin.flow.component.AbstractSinglePropertyField<TComponent,TValue>
com.vaadin.flow.component.combobox.ComboBoxBase<com.vaadin.flow.component.combobox.ComboBox<T>,T,T>
com.vaadin.flow.component.combobox.ComboBox<V>
io.jmix.flowui.component.combobox.JmixComboBox<V>
- All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier,com.vaadin.flow.component.BlurNotifier<com.vaadin.flow.component.combobox.ComboBox<V>>,com.vaadin.flow.component.DetachNotifier,com.vaadin.flow.component.Focusable<com.vaadin.flow.component.combobox.ComboBox<V>>,com.vaadin.flow.component.FocusNotifier<com.vaadin.flow.component.combobox.ComboBox<V>>,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<com.vaadin.flow.component.combobox.ComboBox<V>,,V>, V> com.vaadin.flow.component.HasValueAndElement<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,,V>, V> com.vaadin.flow.component.shared.HasAllowedCharPattern,com.vaadin.flow.component.shared.HasAutoOpen,com.vaadin.flow.component.shared.HasClearButton,com.vaadin.flow.component.shared.HasClientValidation,com.vaadin.flow.component.shared.HasOverlayClassName,com.vaadin.flow.component.shared.HasPrefix,com.vaadin.flow.component.shared.HasThemeVariant<com.vaadin.flow.component.combobox.ComboBoxVariant>,com.vaadin.flow.component.shared.HasTooltip,com.vaadin.flow.component.shared.HasValidationProperties,com.vaadin.flow.component.shared.InputField<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,,V>, V> com.vaadin.flow.data.binder.HasValidator<V>,com.vaadin.flow.data.provider.HasDataView<V,,String, com.vaadin.flow.component.combobox.dataview.ComboBoxDataView<V>> com.vaadin.flow.data.provider.HasLazyDataView<V,,String, com.vaadin.flow.component.combobox.dataview.ComboBoxLazyDataView<V>> com.vaadin.flow.data.provider.HasListDataView<V,,com.vaadin.flow.component.combobox.dataview.ComboBoxListDataView<V>> HasRequired,SupportsDatatype<V>,SupportsItemsFetchCallback<V,,String> SupportsStatusChangeHandler<JmixComboBox<V>>,SupportsValidation<V>,SupportsDataProvider<V>,SupportsItemsEnum<V>,SupportsValueSource<V>,HasTitle,Serializable,org.springframework.beans.factory.Aware,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationContextAware
public class JmixComboBox<V>
extends com.vaadin.flow.component.combobox.ComboBox<V>
implements SupportsValueSource<V>, SupportsValidation<V>, SupportsStatusChangeHandler<JmixComboBox<V>>, SupportsDataProvider<V>, SupportsItemsEnum<V>, HasRequired, HasTitle, SupportsItemsFetchCallback<V,String>, SupportsDatatype<V>, org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.vaadin.flow.component.combobox.ComboBox
com.vaadin.flow.component.combobox.ComboBox.FetchItemsCallback<T extends Object>, com.vaadin.flow.component.combobox.ComboBox.ItemFilter<T extends Object>Nested classes/interfaces inherited from class com.vaadin.flow.component.combobox.ComboBoxBase
com.vaadin.flow.component.combobox.ComboBoxBase.CustomValueSetEvent<TComponent extends com.vaadin.flow.component.combobox.ComboBoxBase<TComponent,?, ?>> 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.shared.HasClientValidation
com.vaadin.flow.component.shared.HasClientValidation.ClientValidatedEventNested 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<?>>Nested classes/interfaces inherited from interface io.jmix.flowui.component.SupportsItemsFetchCallback
SupportsItemsFetchCallback.FetchCallback<T,F> Nested classes/interfaces inherited from interface io.jmix.flowui.component.SupportsStatusChangeHandler
SupportsStatusChangeHandler.StatusContext<C extends com.vaadin.flow.component.Component> -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.springframework.context.ApplicationContextprotected DataViewDelegate<JmixComboBox<V>,V> protected FieldDelegate<JmixComboBox<V>,V, V> Fields inherited from interface io.jmix.flowui.component.HasRequired
PROPERTY_REQUIREDFields inherited from interface io.jmix.flowui.component.SupportsValidation
PROPERTY_ERROR_MESSAGE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncom.vaadin.flow.shared.RegistrationaddValidator(Validator<? super V> validator) voidprotected voidbindDataProvider(com.vaadin.flow.data.provider.DataProvider<V, ?> dataProvider) protected DataViewDelegate<JmixComboBox<V>,V> protected FieldDelegate<JmixComboBox<V>,V, V> voidprotected voidbooleanvoidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext) voidsetDatatype(Datatype<V> datatype) voidsetErrorMessage(String errorMessage) voidsetInvalid(boolean invalid) Sets invalid state to the field considering result of field validation.com.vaadin.flow.component.combobox.dataview.ComboBoxListDataView<V>setItems(com.vaadin.flow.component.combobox.ComboBox.ItemFilter<V> itemFilter, com.vaadin.flow.data.provider.ListDataProvider<V> listDataProvider) com.vaadin.flow.component.combobox.dataview.ComboBoxLazyDataView<V>com.vaadin.flow.component.combobox.dataview.ComboBoxDataView<V>com.vaadin.flow.component.combobox.dataview.ComboBoxDataView<V>setItems(com.vaadin.flow.data.provider.InMemoryDataProvider<V> inMemoryDataProvider, com.vaadin.flow.function.SerializableFunction<String, com.vaadin.flow.function.SerializablePredicate<V>> filterConverter) com.vaadin.flow.component.combobox.dataview.ComboBoxListDataView<V>voidSets items from the passedEnumClass.voidsetItemsFetchCallback(SupportsItemsFetchCallback.FetchCallback<V, String> fetchCallback) Supply items lazily with a callback from a backend.voidsetRequired(boolean required) voidsetRequiredIndicatorVisible(boolean requiredIndicatorVisible) voidsetRequiredMessage(String requiredMessage) voidsetStatusChangeHandler(Consumer<SupportsStatusChangeHandler.StatusContext<JmixComboBox<V>>> handler) Sets a callback to be used to handle component status changes, e.g.voidsetValueSource(ValueSource<V> valueSource) protected voidvalidate()Methods inherited from class com.vaadin.flow.component.combobox.ComboBox
getEmptyValue, getPattern, isSelected, refreshValue, setOverlayWidth, setOverlayWidth, setPatternMethods inherited from class com.vaadin.flow.component.combobox.ComboBoxBase
addCustomValueSetListener, generateLabel, getAriaLabel, getAriaLabelledBy, getDataCommunicator, getDataController, getDataGenerator, getDataProvider, getFilter, getGenericDataView, getItemLabelGenerator, getKeyMapper, getLazyDataView, getListDataView, getPageSize, getRenderManager, isAllowCustomValue, isAutofocus, isOpened, isRequired, onAttach, onDetach, runBeforeClientResponse, setAllowCustomValue, setAriaLabel, setAriaLabelledBy, setAutofocus, setDataProvider, setDataProvider, setFilter, setItemLabelGenerator, setItems, setItems, setItems, setItems, setItems, setItems, setItemsWithFilterConverter, setItemsWithFilterConverter, setManualValidation, setOpened, setPageSize, setRenderer, setValueMethods inherited from class com.vaadin.flow.component.AbstractSinglePropertyField
getSynchronizationRegistration, hasValidValue, setPresentationValue, setSynchronizedEventMethods inherited from class com.vaadin.flow.component.AbstractField
addValueChangeListener, getValue, isEmpty, setModelValue, valueEqualsMethods 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, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, set, setElement, setId, setVisibleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.vaadin.flow.component.AttachNotifier
addAttachListenerMethods inherited from interface com.vaadin.flow.component.BlurNotifier
addBlurListenerMethods inherited from interface com.vaadin.flow.component.DetachNotifier
addDetachListenerMethods inherited from interface com.vaadin.flow.component.Focusable
addFocusShortcut, blur, focus, getTabIndex, setTabIndexMethods inherited from interface com.vaadin.flow.component.FocusNotifier
addFocusListenerMethods inherited from interface com.vaadin.flow.component.shared.HasAllowedCharPattern
getAllowedCharPattern, setAllowedCharPatternMethods inherited from interface com.vaadin.flow.component.shared.HasAutoOpen
isAutoOpen, setAutoOpenMethods inherited from interface com.vaadin.flow.component.shared.HasClearButton
isClearButtonVisible, setClearButtonVisibleMethods inherited from interface com.vaadin.flow.component.shared.HasClientValidation
addClientValidatedEventListenerMethods inherited from interface com.vaadin.flow.component.HasElement
getElementMethods inherited from interface com.vaadin.flow.component.HasEnabled
isEnabled, setEnabledMethods inherited from interface com.vaadin.flow.component.HasHelper
getHelperComponent, getHelperText, setHelperComponent, setHelperTextMethods inherited from interface com.vaadin.flow.component.HasLabel
getLabel, setLabelMethods inherited from interface com.vaadin.flow.data.provider.HasListDataView
setItemsMethods inherited from interface com.vaadin.flow.component.shared.HasOverlayClassName
getOverlayClassName, setOverlayClassNameMethods inherited from interface com.vaadin.flow.component.HasPlaceholder
getPlaceholder, setPlaceholderMethods inherited from interface com.vaadin.flow.component.shared.HasPrefix
getPrefixComponent, setPrefixComponentMethods inherited from interface io.jmix.flowui.component.HasRequired
isRequiredMethods 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, setWidthFullMethods inherited from interface com.vaadin.flow.component.HasStyle
addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassNameMethods inherited from interface com.vaadin.flow.component.HasTheme
addThemeName, addThemeNames, getThemeName, getThemeNames, hasThemeName, removeThemeName, removeThemeNames, setThemeName, setThemeNameMethods inherited from interface com.vaadin.flow.component.shared.HasThemeVariant
addThemeVariants, removeThemeVariantsMethods inherited from interface com.vaadin.flow.component.shared.HasTooltip
getTooltip, setTooltipTextMethods inherited from interface com.vaadin.flow.component.HasValidation
setManualValidationMethods inherited from interface com.vaadin.flow.data.binder.HasValidator
addValidationStatusChangeListener, getDefaultValidatorMethods inherited from interface com.vaadin.flow.component.HasValue
addValueChangeListener, clear, getOptionalValue, getValue, isEmptyMethods inherited from interface com.vaadin.flow.component.HasValueAndElement
isReadOnly, isRequiredIndicatorVisible, setReadOnlyMethods inherited from interface io.jmix.flowui.data.SupportsDataProvider
getDataProvider
-
Field Details
-
applicationContext
protected org.springframework.context.ApplicationContext applicationContext -
fieldDelegate
-
dataViewDelegate
-
-
Constructor Details
-
JmixComboBox
public JmixComboBox()
-
-
Method Details
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) - Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware
-
afterPropertiesSet
public void afterPropertiesSet()- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean
-
initComponent
protected void initComponent() -
addValidator
- Specified by:
addValidatorin interfaceSupportsValidation<V>
-
executeValidators
- Specified by:
executeValidatorsin interfaceSupportsValidation<V>- Throws:
ValidationException
-
setItems
Description copied from interface:SupportsItemsEnumSets items from the passedEnumClass.- Specified by:
setItemsin interfaceSupportsItemsEnum<V>- Parameters:
itemsEnum- aEnumClassto be used as items source- See Also:
-
setItems
-
setItems
-
setItems
-
setItems
-
setItems
-
bindDataProvider
-
setItemsFetchCallback
Description copied from interface:SupportsItemsFetchCallbackSupply items lazily with a callback from a backend.- Specified by:
setItemsFetchCallbackin interfaceSupportsItemsFetchCallback<V,String> - Parameters:
fetchCallback- function that returns a stream of items from the backend based on the offset, limit and an optional filter provided by the query object
-
getValueSource
- Specified by:
getValueSourcein interfaceSupportsValueSource<V>
-
setValueSource
- Specified by:
setValueSourcein interfaceSupportsValueSource<V>
-
getDatatype
- Specified by:
getDatatypein interfaceSupportsDatatype<V>
-
setDatatype
- Specified by:
setDatatypein interfaceSupportsDatatype<V>
-
setRequired
public void setRequired(boolean required) - Specified by:
setRequiredin interfaceHasRequired- Overrides:
setRequiredin classcom.vaadin.flow.component.combobox.ComboBoxBase<com.vaadin.flow.component.combobox.ComboBox<V>,V, V>
-
setRequiredIndicatorVisible
public void setRequiredIndicatorVisible(boolean requiredIndicatorVisible) - Specified by:
setRequiredIndicatorVisiblein interfacecom.vaadin.flow.component.HasValue<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,V>, V> - Specified by:
setRequiredIndicatorVisiblein interfacecom.vaadin.flow.component.HasValueAndElement<com.vaadin.flow.component.AbstractField.ComponentValueChangeEvent<com.vaadin.flow.component.combobox.ComboBox<V>,V>, V>
-
validate
protected void validate() -
getRequiredMessage
- Specified by:
getRequiredMessagein interfaceHasRequired
-
setRequiredMessage
- Specified by:
setRequiredMessagein interfaceHasRequired
-
isInvalid
public boolean isInvalid()- Specified by:
isInvalidin interfacecom.vaadin.flow.component.HasValidation- Specified by:
isInvalidin interfacecom.vaadin.flow.component.shared.HasValidationProperties
-
setInvalid
public void setInvalid(boolean invalid) Description copied from interface:SupportsValidationSets invalid state to the field considering result of field validation.- Invalid - false and validation passed - false = field is invalid
- Invalid - false and validation passed - true = field is valid
- Invalid - true and validation passed - false = field is invalid
- Invalid - true and validation passed - true = field is invalid
- Specified by:
setInvalidin interfacecom.vaadin.flow.component.HasValidation- Specified by:
setInvalidin interfacecom.vaadin.flow.component.shared.HasValidationProperties- Specified by:
setInvalidin interfaceSupportsValidation<V>- Parameters:
invalid- whether field should be invalid
-
getErrorMessage
- Specified by:
getErrorMessagein interfacecom.vaadin.flow.component.HasValidation- Specified by:
getErrorMessagein interfacecom.vaadin.flow.component.shared.HasValidationProperties- Specified by:
getErrorMessagein interfaceSupportsValidation<V>
-
setErrorMessage
- Specified by:
setErrorMessagein interfacecom.vaadin.flow.component.HasValidation- Specified by:
setErrorMessagein interfacecom.vaadin.flow.component.shared.HasValidationProperties- Specified by:
setErrorMessagein interfaceSupportsValidation<V>
-
setStatusChangeHandler
public void setStatusChangeHandler(@Nullable Consumer<SupportsStatusChangeHandler.StatusContext<JmixComboBox<V>>> handler) Description copied from interface:SupportsStatusChangeHandlerSets a callback to be used to handle component status changes, e.g. validation messages set byHasValidation.setErrorMessage(String).- Specified by:
setStatusChangeHandlerin interfaceSupportsStatusChangeHandler<V>- Parameters:
handler- a handler to set
-
createFieldDelegate
-
createDataViewDelegate
-