package org.activityinfo.ui.client.component.formdesigner.palette; import org.activityinfo.model.form.FormField; import org.activityinfo.model.resource.ResourceId; import org.activityinfo.model.type.FieldTypeClass; /** * FieldTemplate which creates a new FormField using the * default instance of a given TypeClass */ public class TypeClassTemplate implements FieldTemplate { private FieldTypeClass typeClass; private String label; public TypeClassTemplate(FieldTypeClass typeClass, String label) { this.typeClass = typeClass; this.label = label; } @Override public String getLabel() { return label; } @Override public FormField create() { FormField formField = new FormField(ResourceId.generateFieldId(typeClass)); formField.setType(typeClass.createType()); formField.setLabel(label); return formField; } }