ingo@787: package de.intevation.flys.client.client.ui; ingo@787: ingo@787: import com.google.gwt.core.client.GWT; ingo@787: ingo@787: import com.smartgwt.client.widgets.Canvas; ingo@787: import com.smartgwt.client.widgets.Label; ingo@787: import com.smartgwt.client.widgets.form.DynamicForm; ingo@787: import com.smartgwt.client.widgets.form.fields.CheckboxItem; ingo@787: import com.smartgwt.client.widgets.layout.HLayout; ingo@787: import com.smartgwt.client.widgets.layout.VLayout; ingo@787: ingo@787: import de.intevation.flys.client.shared.model.Data; ingo@787: import de.intevation.flys.client.shared.model.DataItem; ingo@787: import de.intevation.flys.client.shared.model.DataList; ingo@787: import de.intevation.flys.client.shared.model.DefaultData; ingo@787: import de.intevation.flys.client.shared.model.DefaultDataItem; ingo@787: ingo@787: ingo@787: /** ingo@787: * @author Ingo Weinzierl ingo@787: */ ingo@787: public class BooleanPanel extends AbstractUIProvider { ingo@787: ingo@787: public static final String FIELD_NAME = "boolean_field"; ingo@787: ingo@787: protected DynamicForm form; ingo@787: ingo@787: protected String dataName; ingo@787: ingo@787: ingo@787: @Override ingo@787: public Canvas create(DataList dataList) { ingo@787: Data data = dataList.get(0); ingo@787: DataItem[] items = data.getItems(); ingo@787: ingo@787: this.dataName = data.getLabel(); ingo@787: ingo@787: VLayout layout = new VLayout(); ingo@787: Label label = new Label(data.getDescription()); ingo@787: ingo@787: layout.setMembersMargin(10); ingo@787: layout.setHeight(35); ingo@787: label.setHeight(35); ingo@787: ingo@787: layout.addMember(label); ingo@787: layout.addMember(createForm(items[0].getLabel())); ingo@787: layout.addMember(getNextButton()); ingo@787: ingo@787: return layout; ingo@787: } ingo@787: ingo@787: ingo@787: protected Canvas createForm() { ingo@787: return createForm(null); ingo@787: } ingo@787: ingo@787: ingo@787: protected Canvas createForm(String title) { ingo@787: HLayout layout = new HLayout(); ingo@787: layout.setMembersMargin(10); ingo@787: ingo@787: if (title != null && title.length() > 0) { ingo@787: Label label = new Label(title); ingo@787: label.setHeight(25); ingo@787: layout.addMember(label); ingo@787: } ingo@787: ingo@787: form = new DynamicForm(); ingo@787: layout.addMember(form); ingo@787: ingo@787: CheckboxItem item = new CheckboxItem(FIELD_NAME); ingo@787: item.setShowTitle(false); ingo@787: item.setShowLabel(false); ingo@787: ingo@787: form.setFields(item); ingo@787: ingo@787: return layout; ingo@787: } ingo@787: ingo@787: ingo@787: @Override ingo@787: public Canvas createOld(DataList dataList) { ingo@787: Data data = dataList.get(0); ingo@787: DataItem[] items = data.getItems(); ingo@787: ingo@787: HLayout layout = new HLayout(); ingo@787: Label label = new Label(dataList.getLabel()); ingo@787: Label value = new Label(items[0].getLabel()); ingo@787: ingo@787: layout.setHeight(35); ingo@787: layout.setWidth(400); ingo@787: label.setWidth(200); ingo@787: ingo@787: layout.addMember(label); ingo@787: layout.addMember(value); ingo@787: layout.addMember(getBackButton(dataList.getState())); ingo@787: ingo@787: return layout; ingo@787: } ingo@787: ingo@787: ingo@787: @Override ingo@787: protected Data[] getData() { ingo@787: GWT.log("+++ RETURN DATA FOR STATE: " + dataName + " +++"); ingo@787: String value = "TODO:FIND VALUE"; ingo@787: DataItem item = new DefaultDataItem(dataName, dataName, value); ingo@787: return new Data[] { new DefaultData( ingo@787: dataName, null, null, new DataItem[] { item }) }; ingo@787: } ingo@787: } ingo@787: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :