@Override protected CubaPickerField<V> createComponent() { return new CubaSearchSelectPickerField<>(); }
@Override protected void init() { super.init(); addStyleName(SEARCHSELECT_PICKERFIELD_STYLENAME); fieldReadOnly = false; }
@Override public String getNullSelectionCaption() { return getComponent().getEmptySelectionCaption(); }
public int getPageLength() { return getFieldInternal().getPageLength(); }
@Override protected void initComponent(CubaPickerField<V> component) { Messages messages = beanLocator.get(Messages.NAME); setInputPrompt(messages.getMainMessage("searchPickerField.inputPrompt")); getComponent().setItemCaptionGenerator(this::generateItemCaption); getComponent().setFilterHandler(this::executeSearch); }
@Override public void setOptionCaptionProvider(Function<? super V, String> optionCaptionProvider) { if (this.optionCaptionProvider != optionCaptionProvider) { this.optionCaptionProvider = optionCaptionProvider; // reset item captions getComponent().setItemCaptionGenerator(this::generateItemCaption); } } }
@Override public int getPageLength() { return getComponent().getPageLength(); }
@Override public String getInputPrompt() { return getComponent().getPlaceholder(); }
@Override public void setNullSelectionCaption(String nullOption) { getComponent().setEmptySelectionCaption(nullOption); setInputPrompt(null); }
@Override public void setNullOptionVisible(boolean nullOptionVisible) { this.nullOptionVisible = nullOptionVisible; getComponent().setEmptySelectionAllowed(!isRequired() && nullOptionVisible); }
public void setFilterHandler(Consumer<String> filterHandler) { getFieldInternal().setFilterHandler(filter -> { if (filterHandler != null) { filterHandler.accept(filter); } }); }
public void setOptionsStyleProvider(Function<T, String> styleProvider) { getFieldInternal().setStyleGenerator(item -> styleProvider != null ? styleProvider.apply(item) : ""); } }
@Override protected void doSetValue(T value) { getFieldInternal().setValue(value); }
@Override public T getValue() { return getFieldInternal().getValue(); }
@Override public Registration addValueChangeListener(ValueChangeListener<T> listener) { return getFieldInternal().addValueChangeListener(listener); }
public void setItems(T... items) { getFieldInternal().setItems(items); }
public String getEmptySelectionCaption() { return getFieldInternal().getEmptySelectionCaption(); }
public void setItems(Stream<T> streamOfItems) { getFieldInternal().setItems(streamOfItems); }
public void setItems(ComboBox.CaptionFilter captionFilter, Collection<T> items) { getFieldInternal().setItems(captionFilter, items); }
public void setEmptySelectionCaption(String caption) { getFieldInternal().setEmptySelectionCaption(caption); }