@Override protected void initField() { CubaComboBox<T> field = new CubaComboBox<>(); field.addStyleName(COMBOBOX_FIELD_STYLENAME); this.field = field; (getFieldInternal()).addValueChangeListener(this::onFieldValueChange); }
@Override public String getNullSelectionCaption() { return component.getEmptySelectionCaption(); }
@Override public void setNewOptionHandler(Consumer<String> newOptionHandler) { this.newOptionHandler = newOptionHandler; if (newOptionHandler != null && component.getNewItemHandler() == null) { component.setNewItemHandler(this::onNewItemEntered); } if (newOptionHandler == null && component.getNewItemHandler() != null) { component.setNewItemHandler(null); } }
userNameLabel = null; userComboBox = new CubaComboBox<>(); userComboBox.setEmptySelectionAllowed(false); userComboBox.setItemCaptionGenerator(this::getSubstitutedUserCaption); userComboBox.setStyleName("c-user-select-combobox"); userComboBox.setCubaId("substitutedUserSelect"); userComboBox.setId(ui.getTestIdManager().getTestId("substitutedUserSelect")); userComboBox.setItems(options); userComboBox.setValue(currentOrSubstitutedUser); userComboBox.addValueChangeListener(this::substitutedUserChanged);
@Override public void setNullOptionVisible(boolean nullOptionVisible) { this.nullOptionVisible = nullOptionVisible; component.setEmptySelectionAllowed(!isRequired() && nullOptionVisible); }
@Override public boolean isTextInputAllowed() { return component.isTextInputAllowed(); }
@Override public String getInputPrompt() { return component.getPlaceholder(); }
@Override public boolean isNewOptionAllowed() { return component.getNewItemHandler() != null; }
@Override public int getPageLength() { return component.getPageLength(); }
@Override public T getValue() { return getFieldInternal().getValue(); }
protected CubaComboBox<V> createComponent() { return new CubaComboBox<>(); }
@Override public void setStyleName(String styleName) { super.setStyleName(styleName); component.addStyleName(SEARCHSELECT_STYLENAME); }
@Override public Registration addValueChangeListener(ValueChangeListener<T> listener) { return getFieldInternal().addValueChangeListener(listener); }
@Override public void setRequired(boolean required) { super.setRequired(required); component.setEmptySelectionAllowed(!required && nullOptionVisible); }
public boolean isTextInputAllowed() { return getFieldInternal().isTextInputAllowed(); }
public String getPlaceholder() { return getFieldInternal().getPlaceholder(); }
public ComboBox.NewItemHandler getNewItemHandler() { return getFieldInternal().getNewItemHandler(); }
public int getPageLength() { return getFieldInternal().getPageLength(); }
.withType(Dialogs.MessageType.WARNING) .withActions( new ChangeSubstUserAction(userComboBox.getValue()) { @Override public void doRevert() {
@Override public void setNewOptionAllowed(boolean newItemAllowed) { if (newItemAllowed && component.getNewItemHandler() == null) { component.setNewItemHandler(this::onNewItemEntered); } if (!newItemAllowed && component.getNewItemHandler() != null) { component.setNewItemHandler(null); } }