final SortedSet<ElementType> allPossibleTypes = possibleTypesService.types();
final int allPossibleTypesCount = allPossibleTypes.size();
final Runnable updateUserInterfaceOp;
final Style defaultStyle;
if( allPossibleTypesCount == 1 )
{
defaultStyle = Style.CHECKBOX;
}
else if( allPossibleTypesCount <= 3 )
{
defaultStyle = Style.RADIO_BUTTONS;
}
else
{
defaultStyle = Style.DROP_DOWN_LIST;
}
Style style = Style.decode( def.getHint( WithDef.HINT_STYLE ) );
if( style == null || ( style == Style.CHECKBOX && allPossibleTypesCount != 1 ) )
{
style = defaultStyle;
}