blob: 1d912c4bcc065589437e66f7f31f886588289bfc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
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);
});
}
}
|