use of com.manydesigns.elements.annotations.Select in project Portofino by ManyDesigns.
the class SelectSearchField method initializeModel.
private void initializeModel(PropertyAccessor accessor, SelectionProvider selectionProvider) {
Select annotation = accessor.getAnnotation(Select.class);
if (selectionProvider == null) {
if (annotation != null) {
Object[] values = annotation.values();
String[] labels = annotation.labels();
assert (values.length == labels.length);
DefaultSelectionProvider sp = new DefaultSelectionProvider(accessor.getName(), 1);
for (int i = 0; i < values.length; i++) {
sp.appendOption(values[i], labels[i], true);
}
selectionModel = sp.createSelectionModel();
displayMode = annotation.searchDisplayMode();
}
} else {
displayMode = selectionProvider.getSearchDisplayMode();
if (displayMode == null && annotation != null) {
displayMode = annotation.searchDisplayMode();
}
}
if (displayMode == null) {
displayMode = SearchDisplayMode.DROPDOWN;
}
selectionModelIndex = 0;
comboLabel = getText("elements.field.select.select", label);
notSetLabel = getText("elements.search.select.notset", label);
autocompleteId = id + AUTOCOMPLETE_SUFFIX;
autocompleteInputName = inputName + AUTOCOMPLETE_SUFFIX;
}
Aggregations