package ru.naumen.gintonic.widgets;
import java.util.Collection;
import ru.naumen.gintonic.guice.statements.BindingDefinition;
/**
* Help manipulate with widgets and user input
*
* @author Sergey Tselovalnikov
* @since Jan 22, 2014
*/
public final class Widgets {
public static BindingDefinition showUserSelect(Collection<BindingDefinition> definitions, BindingDefinition defaultValue,
BindingDefinition selectedValue) {
PossibleBindingsSelect select = new PossibleBindingsSelect(definitions);
select.open();
if(selectedValue != null) {
select.setInput(selectedValue);
}
Object[] result = select.getResult();
if(result == null || result.length == 0) {
return defaultValue;
}
return (BindingDefinition) result[0];
}
public static BindingDefinition showUserSelect(Collection<BindingDefinition> definitions) {
return showUserSelect(definitions, null, null);
}
public static BindingDefinition showUserSelectWithSelected(Collection<BindingDefinition> definitions, BindingDefinition selected) {
return showUserSelect(definitions, null, selected);
}
private Widgets() {
}
}