Package io.jmix.ui.component.impl
Class AbstractSelectList<V,I,T extends JmixAbstractListSelect<I>>
java.lang.Object
io.jmix.ui.component.impl.AbstractComponent<T>
io.jmix.ui.component.impl.AbstractValueComponent<T,P,V>
io.jmix.ui.component.impl.AbstractField<T,Set<I>,V>
io.jmix.ui.component.impl.AbstractSelectList<V,I,T>
- Type Parameters:
V- single value type or CollectionI- item typeT- Vaadin component type
- All Implemented Interfaces:
AttachNotifier,Component,Component.BelongToFrame,Component.Editable,Component.Focusable,Component.HasCaption,Component.HasDescription,Component.HasIcon,Component.HasXmlDescriptor,Component.Wrapper,HasValueSource<V>,Field<V>,HasContextHelp,HasDebugId,HasHtmlCaption,HasHtmlDescription,HasHtmlSanitizer,HasOptionCaptionProvider<I>,HasValidator<V>,HasValue<V>,OptionsField<V,,I> Requirable,SelectList<V,,I> Validatable,org.springframework.beans.factory.InitializingBean
- Direct Known Subclasses:
MultiSelectListImpl,SingleSelectListImpl
public abstract class AbstractSelectList<V,I,T extends JmixAbstractListSelect<I>>
extends AbstractField<T,Set<I>,V>
implements SelectList<V,I>, org.springframework.beans.factory.InitializingBean
Base class for list select components.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.jmix.ui.component.Component
Component.Alignment, Component.BelongToFrame, Component.Disposable, Component.Editable, Component.Focusable, Component.HasCaption, Component.HasDescription, Component.HasIcon, Component.HasXmlDescriptor, Component.WrapperNested classes/interfaces inherited from interface io.jmix.ui.component.HasContextHelp
HasContextHelp.ContextHelpIconClickEventNested classes/interfaces inherited from interface io.jmix.ui.component.HasValue
HasValue.ValueChangeEvent<V>Nested classes/interfaces inherited from interface io.jmix.ui.component.SelectList
SelectList.DoubleClickEvent<I> -
Field Summary
FieldsFields inherited from class io.jmix.ui.component.impl.AbstractField
editable, parentEditableChangeListener, validators, VALIDATORS_LIST_INITIAL_CAPACITYFields inherited from class io.jmix.ui.component.impl.AbstractValueComponent
internalValue, uiTestIdsSupport, valueBindingFields inherited from class io.jmix.ui.component.impl.AbstractComponent
alignment, applicationContext, component, contextHelpIconClickHandler, contextHelpIconClickListener, descriptionAsHtml, element, frame, htmlSanitizerEnabled, icon, ICON_STYLE, id, parentFields inherited from interface io.jmix.ui.component.Component
AUTO_SIZE, AUTO_SIZE_PX, FULL_SIZE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDoubleClickListener(Consumer<SelectList.DoubleClickEvent<I>> listener) Adds a listener that is fired when user double-clicks on a list item.voidprotected voidcomponentValueChanged(Set<I> prevComponentValue, Set<I> newComponentValue, boolean isUserOriginated) protected abstract Tvoidfocus()Sets focus to this componentprotected StringgenerateDefaultItemCaption(I item) protected StringgenerateItemCaption(I item) protected abstract Collection<I>intGets the tabulator index of theHasTabIndexcomponent.protected voidinitComponent(T component) protected voidonDoubleClick(I item) protected voidsetItemsToPresentation(Stream<I> options) voidsetMetadataTools(MetadataTools metadataTools) voidsetOptionCaptionProvider(Function<? super I, String> optionCaptionProvider) Sets function that provides caption for option items.voidsetOptions(Options<I> options) Sets options for UI component.voidsetTabIndex(int tabIndex) Sets the tabulator index of theFocusablecomponent.protected voidvalueBindingConnected(ValueSource<V> valueSource) Methods inherited from class io.jmix.ui.component.impl.AbstractField
addValidator, attachValueChangeListener, getDatatypeConversionErrorMsg, getDefaultRequiredMessage, getErrorMessage, getRequiredMessage, getValidators, isEditable, isRequired, isValid, removeValidator, setEditable, setEditableToComponent, setParent, setRequired, setRequiredMessage, setupComponentErrorProvider, triggerValidators, validateMethods inherited from class io.jmix.ui.component.impl.AbstractValueComponent
addValueChangeListener, commit, convertToModel, convertToPresentation, discard, fieldValueEquals, getValue, getValueSource, isBuffered, isModified, setBuffered, setUiTestId, setUiTestIdsSupport, setValue, setValueSource, setValueToPresentation, valueBindingActivatedMethods inherited from class io.jmix.ui.component.impl.AbstractComponent
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, withUnwrappedCompositionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.jmix.ui.component.Component
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, withUnwrappedCompositionMethods inherited from interface io.jmix.ui.component.Component.BelongToFrame
getFrame, setFrameMethods inherited from interface io.jmix.ui.component.Component.Editable
isEditable, isEditableWithParent, setEditableMethods inherited from interface io.jmix.ui.component.Component.Focusable
isFocusable, setFocusableMethods inherited from interface io.jmix.ui.component.Component.HasCaption
getCaption, setCaptionMethods inherited from interface io.jmix.ui.component.Component.HasDescription
getDescription, setDescriptionMethods inherited from interface io.jmix.ui.component.Component.HasIcon
getIcon, setIcon, setIconFromSetMethods inherited from interface io.jmix.ui.component.HasContextHelp
getContextHelpIconClickHandler, getContextHelpText, isContextHelpTextHtmlEnabled, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabledMethods inherited from interface io.jmix.ui.component.HasHtmlCaption
isCaptionAsHtml, setCaptionAsHtmlMethods inherited from interface io.jmix.ui.component.HasHtmlDescription
isDescriptionAsHtml, setDescriptionAsHtmlMethods inherited from interface io.jmix.ui.component.HasHtmlSanitizer
isHtmlSanitizerEnabled, setHtmlSanitizerEnabledMethods inherited from interface io.jmix.ui.component.HasValidator
addValidator, addValidators, getValidators, removeValidatorMethods inherited from interface io.jmix.ui.component.HasValue
addValueChangeListener, clear, getEmptyValue, getValue, isEmpty, setValueMethods inherited from interface io.jmix.ui.component.data.HasValueSource
getValueSource, setValueSourceMethods inherited from interface io.jmix.ui.component.OptionsField
setOptionsEnum, setOptionsList, setOptionsMapMethods inherited from interface io.jmix.ui.component.Requirable
getRequiredMessage, isRequired, setRequired, setRequiredMessageMethods inherited from interface io.jmix.ui.component.Validatable
isValid, isValidateOnCommit, validate
-
Field Details
-
metadataTools
-
optionsBinding
-
optionCaptionProvider
-
-
Constructor Details
-
AbstractSelectList
public AbstractSelectList()
-
-
Method Details
-
setMetadataTools
-
createComponent
-
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceorg.springframework.beans.factory.InitializingBean- Throws:
Exception
-
initComponent
-
setOptionCaptionProvider
Description copied from interface:HasOptionCaptionProviderSets function that provides caption for option items.- Specified by:
setOptionCaptionProviderin interfaceHasOptionCaptionProvider<V>- Parameters:
optionCaptionProvider- caption provider for options
-
getOptionCaptionProvider
- Specified by:
getOptionCaptionProviderin interfaceHasOptionCaptionProvider<V>- Returns:
- caption provider for options
-
addDoubleClickListener
Description copied from interface:SelectListAdds a listener that is fired when user double-clicks on a list item.- Specified by:
addDoubleClickListenerin interfaceSelectList<V,I> - Parameters:
listener- a listener to add
-
focus
public void focus()Description copied from interface:Component.FocusableSets focus to this component- Specified by:
focusin interfaceComponent.Focusable
-
getTabIndex
public int getTabIndex()Description copied from interface:Component.FocusableGets the tabulator index of theHasTabIndexcomponent.- Specified by:
getTabIndexin interfaceComponent.Focusable- Returns:
- tab index set for the
HasTabIndexcomponent
-
setTabIndex
public void setTabIndex(int tabIndex) Description copied from interface:Component.FocusableSets the tabulator index of theFocusablecomponent. 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.- Specified by:
setTabIndexin interfaceComponent.Focusable- Parameters:
tabIndex- tab index
-
getOptions
- Specified by:
getOptionsin interfaceOptionsField<V,I> - Returns:
- options object
-
setOptions
Description copied from interface:OptionsFieldSets options for UI component.- Specified by:
setOptionsin interfaceOptionsField<V,I> - Parameters:
options- options- See Also:
-
setItemsToPresentation
-
getCollectionValue
-
componentValueChanged
protected void componentValueChanged(Set<I> prevComponentValue, Set<I> newComponentValue, boolean isUserOriginated) - Overrides:
componentValueChangedin classAbstractValueComponent<T extends JmixAbstractListSelect<I>,Set<I>, V>
-
valueBindingConnected
- Overrides:
valueBindingConnectedin classAbstractValueComponent<T extends JmixAbstractListSelect<I>,Set<I>, V>
-
generateDefaultItemCaption
-
generateItemCaption
-
onDoubleClick
-