1234567891011121314151617181920212223242526272829303132333435 |
- package com.vaadin.tests.components.combobox;
-
- import java.util.Collections;
- import java.util.Optional;
-
- public class ComboBoxNewItemProvider
- extends ComboBoxSelectingNewItemValueChange {
-
- @Override
- protected void configureNewItemHandling() {
- comboBox.setNewItemProvider(text -> {
- if (delay.getValue()) {
- try {
- Thread.sleep(2000);
- } catch (InterruptedException e1) {
- e1.printStackTrace();
- }
- }
- if (Boolean.TRUE.equals(reject.getValue())) {
- valueChangeLabel.setValue("item " + text + " discarded");
- return Optional.empty();
- } else {
- items.add(text);
- Collections.sort(items);
- valueChangeLabel
- .setValue("adding new item... count: " + items.size());
- comboBox.getDataProvider().refreshAll();
- if (noSelection.getValue()) {
- return Optional.empty();
- }
- }
- return Optional.of(text);
- });
- }
- }
|