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: gernotbelger@9220: import java.util.ArrayList; gernotbelger@9220: import java.util.List; 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: gernotbelger@9220: import com.google.gwt.core.client.GWT; gernotbelger@9220: import com.smartgwt.client.widgets.Canvas; gernotbelger@9220: import com.smartgwt.client.widgets.Label; gernotbelger@9220: import com.smartgwt.client.widgets.layout.HLayout; gernotbelger@9220: import com.smartgwt.client.widgets.layout.VLayout; rrenkert@5311: gernotbelger@9220: public class HWSDatacagePanel extends DatacagePanel { rrenkert@5311: gernotbelger@9220: private static final long serialVersionUID = 1L; rrenkert@5311: gernotbelger@9220: private static final String OUT = "floodmap_hws_panel"; rrenkert@5311: gernotbelger@9220: private static final String PARAMETERS = "hws:true;load-system:true"; gernotbelger@9220: gernotbelger@9220: public HWSDatacagePanel(final User user) { gernotbelger@9220: super(user, OUT, PARAMETERS, true); rrenkert@5311: } rrenkert@5311: rrenkert@5311: @Override rrenkert@5311: public List validate() { gernotbelger@9220: final List errors = new ArrayList(); rrenkert@5311: rrenkert@5311: return errors; rrenkert@5311: } rrenkert@5311: rrenkert@5311: @Override gernotbelger@9220: public Canvas createOld(final DataList dataList) { rrenkert@5311: GWT.log("old datacage##########################################"); gernotbelger@9220: final HLayout layout = new HLayout(); gernotbelger@9220: final VLayout vLayout = new VLayout(); rrenkert@5311: layout.setWidth("400px"); rrenkert@5311: gernotbelger@9220: final Label label = new Label(dataList.getLabel()); rrenkert@5311: label.setWidth("200px"); rrenkert@5311: gernotbelger@9220: final int size = dataList.size(); rrenkert@5311: for (int i = 0; i < size; i++) { gernotbelger@9220: final Data data = dataList.get(i); gernotbelger@9220: final DataItem[] items = data.getItems(); rrenkert@5311: gernotbelger@9220: for (final DataItem item : items) { gernotbelger@9220: final 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: gernotbelger@9220: final 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: @Override rrenkert@5311: protected Data[] getData() { gernotbelger@9220: final String[] selection = getSelectionTitles(); rrenkert@5311: String result = ""; rrenkert@5311: boolean first = true; rrenkert@5311: if (selection != null) { gernotbelger@9220: for (final String record : selection) { rrenkert@5311: if (first) { rrenkert@5311: result += record; rrenkert@5311: first = false; gernotbelger@9220: } else { rrenkert@5311: result += ";" + record; rrenkert@5311: } rrenkert@5311: } rrenkert@5311: } rrenkert@5311: if (result.length() == 0) { rrenkert@5318: result = MSG.notselected(); rrenkert@5311: } gernotbelger@9220: final Data[] data = new Data[1]; gernotbelger@9220: final DataItem item = new DefaultDataItem("uesk.hws", "uesk.hws", result); gernotbelger@9220: data[0] = new DefaultData("uesk.hws", null, null, new DataItem[] { item }); rrenkert@5311: rrenkert@5311: return data; rrenkert@5311: } gernotbelger@9220: }