Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/DatacageTwinPanel.java @ 867:6a2ed979dfcf
Added new UIProvider "DatacageTwinPanel", pass user via UIProviderFactory.
flys-client/trunk@2674 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Thu, 08 Sep 2011 11:12:21 +0000 |
parents | |
children | 39a39e9be5af |
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/DatacageTwinPanel.java Thu Sep 08 11:12:21 2011 +0000 @@ -0,0 +1,90 @@ +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.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.DefaultData; +import de.intevation.flys.client.shared.model.DefaultDataItem; +import de.intevation.flys.client.shared.model.DataList; +import de.intevation.flys.client.shared.model.User; + +import de.intevation.flys.client.client.FLYSConstants; + +// TODO Probably better to branch off AbstractUIProvider. +public class DatacageTwinPanel extends TextProvider { + + protected static FLYSConstants MSG = GWT.create(FLYSConstants.class); + + protected String dataName; + + protected User user; + + + public DatacageTwinPanel(User user) { + super(); + this.user = user; + } + + + @Override + public Canvas create(DataList dataList) { + GWT.log("createData()"); + Data data = dataList.get(0); + this.dataName = data.getLabel(); + + Canvas label = new Label(data.getDescription()); + Canvas widget = createWidget(); + Canvas submit = getNextButton(); + + VLayout layout = new VLayout(); + label.setHeight(50); + DatacageWidget baseDataCage = new DatacageWidget(this.artifact, user); + DatacageWidget modDataCage = new DatacageWidget(this.artifact, user); + baseDataCage.setHeight(250); + modDataCage.setHeight(250); + layout.addMember(baseDataCage); + layout.addMember(modDataCage); + + /*layout.addMember(label);*/ + layout.addMember(widget); + layout.addMember(submit); + layout.setMembersMargin(10); + this.helperContainer.addMember(layout); + +// return layout; + return new VLayout(); + } + + + public Canvas createWidget() { + HLayout layout = new HLayout(); + layout.setMembersMargin(10); + + layout.addMember(createForm()); + layout.addMember(new DatacageWidget()); + // TODO: fetch current user! + // TODO: fetch collection view! + /*layout.addMember( + new DatacageButton( + MSG.databasket(), artifact, null, null)); + */ + + return layout; + } + + + @Override + protected Data[] getData() { + 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 :