package org.aplikator.server.descriptor;
import org.aplikator.client.shared.descriptor.RepeatedFormDTO;
import org.aplikator.client.shared.descriptor.WidgetDTO;
import org.aplikator.server.data.Context;
public class RepeatedForm extends WidgetPropertyDescriptorBase<Integer> {
private View view;
private boolean defaultSortId = false;
public RepeatedForm(Collection<? extends Entity> property, View view) {
super(property);
this.view = view;
}
@Override
public WidgetDTO getWidgetDescriptor(Context ctx) {
RepeatedFormDTO desc = new RepeatedFormDTO(getProperty().getPropertyDTO(ctx), view.getViewDTO(ctx));
desc.setSize(getSize());
desc.setEnabled(isEnabled());
desc.setLocalizedName(getLocalizedName(ctx));
desc.setDefaultSortId(defaultSortId);
return desc;
}
@Override
public void registerProperties(Form form) {
// form.addProperty(property);
}
public static RepeatedForm repeated(Collection<? extends Entity> property) {
return new RepeatedForm(property, property.referredEntity.view());
}
public static RepeatedForm repeated(Collection<? extends Entity> property, View view) {
return new RepeatedForm(property, view);
}
public RepeatedForm useDefaultSortId() {
this.defaultSortId = true;
return this;
}
}