Mercurial > dive4elements > river
diff gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ParameterMatrixPanel.java @ 9390:f575ff573cbb
"Name der Peilung" columname minfo.
author | gernotbelger |
---|---|
date | Thu, 09 Aug 2018 15:22:31 +0200 |
parents | 5e38e2924c07 |
children | 2da486c7c05f |
line wrap: on
line diff
--- a/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ParameterMatrixPanel.java Thu Aug 09 12:03:30 2018 +0200 +++ b/gwt-client/src/main/java/org/dive4elements/river/client/client/ui/ParameterMatrixPanel.java Thu Aug 09 15:22:31 2018 +0200 @@ -8,13 +8,10 @@ package org.dive4elements.river.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 com.smartgwt.client.widgets.layout.LayoutSpacer; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; import org.dive4elements.river.client.client.FLYSConstants; import org.dive4elements.river.client.shared.model.Data; @@ -26,10 +23,12 @@ import org.dive4elements.river.client.shared.model.MultiAttributeData; import org.dive4elements.river.client.shared.model.StringOptionsData; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +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.LayoutSpacer; +import com.smartgwt.client.widgets.layout.VLayout; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> @@ -42,33 +41,34 @@ protected FLYSConstants MESSAGES = GWT.create(FLYSConstants.class); private ParameterMatrix matrix; + private final String itemnameColTitle; + + public ParameterMatrixPanel(final String itemNameColTitle) { + this.itemnameColTitle = itemNameColTitle; + } @Override protected Data[] getData() { - Map<String, List<String>> selection = matrix.getSelection(); - Set<Map.Entry<String, List<String>>> entries = selection.entrySet(); + final Map<String, List<String>> selection = this.matrix.getSelection(); + final Set<Map.Entry<String, List<String>>> entries = selection.entrySet(); - Data[] list = new Data[matrix.getColumnNames().size()]; + final Data[] list = new Data[this.matrix.getColumnNames().size()]; int i = 0; - for (Map.Entry<String, List<String>> entry: entries) { - String value = buildValueString(entry.getValue()); + for (final Map.Entry<String, List<String>> entry : entries) { + final String value = buildValueString(entry.getValue()); - DataItem item = new DefaultDataItem( - entry.getKey(), - null, - value); + final DataItem item = new DefaultDataItem(entry.getKey(), null, value); - list[i++] = new DefaultData( - entry.getKey(), null, null, new DataItem[] { item }); + list[i++] = new DefaultData(entry.getKey(), null, null, new DataItem[] { item }); } // To delete old values already given, construct empty ones // for all not-specified options. - for (String colName : matrix.getColumnNames()) { + for (final String colName : this.matrix.getColumnNames()) { boolean found = false; - for (Data data : list) { + for (final Data data : list) { if (data != null && data.getLabel().equals(colName)) { found = true; break; @@ -76,21 +76,19 @@ } if (!found) { // Add an empty data for this. - list[i++] = new DefaultData( - colName, null, null, new DataItem[] { }); + list[i++] = new DefaultData(colName, null, null, new DataItem[] {}); } } return list; } - - protected String buildValueString(List<String> values) { - StringBuilder sb = new StringBuilder(); + protected String buildValueString(final List<String> values) { + final StringBuilder sb = new StringBuilder(); boolean first = true; - for (String value: values) { + for (final String value : values) { if (!first) { sb.append(";"); } @@ -103,40 +101,37 @@ return sb.toString(); } - /** Canvas to show in non-edit mode. */ @Override - public Canvas createOld(DataList dataList) { - HLayout layout = new HLayout(); - VLayout vLayout = new VLayout(); + public Canvas createOld(final DataList dataList) { + final HLayout layout = new HLayout(); + final VLayout vLayout = new VLayout(); layout.setWidth(300); vLayout.setWidth(280); for (int i = 0, n = dataList.size(); i < n; i++) { - HLayout row = new HLayout(); - VLayout cols = new VLayout(); + final HLayout row = new HLayout(); + final VLayout cols = new VLayout(); row.setWidth(300); cols.setWidth(100); - Data data = dataList.get(i); - DataItem[] items = data.getItems(); + final Data data = dataList.get(i); + final DataItem[] items = data.getItems(); - Label parameter = new Label(data.getDescription()); + final Label parameter = new Label(data.getDescription()); parameter.setWidth(200); - for (int j = 0, m = items.length; j < m; j++) { - DataItem item = items[j]; - Label value = new Label(item.getLabel()); + for (final DataItem item : items) { + final Label value = new Label(item.getLabel()); - value.setValign( - com.smartgwt.client.types.VerticalAlignment.TOP); + value.setValign(com.smartgwt.client.types.VerticalAlignment.TOP); value.setWidth(130); value.setHeight(15); cols.addMember(value); - LayoutSpacer spacer = new LayoutSpacer(); + final LayoutSpacer spacer = new LayoutSpacer(); spacer.setHeight(5); cols.addMember(spacer); } @@ -147,7 +142,7 @@ vLayout.addMember(row); } - Canvas back = getBackButton(dataList.getState()); + final Canvas back = getBackButton(dataList.getState()); layout.addMember(vLayout); layout.addMember(back); @@ -155,73 +150,66 @@ return layout; } - /** Create the main canvas in the "editing" mode. */ @Override - public Canvas create(DataList dataList) { - VLayout v = new VLayout(); + public Canvas create(final DataList dataList) { + final VLayout v = new VLayout(); v.addMember(createTitle(dataList)); - matrix = new ParameterMatrix(); + this.matrix = new ParameterMatrix(this.itemnameColTitle); - for (Data data: dataList.getAll()) { + for (final Data data : dataList.getAll()) { if (data instanceof IntegerOptionsData) { - matrix.addColumn((IntegerOptionsData) data); - } - else if (data instanceof StringOptionsData) { - matrix.addColumn((StringOptionsData) data); - } - else if (data instanceof MultiAttributeData) { - matrix.addColumn((MultiAttributeData)data); + this.matrix.addColumn((IntegerOptionsData) data); + } else if (data instanceof StringOptionsData) { + this.matrix.addColumn((StringOptionsData) data); + } else if (data instanceof MultiAttributeData) { + this.matrix.addColumn((MultiAttributeData) data); } } // If too many items are shown, show it in the helper Panel. // TODO its not about the datalist, but about the "rows" in the data. if (dataList.getAll().size() > 5) { - v.addMember(matrix.create(false)); - } - else { - helperContainer.addMember(matrix.create(true)); + v.addMember(this.matrix.create(false)); + } else { + this.helperContainer.addMember(this.matrix.create(true)); } v.addMember(getNextButton()); return v; } - /** Reaturns a label with description of first Data. */ - protected Canvas createTitle(DataList dataList) { - Data data = dataList.get(0); - Label label = new Label(data.getDescription()); + protected Canvas createTitle(final DataList dataList) { + final Data data = dataList.get(0); + final Label label = new Label(data.getDescription()); label.setHeight(35); return label; } - /** Selection shall not be empty. */ @Override public List<String> validate() { - GWT.log ("validation. validation. validation. "); - List<String> errors = new ArrayList<String>(); + GWT.log("validation. validation. validation. "); + final List<String> errors = new ArrayList<String>(); // Early stop on one (only) error. boolean ok = false; - for (Map.Entry<String, List<String>> entry: - matrix.getSelection().entrySet() - ) { - /* single entries are allowed!! - if (entry.getValue() == null || entry.getValue().size() == 0) { - errors.add(MESSAGES.error_values_needed()); - return errors; - } - */ + for (final Map.Entry<String, List<String>> entry : this.matrix.getSelection().entrySet()) { + /* + * single entries are allowed!! + * if (entry.getValue() == null || entry.getValue().size() == 0) { + * errors.add(MESSAGES.error_values_needed()); + * return errors; + * } + */ if (entry.getValue() != null && entry.getValue().size() > 0) { ok = true; } } if (!ok) { - errors.add(MESSAGES.error_values_needed()); + errors.add(this.MESSAGES.error_values_needed()); } return errors; }