panel.clear();
if ( flType != null && flType.equals( DataType.TYPE_BOOLEAN ) ) {
String[] c = new String[]{ "true", "false" };
panel.add( new EnumDropDown( field.getExpected(),
new DropDownValueChanged() {
public void valueChanged( String newText,
String newValue ) {
callback.valueChanged( newValue );
}
},
DropDownData.create( c ),
oracle.getResourcePath() ) );
} else if ( flType != null && flType.equals( DataType.TYPE_DATE ) ) {
final DatePickerTextBox datePicker = new DatePickerTextBox( field.getExpected() );
String m = TestScenarioConstants.INSTANCE.ValueFor0( field.getFieldName() );
datePicker.setTitle( m );
datePicker.addValueChanged( new ValueChanged() {
public void valueChanged( String newValue ) {
field.setExpected( newValue );
}
} );
panel.add( datePicker );
} else {
Map<String, String> currentValueMap = new HashMap<String, String>();
// TODO fill currentValueMap with values of other VerifyFields (if any)
DropDownData dropDownData = oracle.getEnums( factType,
field.getFieldName(),
currentValueMap );
if ( dropDownData != null ) {
//GUVNOR-1324: Java enums are of type TYPE_COMPARABLE whereas Guvnor enums are not.
//The distinction here controls whether the EXPECTED value is handled as a true
//Java enum or a literal with a selection list (i.e. Guvnor enum)
String dataType = oracle.getFieldType( factType, field.getFieldName() );
if ( dataType.equals( DataType.TYPE_COMPARABLE ) ) {
field.setNature( FieldData.TYPE_ENUM );
} else {
field.setNature( FieldData.TYPE_LITERAL );
}
panel.add( new EnumDropDown( field.getExpected(),
new DropDownValueChanged() {
public void valueChanged( String newText,
String newValue ) {
callback.valueChanged( newValue );
}
},