Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java @ 787:4e0b73b7113b
Added new UI providers.
flys-client/trunk@2284 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 05 Jul 2011 17:28:04 +0000 |
parents | |
children | 696e3404e991 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java Tue Jul 05 17:28:04 2011 +0000 @@ -0,0 +1,111 @@ +package de.intevation.flys.client.client.ui; + +import com.google.gwt.core.client.GWT; + +import com.smartgwt.client.widgets.Canvas; +import com.smartgwt.client.widgets.Label; +import com.smartgwt.client.widgets.form.DynamicForm; +import com.smartgwt.client.widgets.form.fields.CheckboxItem; +import com.smartgwt.client.widgets.layout.HLayout; +import com.smartgwt.client.widgets.layout.VLayout; + +import de.intevation.flys.client.shared.model.Data; +import de.intevation.flys.client.shared.model.DataItem; +import de.intevation.flys.client.shared.model.DataList; +import de.intevation.flys.client.shared.model.DefaultData; +import de.intevation.flys.client.shared.model.DefaultDataItem; + + +/** + * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> + */ +public class BooleanPanel extends AbstractUIProvider { + + public static final String FIELD_NAME = "boolean_field"; + + protected DynamicForm form; + + protected String dataName; + + + @Override + public Canvas create(DataList dataList) { + Data data = dataList.get(0); + DataItem[] items = data.getItems(); + + this.dataName = data.getLabel(); + + VLayout layout = new VLayout(); + Label label = new Label(data.getDescription()); + + layout.setMembersMargin(10); + layout.setHeight(35); + label.setHeight(35); + + layout.addMember(label); + layout.addMember(createForm(items[0].getLabel())); + layout.addMember(getNextButton()); + + return layout; + } + + + protected Canvas createForm() { + return createForm(null); + } + + + protected Canvas createForm(String title) { + HLayout layout = new HLayout(); + layout.setMembersMargin(10); + + if (title != null && title.length() > 0) { + Label label = new Label(title); + label.setHeight(25); + layout.addMember(label); + } + + form = new DynamicForm(); + layout.addMember(form); + + CheckboxItem item = new CheckboxItem(FIELD_NAME); + item.setShowTitle(false); + item.setShowLabel(false); + + form.setFields(item); + + return layout; + } + + + @Override + public Canvas createOld(DataList dataList) { + Data data = dataList.get(0); + DataItem[] items = data.getItems(); + + HLayout layout = new HLayout(); + Label label = new Label(dataList.getLabel()); + Label value = new Label(items[0].getLabel()); + + layout.setHeight(35); + layout.setWidth(400); + label.setWidth(200); + + layout.addMember(label); + layout.addMember(value); + layout.addMember(getBackButton(dataList.getState())); + + return layout; + } + + + @Override + protected Data[] getData() { + GWT.log("+++ RETURN DATA FOR STATE: " + dataName + " +++"); + String value = "TODO:FIND VALUE"; + DataItem item = new DefaultDataItem(dataName, dataName, value); + return new Data[] { new DefaultData( + dataName, null, null, new DataItem[] { item }) }; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :