Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/client/ui/ParameterMatrixPanel.java @ 2523:885b02130528
Implemented ParameterMatrixPanel.getData().
flys-client/trunk@4410 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 15 May 2012 14:21:39 +0000 |
parents | fe177e7f61d1 |
children | 39cf246b28c4 |
line wrap: on
line source
package de.intevation.flys.client.client.ui; import java.util.List; import java.util.Map; import java.util.Set; import com.google.gwt.core.client.GWT; import com.smartgwt.client.types.FieldType; import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.Label; 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; import de.intevation.flys.client.shared.model.IntegerOptionsData; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class ParameterMatrixPanel extends AbstractUIProvider { private ParameterMatrix matrix; @Override protected Data[] getData() { Map<String, List<String>> selection = matrix.getSelection(); Set<Map.Entry<String, List<String>>> entries = selection.entrySet(); Data[] list = new Data[selection.size()]; int i = 0; for (Map.Entry<String, List<String>> entry: entries) { String value = buildValueString(entry.getValue()); DataItem item = new DefaultDataItem( entry.getKey(), null, value); list[i++] = new DefaultData( entry.getKey(), null, null, new DataItem[] { item }); } return list; } protected String buildValueString(List<String> values) { StringBuilder sb = new StringBuilder(); boolean first = true; for (String value: values) { if (!first) { sb.append(";"); } sb.append(value); first = false; } return sb.toString(); } @Override public Canvas createOld(DataList dataList) { GWT.log("TODO: IMPLEMENT RadioPanel.createOld()"); return new Label("TODO: DISPLAY INSERTED VALUES"); } @Override public Canvas create(DataList dataList) { VLayout v = new VLayout(); v.addMember(createTitle(dataList)); matrix = new ParameterMatrix(); for (Data data: dataList.getAll()) { if (data instanceof IntegerOptionsData) { matrix.addColumn((IntegerOptionsData) data); } } v.addMember(matrix.create()); v.addMember(getNextButton()); return v; } protected Canvas createTitle(DataList dataList) { Label label = new Label(dataList.getState()); label.setHeight(35); return label; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :