annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/bundu/BunduWstWQPanel.java @ 9290:3729434f6dec

UD/Q verwechselt
author gernotbelger
date Tue, 24 Jul 2018 11:12:46 +0200
parents 82c67b859aa7
children e6958f0e72fa
rev   line source
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
2 * Software engineering by Intevation GmbH
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
3 *
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
6 * documentation coming with Dive4Elements River for details.
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
7 */
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
8
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
9 package org.dive4elements.river.client.client.ui.bundu;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
10
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
11 import java.util.ArrayList;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
12 import java.util.LinkedHashMap;
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
13 import java.util.List;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
14 import java.util.Map;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
15
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
16 import org.dive4elements.river.client.client.services.DynamicMainValuesService;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
17 import org.dive4elements.river.client.client.services.DynamicMainValuesServiceAsync;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
18 import org.dive4elements.river.client.client.ui.AbstractWQAdaptedInputPanel;
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
19 import org.dive4elements.river.client.client.ui.DoubleArrayPanel;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
20 import org.dive4elements.river.client.client.ui.wq.QDTable;
9277
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
21 import org.dive4elements.river.client.shared.model.Data;
9278
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
22 import org.dive4elements.river.client.shared.model.DataItem;
9277
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
23 import org.dive4elements.river.client.shared.model.DataList;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
24 import org.dive4elements.river.client.shared.model.DefaultData;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
25 import org.dive4elements.river.client.shared.model.DefaultDataItem;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
26 import org.dive4elements.river.client.shared.model.WQDataItem;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
27 import org.dive4elements.river.client.shared.model.WQInfoObject;
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
28
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
29 import com.google.gwt.core.client.GWT;
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
30 import com.google.gwt.i18n.client.NumberFormat;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
31 import com.google.gwt.user.client.rpc.AsyncCallback;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
32 import com.smartgwt.client.types.TitleOrientation;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
33 import com.smartgwt.client.types.VerticalAlignment;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
34 import com.smartgwt.client.types.Visibility;
9277
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
35 import com.smartgwt.client.widgets.Canvas;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
36 import com.smartgwt.client.widgets.Label;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
37 import com.smartgwt.client.widgets.form.DynamicForm;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
38 import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
39 import com.smartgwt.client.widgets.form.fields.TextItem;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
40 import com.smartgwt.client.widgets.form.fields.events.ChangeEvent;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
41 import com.smartgwt.client.widgets.form.fields.events.ChangeHandler;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
42 import com.smartgwt.client.widgets.form.validator.IntegerRangeValidator;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
43 import com.smartgwt.client.widgets.layout.HLayout;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
44 import com.smartgwt.client.widgets.layout.VLayout;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
45 import com.smartgwt.client.widgets.tab.Tab;
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
46
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
47 /**
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
48 * This UIProvider creates a widget to enter W or Q data for
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
49 * Fixation analysis
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
50 *
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
51 * @author <a href="mailto:aheinecke@intevation.de">Andre Heinecke</a>
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
52 */
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
53 public class BunduWstWQPanel extends AbstractWQAdaptedInputPanel {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
54
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
55 private static final long serialVersionUID = -1L;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
56
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
57 private static enum mode {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
58 Q, UD
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
59 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
60
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
61 /** Service to fetch W/Q MainValues. */
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
62 private final DynamicMainValuesServiceAsync mainValueService = GWT.create(DynamicMainValuesService.class);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
63
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
64 private final RadioGroupItem radiogroup = new RadioGroupItem();
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
65
9278
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
66 private int bezugsjahr = 0;
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
67
9278
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
68 private int qSeriesLength = 0;
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
69
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
70 private Canvas list;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
71
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
72 private final DynamicForm udForm = new DynamicForm();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
73
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
74 private final TextItem udInputItem = new TextItem();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
75
9277
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
76 @Override
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
77 protected void beforeCreate(final DataList data) {
9278
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
78 for (final Data container : data.getAll()) {
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
79 final DataItem[] items = container.getItems();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
80 if (items != null) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
81 for (final DataItem item : items) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
82 if ("ignore_bezugsjahr".equals(item.getLabel())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
83 this.bezugsjahr = Integer.valueOf(item.getStringValue());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
84 } else if ("ignore_q_series_length".equals(item.getLabel())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
85 this.qSeriesLength = Integer.valueOf(item.getStringValue());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
86 }
9278
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
87 }
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
88 }
717c9dc1859f datatransfer bezugsjahr, qserieslength
gernotbelger
parents: 9277
diff changeset
89 }
9277
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
90 }
2323d005f9a5 compile error fix
gernotbelger
parents: 9276
diff changeset
91
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
92 @Override
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
93 protected void afterCreate() {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
94 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
95
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
96 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
97 protected Canvas createWidget(final DataList dataList) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
98 final VLayout layout = new VLayout();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
99 final Canvas mode = createMode(dataList);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
100
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
101 this.list = createList(dataList);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
102
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
103 this.udInputItem.setShowTitle(false);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
104 this.udInputItem.setWidth(120);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
105 final IntegerRangeValidator validator = new IntegerRangeValidator();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
106 validator.setMax(364);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
107 validator.setMin(0);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
108 validator.setErrorMessage(this.MSG.bundu_bezugswst_validation_range());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
109 this.udInputItem.setRequiredMessage(this.MSG.bundu_bezugswst_validation_range());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
110 this.udInputItem.setValidators(validator);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
111 this.udInputItem.setValidateOnChange(true);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
112 this.udForm.setFields(this.udInputItem);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
113
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
114 final List<WQDataItem> items = getWQItems(dataList);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
115 final int listHeight = ROW_HEIGHT * items.size();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
116
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
117 mode.setHeight(25);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
118 mode.setWidth(200);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
119
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
120 layout.addMember(mode);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
121 layout.addMember(this.list);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
122 layout.addMember(this.udForm);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
123 layout.setHeight(25 + listHeight);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
124 layout.setWidth(350);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
125 enableQ();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
126 return layout;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
127 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
128
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
129 /**
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
130 * Create radio button for switching
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
131 * Radiobutton-change also triggers helper panel tab selection.
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
132 */
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
133
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
134 private Canvas createMode(final DataList dataList) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
135 this.radiogroup.setShowTitle(false);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
136 this.radiogroup.setVertical(false);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
137 this.radiogroup.setWidth(200);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
138
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
139 final LinkedHashMap<String, String> wqValues = new LinkedHashMap<String, String>();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
140 wqValues.put(String.valueOf(mode.Q), this.MSG.wqQatGauge());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
141 wqValues.put(String.valueOf(mode.UD), this.MSG.bundu_bezugswst_mode_ud());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
142 this.radiogroup.setValueMap(wqValues);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
143 this.radiogroup.setValue(String.valueOf(mode.Q));
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
144
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
145 this.modes = new DynamicForm();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
146 this.modes.setFields(this.radiogroup);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
147 this.modes.setWidth(200);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
148 this.radiogroup.addChangeHandler(new ChangeHandler() {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
149 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
150 public void onChange(final ChangeEvent e) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
151
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
152 final String value = e.getValue().toString();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
153 if (value.equals(String.valueOf(mode.UD))) {
9290
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
154 enableUD();
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
155 } else if (value.equals(String.valueOf(mode.Q))) {
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
156 enableQ();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
157 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
158 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
159 });
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
160 return this.modes;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
161 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
162
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
163 private void enableUD() {
9290
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
164 BunduWstWQPanel.this.list.setVisibility(Visibility.HIDDEN);
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
165 BunduWstWQPanel.this.udForm.setVisibility(Visibility.VISIBLE);
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
166 BunduWstWQPanel.this.tabs.disable();
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
167 }
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
168
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
169 private void enableQ() {
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
170 BunduWstWQPanel.this.list.setVisibility(Visibility.VISIBLE);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
171 BunduWstWQPanel.this.udForm.setVisibility(Visibility.HIDDEN);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
172 BunduWstWQPanel.this.tabs.enable();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
173 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
174
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
175 private final String getMode() {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
176 return (String) this.radiogroup.getValue();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
177 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
178
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
179 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
180 public Data[] getData() {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
181 final Data[] data = new Data[2];
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
182 final String modeStr = getMode();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
183 final DataItem item = new DefaultDataItem("bundu.wst.mode", "bundu.wst.mode", modeStr);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
184 final Data modeData = new DefaultData("bundu.wst.mode", null, null, new DataItem[] { item });
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
185 data[0] = modeData;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
186 if (modeStr.equals(mode.Q.toString())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
187 data[1] = getWQValues("wq_values");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
188 } else if (modeStr.equals(mode.UD.toString())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
189 final String udValue = this.udInputItem.getValueAsString(); // in validate findet der int-check statt; er verhindert ein weitergehen, falls der Wert
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
190 // nicht int-kompatibel ist
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
191 final DataItem itemV = new DefaultDataItem("bundu.wst.ud_value", "bundu.wst.ud_value", udValue);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
192 data[1] = new DefaultData("bundu.wst.ud_value", null, null, new DataItem[] { itemV });
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
193 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
194 return data;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
195 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
196
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
197 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
198 protected void createTabs() {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
199 for (int i = 0; i < this.gaugeRanges.size(); i++) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
200 final Tab qTab = new Tab(this.MSG.wq_table_q());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
201 final QDTable qdTable = new QDTable();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
202 this.qdTables.add(qdTable);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
203 qdTable.showSelect();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
204 qTab.setPane(qdTable);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
205 this.tabs.addTab(qTab, i);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
206 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
207 this.tabs.setSelectedTab(0);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
208 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
209
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
210 private Canvas createList(final DataList dataList) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
211 final VLayout layout = new VLayout();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
212
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
213 final List<WQDataItem> items = getWQItems(dataList);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
214
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
215 int i = 0;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
216 for (final DataItem item : items) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
217 if (item instanceof WQDataItem) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
218 final String title = item.getLabel();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
219 final String label = item.getStringValue();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
220
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
221 this.tabs.getTab(i).setTitle(this.tabs.getTab(i).getTitle() + " (" + label + ")");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
222
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
223 final DoubleArrayPanel dap = new DoubleArrayPanel(label, null, this, null, TitleOrientation.LEFT);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
224 this.wqranges.put(title, dap);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
225 this.doubleArrayPanels.add(dap);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
226 if (item instanceof WQDataItem) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
227 final WQDataItem wq = (WQDataItem) item;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
228 final double[] mmQ = wq.getQRange();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
229 this.qranges.put(title, mmQ);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
230
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
231 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
232 layout.addMember(dap);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
233 i++;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
234 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
235 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
236
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
237 layout.setHeight(items.size() * ROW_HEIGHT);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
238
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
239 return layout;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
240 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
241
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
242 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
243 public List<String> validate() {
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
244 final List<String> errors = new ArrayList<String>();
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
245 if (getMode().equals(mode.Q.toString())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
246 errors.addAll(this.validateRange(this.qranges));
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
247 } else if (getMode().equals(mode.UD.toString())) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
248 try {
9290
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
249 if (!this.udInputItem.validate()) {
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
250 errors.add(this.udInputItem.getRequiredMessage());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
251 }
9290
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
252 final int test = Integer.valueOf(this.udInputItem.getValueAsString());// irgendwie klappt die validator-validierung nur bei der eingabe von
3729434f6dec UD/Q verwechselt
gernotbelger
parents: 9288
diff changeset
253 // ganzzahlen :-(
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
254 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
255 catch (final NumberFormatException e) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
256 errors.add(this.MSG.error_invalid_integer());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
257 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
258 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
259 return errors;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
260 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
261
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
262 private List<String> validateRange(final Map<String, double[]> ranges) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
263 final List<String> errors = new ArrayList<String>();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
264
9276
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
265 final NumberFormat nf = NumberFormat.getDecimalFormat();
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
266
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
267 for (final DoubleArrayPanel dap : this.wqranges.values()) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
268
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
269 if (!dap.validateForm()) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
270 errors.add(this.MSG.error_invalid_double_value());
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
271 return errors;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
272 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
273
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
274 int idx = 0;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
275
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
276 final double[] values = dap.getInputValues();
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
277
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
278 final double[] good = new double[values.length];
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
279
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
280 for (final double value : values) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
281 if (value <= 0) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
282 String tmp = this.MSG.error_validate_positive();
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
283 tmp = tmp.replace("$1", nf.format(value));
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
284 errors.add(tmp);
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
285 } else {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
286 good[idx++] = value;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
287 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
288 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
289
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
290 final double[] justGood = new double[idx];
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
291 for (int i = 0; i < justGood.length; i++) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
292 justGood[i] = good[i];
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
293 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
294
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
295 if (!errors.isEmpty()) {
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
296 dap.setValues(justGood);
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
297 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
298 }
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
299 return errors;
3141f0e7314e clone for bundu.ws.wq
gernotbelger
parents:
diff changeset
300 }
9288
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
301
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
302 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
303 public Canvas createOld(final DataList dataList) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
304 final List<Data> all = dataList.getAll();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
305 final Data wqData = getData(all, "wq_values");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
306 final Data wqMode = getData(all, "bundu.wst.mode");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
307 final Data udValue = getData(all, "bundu.wst.ud_value");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
308
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
309 final boolean isQ = wqMode.getItems()[0].getStringValue().equals(String.valueOf(mode.Q));
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
310 final Canvas back = getBackButton(dataList.getState());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
311
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
312 final HLayout valLayout = new HLayout();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
313 final HLayout modeLayout = new HLayout();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
314 final VLayout vlayout = new VLayout();
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
315
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
316 final Label wqLabel = new Label(dataList.getLabel());
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
317 final Label modeLabel = new Label("");
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
318
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
319 wqLabel.setValign(VerticalAlignment.TOP);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
320
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
321 wqLabel.setWidth(200);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
322 wqLabel.setHeight(25);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
323 modeLabel.setHeight(25);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
324 modeLabel.setWidth(200);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
325
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
326 valLayout.addMember(wqLabel);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
327 if (isQ) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
328 valLayout.addMember(createOldWQValues(wqData, true));
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
329 } else {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
330 valLayout.addMember(new Label(udValue.getItems()[0].getStringValue() + " [d/a]"));
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
331 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
332 valLayout.addMember(back);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
333 modeLayout.addMember(modeLabel);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
334
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
335 vlayout.addMember(valLayout);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
336 vlayout.addMember(modeLayout);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
337
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
338 return vlayout;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
339 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
340
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
341 @Override
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
342 protected void callMainValuesService(final String locale, final String river, final double start, final double end,
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
343 final AsyncCallback<WQInfoObject[]> cb) {
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
344
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
345 final int startYear = this.bezugsjahr - this.qSeriesLength;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
346 final int endYear = this.bezugsjahr;
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
347
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
348 this.mainValueService.getWQInfo(locale, river, start, end, startYear, endYear, cb);
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
349 }
82c67b859aa7 bundu.bezugswst worklflow incl. service impl for mainValues to be calculated
gernotbelger
parents: 9278
diff changeset
350 }

http://dive4elements.wald.intevation.org