felix@867: package de.intevation.flys.client.client.ui; felix@867: felix@867: import com.google.gwt.core.client.GWT; felix@867: felix@867: import com.smartgwt.client.widgets.Canvas; felix@867: import com.smartgwt.client.widgets.Label; felix@867: import com.smartgwt.client.widgets.layout.HLayout; felix@867: import com.smartgwt.client.widgets.layout.VLayout; felix@867: felix@867: import de.intevation.flys.client.shared.model.Data; felix@867: import de.intevation.flys.client.shared.model.DataItem; felix@867: import de.intevation.flys.client.shared.model.DefaultData; felix@867: import de.intevation.flys.client.shared.model.DefaultDataItem; felix@867: import de.intevation.flys.client.shared.model.DataList; felix@867: import de.intevation.flys.client.shared.model.User; felix@867: felix@867: import de.intevation.flys.client.client.FLYSConstants; felix@867: felix@867: // TODO Probably better to branch off AbstractUIProvider. felix@867: public class DatacageTwinPanel extends TextProvider { felix@867: felix@867: protected static FLYSConstants MSG = GWT.create(FLYSConstants.class); felix@867: felix@867: protected String dataName; felix@867: felix@867: protected User user; felix@867: felix@867: felix@867: public DatacageTwinPanel(User user) { felix@867: super(); felix@867: this.user = user; felix@867: } felix@867: felix@867: felix@867: @Override felix@867: public Canvas create(DataList dataList) { felix@867: GWT.log("createData()"); felix@867: Data data = dataList.get(0); felix@867: this.dataName = data.getLabel(); felix@867: felix@867: Canvas label = new Label(data.getDescription()); felix@867: Canvas widget = createWidget(); felix@867: Canvas submit = getNextButton(); felix@867: felix@867: VLayout layout = new VLayout(); felix@867: label.setHeight(50); felix@867: DatacageWidget baseDataCage = new DatacageWidget(this.artifact, user); felix@867: DatacageWidget modDataCage = new DatacageWidget(this.artifact, user); felix@867: baseDataCage.setHeight(250); felix@867: modDataCage.setHeight(250); felix@867: layout.addMember(baseDataCage); felix@867: layout.addMember(modDataCage); felix@867: felix@867: /*layout.addMember(label);*/ felix@867: layout.addMember(widget); felix@867: layout.addMember(submit); felix@867: layout.setMembersMargin(10); felix@867: this.helperContainer.addMember(layout); felix@867: felix@867: // return layout; felix@867: return new VLayout(); felix@867: } felix@867: felix@867: felix@867: public Canvas createWidget() { felix@867: HLayout layout = new HLayout(); felix@867: layout.setMembersMargin(10); felix@867: felix@867: layout.addMember(createForm()); felix@867: layout.addMember(new DatacageWidget()); felix@867: // TODO: fetch current user! felix@867: // TODO: fetch collection view! felix@867: /*layout.addMember( felix@867: new DatacageButton( felix@867: MSG.databasket(), artifact, null, null)); felix@867: */ felix@867: felix@867: return layout; felix@867: } felix@867: felix@867: felix@867: @Override felix@867: protected Data[] getData() { felix@867: String value = "TODO:FIND VALUE"; felix@867: DataItem item = new DefaultDataItem(dataName, dataName, value); felix@867: return new Data[] { new DefaultData( felix@867: dataName, null, null, new DataItem[] { item }) }; felix@867: } felix@867: } felix@867: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :