teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5993: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5993: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.client.ui; rrenkert@5311: teichmann@5447: import com.google.gwt.core.client.GWT; rrenkert@5311: rrenkert@5311: import com.smartgwt.client.widgets.Canvas; rrenkert@5311: import com.smartgwt.client.widgets.Label; teichmann@5447: rrenkert@5311: import com.smartgwt.client.widgets.layout.HLayout; rrenkert@5311: import com.smartgwt.client.widgets.layout.VLayout; rrenkert@5311: teichmann@5835: import org.dive4elements.river.client.shared.model.Data; teichmann@5835: import org.dive4elements.river.client.shared.model.DataItem; teichmann@5835: import org.dive4elements.river.client.shared.model.DataList; teichmann@5835: import org.dive4elements.river.client.shared.model.DefaultData; teichmann@5835: import org.dive4elements.river.client.shared.model.DefaultDataItem; teichmann@5835: import org.dive4elements.river.client.shared.model.User; rrenkert@5311: teichmann@5447: import java.util.ArrayList; teichmann@5447: import java.util.List; teichmann@5447: rrenkert@5311: rrenkert@5311: public class HWSDatacagePanel rrenkert@5311: extends DatacagePanel rrenkert@5311: { tom@8298: public static final String OUT = "floodmap_hws_panel"; rrenkert@5311: public static final String PARAMETERS = "hws:true;load-system:true"; rrenkert@5311: rrenkert@5311: rrenkert@5311: public HWSDatacagePanel() { rrenkert@5311: super(); rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: public HWSDatacagePanel(User user) { rrenkert@5311: super(user); rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: protected void createWidget() { rrenkert@5311: super.createWidget(); rrenkert@5311: widget.setIsMutliSelectable(true); rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: public String getOuts() { rrenkert@5311: return OUT; rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: public String getParameters() { rrenkert@5311: return PARAMETERS; rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: public List validate() { rrenkert@5311: List errors = new ArrayList(); rrenkert@5311: rrenkert@5311: return errors; rrenkert@5311: } rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: public Canvas createOld(DataList dataList) { rrenkert@5311: GWT.log("old datacage##########################################"); rrenkert@5311: HLayout layout = new HLayout(); rrenkert@5311: VLayout vLayout = new VLayout(); rrenkert@5311: layout.setWidth("400px"); rrenkert@5311: rrenkert@5311: Label label = new Label(dataList.getLabel()); rrenkert@5311: label.setWidth("200px"); rrenkert@5311: rrenkert@5311: int size = dataList.size(); rrenkert@5311: for (int i = 0; i < size; i++) { rrenkert@5311: Data data = dataList.get(i); rrenkert@5311: DataItem[] items = data.getItems(); rrenkert@5311: rrenkert@5311: for (DataItem item: items) { rrenkert@5311: HLayout hLayout = new HLayout(); rrenkert@5311: rrenkert@5311: hLayout.addMember(label); rrenkert@5311: hLayout.addMember(new Label(item.getLabel())); rrenkert@5311: rrenkert@5311: vLayout.addMember(hLayout); rrenkert@5311: vLayout.setWidth("130px"); rrenkert@5311: } rrenkert@5311: } rrenkert@5311: rrenkert@5311: Canvas back = getBackButton(dataList.getState()); rrenkert@5311: rrenkert@5311: layout.addMember(label); rrenkert@5311: layout.addMember(vLayout); rrenkert@5311: layout.addMember(back); rrenkert@5311: rrenkert@5311: return layout; rrenkert@5311: } rrenkert@5311: rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: protected Data[] getData() { rrenkert@5311: String[] selection = this.widget.getSelectionTitles(); rrenkert@5311: String result = ""; rrenkert@5311: boolean first = true; rrenkert@5311: if (selection != null) { rrenkert@5311: for (String record: selection) { rrenkert@5311: if (first) { rrenkert@5311: result += record; rrenkert@5311: first = false; rrenkert@5311: } rrenkert@5311: else { rrenkert@5311: result += ";" + record; rrenkert@5311: } rrenkert@5311: } rrenkert@5311: } rrenkert@5311: if (result.length() == 0) { rrenkert@5318: result = MSG.notselected(); rrenkert@5311: } rrenkert@5311: Data[] data = new Data[1]; rrenkert@5311: DataItem item = new DefaultDataItem( rrenkert@5311: "uesk.hws", "uesk.hws", result); tom@8856: data[0] = new DefaultData( tom@8856: "uesk.hws", null, null, new DataItem[] {item}); rrenkert@5311: rrenkert@5311: return data; rrenkert@5311: } rrenkert@5311: } teichmann@5447: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :