% if(property.type == Boolean.class || property.type == boolean.class)
out << renderBooleanEditor(domainClass,property)
else if(Number.class.isAssignableFrom(property.type) || (property.type.isPrimitive() && property.type != boolean.class))
out << renderNumberEditor(domainClass,property)
else if(property.type == String.class)
out << renderStringEditor(domainClass,property)
else if(property.type == Date.class || property.type == java.sql.Date.class || property.type == java.sql.Time.class)
out << renderDateEditor(domainClass,property)
else if(property.type == Calendar.class)
out << renderDateEditor(domainClass,property)
else if(property.type == URL.class)
out << renderStringEditor(domainClass,property)
else if(property.isEnum())
out << renderEnumEditor(domainClass,property)
else if(property.type == TimeZone.class)
out << renderSelectTypeEditor("timeZone",domainClass,property)
else if(property.type == Locale.class)
out << renderSelectTypeEditor("locale",domainClass,property)
else if(property.type == Currency.class)
out << renderSelectTypeEditor("currency",domainClass,property)
else if(property.type==([] as Byte[]).class) //TODO: Bug in groovy means i have to do this :(
out << renderByteArrayEditor(domainClass,property)
else if(property.type==([] as byte[]).class) //TODO: Bug in groovy means i have to do this :(
out << renderByteArrayEditor(domainClass,property)
else if(property.manyToOne || property.oneToOne)
out << renderManyToOne(domainClass,property)
else if((property.oneToMany && !property.bidirectional) || (property.manyToMany && property.isOwningSide()))
out << renderManyToMany(domainClass, property)
else if(property.oneToMany)
out << renderOneToMany(domainClass,property)
private renderEnumEditor(domainClass,property) {
if(property.isEnum()) {
return "