@StudioComponent(caption="ValuePicker", category="Components", xmlElement="valuePicker", icon="io/jmix/ui/icon/component/valuePicker.svg", canvasBehaviour=VALUE_PICKER, documentationURL="https://docs.jmix.io/jmix/%VERSION%/backoffice-ui/vcl/components/value-picker.html") public interface ValuePicker<V> extends Field<V>, HasFormatter<V>, ActionsHolder, Buffered, Component.Focusable, SupportsUserAction<V>
Modifier and Type | Interface and Description |
---|---|
static class |
ValuePicker.FieldValueChangeEvent<V>
The event that is fired when a user inputs value manually.
|
static interface |
ValuePicker.ValuePickerAction
Interface to be implemented by actions intended to be used by ValuePicker.
|
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 |
---|---|
static java.lang.String |
NAME |
static org.springframework.core.ParameterizedTypeReference<ValuePicker<java.lang.String>> |
TYPE_STRING |
AUTO_SIZE, AUTO_SIZE_PX, FULL_SIZE
Modifier and Type | Method and Description |
---|---|
io.jmix.core.common.event.Subscription |
addFieldValueChangeListener(java.util.function.Consumer<ValuePicker.FieldValueChangeEvent<V>> listener)
Adds a listener that will be fired in case field is editable.
|
java.util.function.Function<? super V,java.lang.String> |
getFieldIconProvider() |
boolean |
isFieldEditable() |
static <T> org.springframework.core.ParameterizedTypeReference<ValuePicker<T>> |
of(java.lang.Class<T> valueClass) |
void |
setFieldEditable(boolean editable)
Sets whether a user can input the value manually.
|
void |
setFieldIconProvider(java.util.function.Function<? super V,java.lang.String> iconProvider)
Sets a function that provides an icon for the field.
|
getValueSource, setValueSource
addValueChangeListener, clear, getEmptyValue, getValue, isEmpty, 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
getFormatter, setFormatter
addAction, addAction, getAction, getActionNN, getActions, getSubPart, removeAction, removeAction, removeAllActions
commit, discard, isBuffered, isModified, setBuffered
focus, getTabIndex, isFocusable, setFocusable, setTabIndex
setValueFromUser
static final java.lang.String NAME
static final org.springframework.core.ParameterizedTypeReference<ValuePicker<java.lang.String>> TYPE_STRING
static <T> org.springframework.core.ParameterizedTypeReference<ValuePicker<T>> of(java.lang.Class<T> valueClass)
@Nullable java.util.function.Function<? super V,java.lang.String> getFieldIconProvider()
void setFieldIconProvider(@Nullable java.util.function.Function<? super V,java.lang.String> iconProvider)
iconProvider
- icon provider to setboolean isFieldEditable()
@StudioProperty(name="fieldEditable", defaultValue="false") void setFieldEditable(boolean editable)
false
by default.
Doesn't set entered value to the model. To handle user input,
the ValuePicker.FieldValueChangeEvent
listener must be used.editable
- true
to enable manual input, false
otherwiseaddFieldValueChangeListener(Consumer)
io.jmix.core.common.event.Subscription addFieldValueChangeListener(java.util.function.Consumer<ValuePicker.FieldValueChangeEvent<V>> listener)
listener
- a listener to addSubscription
objectsetFieldEditable(boolean)