annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/WQInputPanel.java @ 8624:4f702ea1fd3a

Fix unit displayed in WFree calculation
author Andre Heinecke <andre.heinecke@intevation.de>
date Thu, 26 Mar 2015 11:46:03 +0100
parents 685c2be0541c
children 5e38e2924c07
rev   line source
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5993
ea9eef426962 Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5861
diff changeset
6 * documentation coming with Dive4Elements River for details.
5861
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
172338b1407f GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
9 package org.dive4elements.river.client.client.ui;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
11 import com.google.gwt.core.client.GWT;
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
12 import com.google.gwt.i18n.client.NumberFormat;
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
13 import com.google.gwt.user.client.rpc.AsyncCallback;
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
14
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
15 import com.smartgwt.client.data.Record;
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
16 import com.smartgwt.client.util.SC;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import com.smartgwt.client.widgets.Canvas;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.Label;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 import com.smartgwt.client.widgets.form.DynamicForm;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 import com.smartgwt.client.widgets.form.fields.FormItem;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 import com.smartgwt.client.widgets.form.fields.RadioGroupItem;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22 import com.smartgwt.client.widgets.form.fields.events.BlurEvent;
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
23 import com.smartgwt.client.widgets.form.fields.events.BlurHandler;
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
24 import com.smartgwt.client.widgets.form.fields.events.ChangeEvent;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 import com.smartgwt.client.widgets.form.fields.events.ChangeHandler;
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
26 import com.smartgwt.client.widgets.grid.events.CellClickEvent;
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
27 import com.smartgwt.client.widgets.grid.events.CellClickHandler;
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
28 import com.smartgwt.client.widgets.layout.HLayout;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 import com.smartgwt.client.widgets.layout.VLayout;
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
30 import com.smartgwt.client.widgets.tab.Tab;
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
31 import com.smartgwt.client.widgets.tab.TabSet;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
33 import org.dive4elements.river.client.client.Config;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
34 import org.dive4elements.river.client.client.FLYSConstants;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
35 import org.dive4elements.river.client.client.services.WQInfoService;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
36 import org.dive4elements.river.client.client.services.WQInfoServiceAsync;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
37 import org.dive4elements.river.client.client.ui.wq.QDTable;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
38 import org.dive4elements.river.client.client.ui.wq.WTable;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
39 import org.dive4elements.river.client.shared.model.ArtifactDescription;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
40 import org.dive4elements.river.client.shared.model.Data;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
41 import org.dive4elements.river.client.shared.model.DataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
42 import org.dive4elements.river.client.shared.model.DataList;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
43 import org.dive4elements.river.client.shared.model.DefaultData;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
44 import org.dive4elements.river.client.shared.model.DefaultDataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
45 import org.dive4elements.river.client.shared.model.WQInfoObject;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
46 import org.dive4elements.river.client.shared.model.WQInfoRecord;
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
47
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
48 import java.util.ArrayList;
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
49 import java.util.LinkedHashMap;
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
50 import java.util.List;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
51
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
54 * This UIProvider creates a widget to enter W or Q data.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
55 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 */
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58 public class WQInputPanel
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 extends AbstractUIProvider
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 implements ChangeHandler, BlurHandler
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 {
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
62 private static final long serialVersionUID = 4797387993390350341L;
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
63
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 /** The message class that provides i18n strings.*/
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
65 protected FLYSConstants MESSAGE = GWT.create(FLYSConstants.class);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
67 protected WQInfoServiceAsync wqInfoService =
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
68 GWT.create(WQInfoService.class);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
70 /** The constant field name for choosing w or q mode.*/
1535
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
71 public static final String FIELD_WQ_W_FREE = "WFREE";
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
72
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
73 /** The constant field name for choosing w or q mode.*/
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 public static final String FIELD_WQ = "wq";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 /** The constant field value for W input mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
77 public static final String FIELD_WQ_W = "W";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
78
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
79 /** The constant field value for Q input mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
80 public static final String FIELD_WQ_Q = "Q";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
81
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
82 /** The constant field value for Q input mode.*/
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
83 public static final String FIELD_WQ_Q_FREE = "QFREE";
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
84
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
85 /** The constant field name for choosing single values or range.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
86 public static final String FIELD_MODE = "mode";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
87
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
88 /** The constant field value for single input mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 public static final String FIELD_MODE_SINGLE = "single";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91 /** The constant field value for range input mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
92 public static final String FIELD_MODE_RANGE = "range";
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
93
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 /** The constant value that determines the width of the left panel.*/
596
3f094045d512 Adapted a german string in the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 595
diff changeset
95 public static final int WIDTH_LEFT_UPPER = 400;
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
96
596
3f094045d512 Adapted a german string in the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 595
diff changeset
97 public static final int WIDTH_LEFT_LOWER = 223;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
99 /** The container that manages the w and q panels.*/
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
100 protected HLayout container;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
101
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
102 /** The RadioGroupItem that determines the w/q input mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
103 protected DynamicForm modes;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
104
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
105 /** The min values for the 'from' property in the W-Range input mode.*/
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
106 protected double minW;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
107
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
108 /** The min values for the 'from' property in the Q-Range input mode.*/
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
109 protected double minQ;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
110
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
111 /** The min value for the 'from' property in the free Q-Range input mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
112 protected double minQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
113
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
114 /** The min value for the 'from' property in the free W-Range input mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
115 protected double minWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
116
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
117 /** The max values for the 'from' property in the W-Range input mode.*/
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
118 protected double maxW;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
119
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
120 /** The max values for the 'from' property in the Q-Range input mode.*/
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
121 protected double maxQ;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
122
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
123 /** The max value for the 'from' property in the free Q-Range input mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
124 protected double maxQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
125
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
126 /** The max value for the 'from' property in the free W-Range input mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
127 protected double maxWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
128
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
129 /** The 'from' value entered in the range W mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130 protected double fromW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132 /** The 'to' value entered in the range W mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
133 protected double toW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
134
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
135 /** The 'step' value entered in the range W mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
136 protected double stepW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
138 /** The values entered in the single W mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
139 protected double[] valuesW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
140
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
141 /** The values entered in the single W mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
142 protected double[] valuesWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
143
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
144 /** The 'from' value entered in the range Q mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
145 protected double fromQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
146
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
147 /** The 'from' value entered in the range free Q mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
148 protected double fromQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
149
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
150 /** The 'from' value entered in the range free W mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
151 protected double fromWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
152
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
153 /** The 'to' value entered in the range Q mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
154 protected double toQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
155
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
156 /** The 'to' value entered in the range free Q mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
157 protected double toQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
158
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
159 /** The 'to' value entered in the range free W mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
160 protected double toWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
161
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
162 /** The 'step' value entered in the range Q mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
163 protected double stepQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
164
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
165 /** The 'step' value entered in the range free Q mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
166 protected double stepQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
167
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
168 /** The 'step' value entered in the range free W mode.*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
169 protected double stepWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
170
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
171 /** The values entered in the single Q mode.*/
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
172 protected double[] valuesQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
173
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
174 /** The values entered in the single free Q mode.*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
175 protected double[] valuesQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
176
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
177 /** The input panel for W values*/
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
178 protected DoubleArrayPanel wArrayPanel;
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
179
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
180 /** The input panel for q values*/
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
181 protected DoubleArrayPanel qArrayPanel;
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
182
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
183 /** The input panel for free q values*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
184 protected DoubleArrayPanel qFreeArrayPanel;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
185
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
186 /** The input panel for free w values*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
187 protected DoubleArrayPanel wFreeArrayPanel;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
188
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
189 /** The input panel for w range*/
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
190 protected DoubleRangePanel wRangePanel;
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
191
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
192 /** The input panel for q range*/
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
193 protected DoubleRangePanel qRangePanel;
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
194
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
195 /** The input panel for free q range*/
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
196 protected DoubleRangePanel qFreeRangePanel;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
197
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
198 /** The input panel for free w range*/
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
199 protected DoubleRangePanel wFreeRangePanel;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
200
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
201 protected QDTable qdTable;
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
202
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
203 protected WTable wTable;
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
204
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
205 protected TabSet tabs;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
206
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
207 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
208 * Creates a new WQInputPanel instance.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209 */
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
210 public WQInputPanel() {
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
211 qdTable = new QDTable();
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
212 wTable = new WTable();
912
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
213
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
214 initTableListeners();
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
215 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
216
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
217
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
218 /**
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
219 * Initializes the listeners of the WQD tables.
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
220 */
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
221 protected void initTableListeners() {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
222 CellClickHandler handler = new CellClickHandler() {
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
223 @Override
912
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
224 public void onCellClick(CellClickEvent e) {
1369
1fae113b93fd Issue 118/203.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1355
diff changeset
225 if (isWMode() || qdTable.isLocked()) {
912
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
226 return;
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
227 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
228
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
229 int idx = e.getColNum();
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
230 Record r = e.getRecord ();
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
231 double val = r.getAttributeAsDouble("value");
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
232
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
233 if (idx == 0) {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
234 if (isRangeMode()) {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
235 qRangePanel.setFrom(val);
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
236 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
237 else {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
238 qArrayPanel.addValue(val);
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
239 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
240 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
241 else if (idx == 1) {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
242 if (isRangeMode()) {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
243 qRangePanel.setTo(val);
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
244 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
245 else {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
246 qArrayPanel.addValue(val);
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
247 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
248 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
249 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
250 };
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
251
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
252 qdTable.addCellClickHandler(handler);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
253 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
254
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
255
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
256 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
257 * This method calls createWidget and puts a 'next' button to the bottom.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
258 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
259 * @param data The data that is displayed.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
260 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
261 * @return the widget.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
262 */
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
263 @Override
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 48
diff changeset
264 public Canvas create(DataList data) {
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
265 initDefaults(data);
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
266
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
267 Canvas widget = createWidget(data);
57
246af33f621c Adjusted the look of the 'next' button in the parameter panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 56
diff changeset
268 Canvas submit = getNextButton();
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
269 Label label = new Label(MESSAGE.wqTitle());
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
270
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
271 label.setHeight(25);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
272
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
273 VLayout layout = new VLayout();
83
4784ca718476 Improved the positioning of helper widgets and some layout specific stuff.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 59
diff changeset
274 layout.setMembersMargin(10);
4784ca718476 Improved the positioning of helper widgets and some layout specific stuff.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 59
diff changeset
275
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
276 layout.addMember(label);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
277 layout.addMember(widget);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
278 layout.addMember(submit);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
279
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
280 initHelperPanel();
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
281 initUserDefaults(data);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
282
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
283 return layout;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
284 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
285
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
286
5334
b296d435fc69 Doc and whitespace fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4983
diff changeset
287 /** Inits the helper panel. */
b296d435fc69 Doc and whitespace fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4983
diff changeset
288 // TODO duplicate in WQAdaptedInputPanel
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
289 protected void initHelperPanel() {
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
290 tabs = new TabSet();
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
291 tabs.setWidth100();
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
292 tabs.setHeight100();
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
293
2460
5659b5e8c9a8 #204 Modified i18n strings in WQD table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2432
diff changeset
294 Tab wTab = new Tab(MESSAGE.wq_table_w());
5659b5e8c9a8 #204 Modified i18n strings in WQD table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2432
diff changeset
295 Tab qTab = new Tab(MESSAGE.wq_table_q());
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
296
3543
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
297 qdTable.showSelect();
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
298 wTab.setPane(wTable);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
299 qTab.setPane(qdTable);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
300
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
301 tabs.addTab(wTab, 0);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
302 tabs.addTab(qTab, 1);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
303
788
dfbc6693247e Integrated a stacked panel on the right side of the ParameterList that enables users to see calculation results and the helper panel at the same time.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 596
diff changeset
304 helperContainer.addMember(tabs);
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
305
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
306 fetchWQData();
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
307 }
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
308
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
309
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
310 @Override
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
311 public Canvas createOld(DataList dataList) {
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
312 List<Data> items = dataList.getAll();
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
313
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
314 Data dMode = getData(items, "wq_isq");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
315 Data dFree = getData(items, "wq_isfree");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
316 Data dSelection = getData(items, "wq_isrange");
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
317 Data dSingle = getData(items, "wq_single");
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
318 Data dFrom = getData(items, "wq_from");
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
319 Data dTo = getData(items, "wq_to");
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
320 Data dStep = getData(items, "wq_step");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
321
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
322 DataItem[] mode = dMode.getItems();
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
323 String strMode = mode[0].getStringValue();
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
324 boolean isQMode = Boolean.valueOf(strMode);
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
325
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
326 DataItem[] free = dFree.getItems();
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
327 String strFree = free[0].getStringValue();
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
328 boolean isFree = Boolean.valueOf(strFree);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
329
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
330 HLayout layout = new HLayout();
91
0d8203594bb4 Resized CollectionView and set the content size to have a tabled style.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 83
diff changeset
331 layout.setWidth("400px");
0d8203594bb4 Resized CollectionView and set the content size to have a tabled style.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 83
diff changeset
332
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
333 Label label = new Label(dataList.getLabel());
91
0d8203594bb4 Resized CollectionView and set the content size to have a tabled style.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 83
diff changeset
334 label.setWidth("200px");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
335
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
336 VLayout vLabel = null;
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
337
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
338 DataItem[] selItem = dSelection.getItems();
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
339 boolean isRange = selItem != null
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
340 ? Boolean.valueOf(selItem[0].getStringValue())
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
341 : false;
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
342
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
343 if (!isRange) {
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
344 DataItem[] single = dSingle.getItems();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
345
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
346 vLabel = !isQMode
8624
4f702ea1fd3a Fix unit displayed in WFree calculation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 6557
diff changeset
347 ? createWString(single[0], isFree)
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
348 : createQString(single[0]);
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
349 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
350 else {
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
351 DataItem[] from = dFrom.getItems();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
352 DataItem[] to = dTo.getItems();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
353 DataItem[] step = dStep.getItems();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
354
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
355 vLabel = !isQMode
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
356 ? createWString(from[0], to[0], step[0])
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
357 : createQString(from[0], to[0], step[0]);
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
358 }
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
359
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
360 VLayout selectedLayout = new VLayout();
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
361 String wqMode = null;
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
362
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
363 if (!isQMode) {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
364 wqMode = isFree ? MESSAGE.wqWFree() : MESSAGE.wqW();
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
365 }
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
366 else {
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
367 wqMode = isFree ? MESSAGE.wqQ() : MESSAGE.wqQGauge();
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
368 }
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
369
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
370 Label mLabel = new Label(wqMode);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
371 mLabel.setWidth(175);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
372 mLabel.setHeight(20);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
373
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
374 selectedLayout.addMember(mLabel);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
375 selectedLayout.addMember(vLabel);
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
376 selectedLayout.setHeight(40);
91
0d8203594bb4 Resized CollectionView and set the content size to have a tabled style.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 83
diff changeset
377
58
d018995fbee7 The 'old' items in the parameter panel have a button to step back to a previous state (NOTE: just the UI stuff is implemented now).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 57
diff changeset
378 Canvas back = getBackButton(dataList.getState());
d018995fbee7 The 'old' items in the parameter panel have a button to step back to a previous state (NOTE: just the UI stuff is implemented now).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 57
diff changeset
379
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
380 layout.addMember(label);
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
381 layout.addMember(selectedLayout);
58
d018995fbee7 The 'old' items in the parameter panel have a button to step back to a previous state (NOTE: just the UI stuff is implemented now).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 57
diff changeset
382 layout.addMember(back);
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
383
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
384 return layout;
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
385 }
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
386
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
387
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
388 /**
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
389 * This method reads the default values defined in the DataItems of the Data
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
390 * objects in <i>list</i>.
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
391 *
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
392 * @param list The DataList container that stores the Data objects.
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
393 */
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
394 protected void initDefaults(DataList list) {
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
395 Data f = getData(list.getAll(), "wq_from");
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
396 Data t = getData(list.getAll(), "wq_to");
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
397 Data s = getData(list.getAll(), "wq_step");
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
398
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
399 DataItem fQItem = getDataItem(f.getItems(), "minQ");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
400 DataItem fWItem = getDataItem(f.getItems(), "minW");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
401 DataItem tQItem = getDataItem(t.getItems(), "maxQ");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
402 DataItem tWItem = getDataItem(t.getItems(), "maxW");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
403 DataItem sQItem = getDataItem(s.getItems(), "stepQ");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
404 DataItem sWItem = getDataItem(s.getItems(), "stepW");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
405 DataItem fQFItem = getDataItem(f.getItems(), "minQFree");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
406 DataItem tQFItem = getDataItem(t.getItems(), "maxQFree");
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
407 DataItem sQFItem = getDataItem(s.getItems(), "stepQFree");
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
408 DataItem fWFItem = getDataItem(f.getItems(), "minWFree");
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
409 DataItem tWFItem = getDataItem(t.getItems(), "maxWFree");
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
410 DataItem sWFItem = getDataItem(s.getItems(), "stepWFree");
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
411
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
412 minW = Double.valueOf(fWItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
413 maxW = Double.valueOf(tWItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
414 stepW = Double.valueOf(sWItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
415
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
416 minQ = Double.valueOf(fQItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
417 maxQ = Double.valueOf(tQItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
418 stepQ = Double.valueOf(sQItem.getStringValue());
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
419
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
420 minQFree = Double.valueOf(fQFItem.getStringValue());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
421 maxQFree = Double.valueOf(tQFItem.getStringValue());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
422 stepQFree = Double.valueOf(sQFItem.getStringValue());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
423
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
424 minWFree = Double.valueOf(fWFItem.getStringValue());
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
425 maxWFree = Double.valueOf(tWFItem.getStringValue());
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
426 stepWFree = Double.valueOf(sWFItem.getStringValue());
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
427
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
428 this.fromW = minW;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
429 this.toW = maxW;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
430
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
431 this.fromQ = minQ;
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
432 this.toQ = maxQ;
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
433
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
434 this.fromQFree = minQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
435 this.toQFree = maxQFree;
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
436
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
437 this.fromWFree = minWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
438 this.toWFree = maxWFree;
56
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
439 }
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
440
c9c19761a449 Read min/max values for the distance modes in WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 53
diff changeset
441
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
442 /**
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
443 * Initializes the form items with former inserted user data.
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
444 *
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
445 * @param list The DataList that contains the user data.
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
446 */
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
447 protected void initUserDefaults(DataList list) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
448 List<Data> allData = list.getAll();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
449
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
450 Data m = getData(allData, "wq_isq");
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
451 DataItem modeItem = m != null ? m.getDefault() : null;
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
452 boolean isQ = modeItem != null
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
453 ? Boolean.valueOf(modeItem.getStringValue())
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
454 : false;
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
455
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
456 Data f = getData(allData, "wq_isfree");
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
457 DataItem freeItem = f != null ? f.getDefault() : null;
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
458 boolean isFree = freeItem != null
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
459 ? Boolean.valueOf(freeItem.getStringValue())
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
460 : false;
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
461
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
462 Data s = getData(allData, "wq_isrange");
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
463 DataItem sI = s != null ? s.getDefault() : null;
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
464 boolean isRange = sI != null
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
465 ? Boolean.valueOf(sI.getStringValue())
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
466 : false;
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
467
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
468 initUserSingleValues(list, isQ);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
469 initUserRangeValues(list, isQ);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
470
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
471 if (isQ) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
472 modes.setValue(FIELD_WQ, isQ);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
473 }
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
474 else {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
475 modes.setValue(FIELD_WQ, isFree ? FIELD_WQ_Q_FREE : FIELD_WQ_Q);
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
476 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
477
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
478 if(isRange) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
479 modes.setValue(FIELD_MODE, FIELD_MODE_RANGE);
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
480 }
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
481 else {
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
482 modes.setValue(FIELD_MODE, FIELD_MODE_SINGLE);
595
9155110ec0a6 #104 The WQ panel now display the selected wq mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 582
diff changeset
483 }
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
484 updatePanels(isQ, isFree, isRange);
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
485 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
486
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
487
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
488 /**
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
489 * Initializes the single values of W or Q from DataList.
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
490 *
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
491 * @param list The DataList that contains the 'wq_single' object.
3351
24e9b5eb83f8 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2474
diff changeset
492 * @param isQ W or Q mode?
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
493 */
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
494 protected void initUserSingleValues(DataList list, boolean isQ) {
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
495 List<Data> allData = list.getAll();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
496
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
497
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
498 Data s = getData(allData, "wq_single");
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
499 DataItem i = s != null ? s.getDefault() : null;
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
500 GWT.log("init values: " + i.getStringValue());
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
501
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
502 if (i != null) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
503 String value = i.getStringValue();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
504 String[] split = value.split(" ");
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
505
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
506 int num = split != null ? split.length : 0;
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
507
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
508 double[] values = new double[num];
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
509
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
510 for (int j = 0; j < num; j++) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
511 try {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
512 values[j] = Double.valueOf(split[j]);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
513 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
514 catch (NumberFormatException nfe) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
515 // nothing to do
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
516 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
517 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
518
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
519 if (!isQ) {
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
520 setSingleW(values);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
521 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
522 else {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
523 setSingleQ(values);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
524 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
525 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
526 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
527
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
528
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
529 /**
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
530 * Initializes the range values of W or Q from DataList.
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
531 *
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
532 * @param list The DataList that contains the 'wq_single' object.
3351
24e9b5eb83f8 Cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2474
diff changeset
533 * @param isQ W or Q mode?
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
534 */
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
535 protected void initUserRangeValues(DataList list, boolean isQ) {
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
536 List<Data> allData = list.getAll();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
537
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
538 // init range mode values
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
539 Data f = getData(allData, "wq_from");
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
540 Data t = getData(allData, "wq_to");
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
541 Data s = getData(allData, "wq_step");
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
542
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
543 if (f != null && t != null && s != null) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
544 DataItem dF = f.getDefault();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
545 DataItem dT = t.getDefault();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
546 DataItem dS = s.getDefault();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
547
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
548 String fS = dF != null ? dF.getStringValue() : null;
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
549 String tS = dT != null ? dT.getStringValue() : null;
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
550 String sS = dS != null ? dS.getStringValue() : null;
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
551
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
552 try {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
553 double from = Double.valueOf(fS);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
554 double to = Double.valueOf(tS);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
555 double step = Double.valueOf(sS);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
556
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
557 if (!isQ) {
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
558 setWRangeValues(from, to, step);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
559 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
560 else {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
561 setQRangeValues(from, to, step);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
562 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
563 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
564 catch (NumberFormatException nfe) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
565 // do nothing
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
566 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
567 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
568 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
569
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
570
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
571 protected void setQRangeValues(double f, double t, double s) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
572 setFromQ(f);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
573 setToQ(t);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
574 setStepQ(s);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
575 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
576
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
577
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
578 protected void setWRangeValues(double f, double t, double s) {
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
579 setFromW(f);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
580 setToW(t);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
581 setStepW(s);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
582 }
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
583
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
584
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
585 protected VLayout createWString(DataItem from, DataItem to, DataItem step) {
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
586 VLayout v = new VLayout();
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
587
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
588 StringBuilder sb = new StringBuilder();
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
589 sb.append(from.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
590 sb.append(" " + MESSAGE.unitWFrom() + " ");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
591 sb.append(to.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
592 sb.append(" " + MESSAGE.unitWTo() + " ");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
593 sb.append(step.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
594 sb.append(" " + MESSAGE.unitWStep());
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
595
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
596 v.addMember(new Label(sb.toString()));
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
597
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
598 return v;
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
599 }
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
600
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
601
8624
4f702ea1fd3a Fix unit displayed in WFree calculation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 6557
diff changeset
602 protected VLayout createWString(DataItem single, boolean isFree) {
1454
9152cfb3a54c Bugfix: split up the Ws and Qs in the WQInputPanel properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1425
diff changeset
603 String label = single.getLabel().trim();
1459
149f70bcbb96 Adapted the seperator character between Ws and Qs in DESCRIBE documents which has changed in the flys-artifacts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1454
diff changeset
604 String[] cols = label.split(";");
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
605
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
606 VLayout v = new VLayout();
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
607
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
608 for (String col: cols) {
8624
4f702ea1fd3a Fix unit displayed in WFree calculation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 6557
diff changeset
609 Label l = new Label(col + " " + (isFree ? MESSAGE.unitWFree() : MESSAGE.unitWSingle()));
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
610 l.setHeight(20);
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
611
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
612 v.addMember(l);
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
613 }
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
614
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
615 return v;
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
616 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
617
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
618
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
619 protected VLayout createQString(DataItem from, DataItem to, DataItem step) {
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
620 VLayout v = new VLayout();
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
621
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
622 StringBuilder sb = new StringBuilder();
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
623 sb.append(from.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
624 sb.append(" " + MESSAGE.unitQFrom() + " ");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
625 sb.append(to.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
626 sb.append(" " + MESSAGE.unitQTo() + " ");
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
627 sb.append(step.getLabel());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
628 sb.append(" " + MESSAGE.unitQStep());
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
629
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
630 v.addMember(new Label(sb.toString()));
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
631
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
632 return v;
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
633 }
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
634
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
635
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
636 protected VLayout createQString(DataItem single) {
1454
9152cfb3a54c Bugfix: split up the Ws and Qs in the WQInputPanel properly.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1425
diff changeset
637 String label = single.getLabel().trim();
1459
149f70bcbb96 Adapted the seperator character between Ws and Qs in DESCRIBE documents which has changed in the flys-artifacts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1454
diff changeset
638 String[] cols = label.split(";");
1355
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
639
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
640 VLayout v = new VLayout();
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
641
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
642 for (String col: cols) {
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
643 Label l = new Label(col + " " + MESSAGE.unitQSingle());
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
644 l.setHeight(20);
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
645
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
646 v.addMember(l);
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
647 }
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
648
b9b4d27bcf63 Display selected WQ values in single rows - named main values need a lot of space.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1279
diff changeset
649 return v;
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
650 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
651
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
652
53
3d5d7788d471 The widgets in the static part of the parameter panel are created using UIProviders now. The ParameterList does not build widgets any longer.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 51
diff changeset
653 /**
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
654 * This method creates the whole widget. There is a panel on the left, that
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
655 * allows the user to enter values manually by keyboard. On the right, there
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
656 * is a table that allows the user to enter values by mouse click.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
657 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
658 * @param data The data that is displayed in the table on the right.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
659 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
660 * @return the widget.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
661 */
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 48
diff changeset
662 protected Canvas createWidget(DataList data) {
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
663 VLayout layout = new VLayout();
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
664 container = new HLayout();
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
665 Canvas modeForm = createModePanel();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
666
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
667 container.setMembersMargin(30);
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
668
48
6e191588a295 Render the Single-W panel initially when the WQInputPanel is rendered.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 47
diff changeset
669 // the initial panel is the Single-W panel.
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
670 double[] values = getSingleQ();
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
671 qArrayPanel = new DoubleArrayPanel(
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
672 MESSAGE.unitQSingle(), values, this);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
673 container.addMember(qArrayPanel);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
674
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
675 layout.addMember(modeForm);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
676 layout.addMember(container);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
677
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
678 return layout;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
679 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
680
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
681
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
682 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
683 * This method creates the mode panel. It contains two radio button panels
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
684 * that allows the user to switch the input mode between w/q and
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
685 * single/range input.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
686 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
687 * @return a panel.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
688 */
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
689 protected Canvas createModePanel() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
690 RadioGroupItem wq = new RadioGroupItem(FIELD_WQ);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
691 wq.setShowTitle(false);
1535
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
692 wq.setVertical(true);
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
693 wq.setWidth(WIDTH_LEFT_UPPER);
596
3f094045d512 Adapted a german string in the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 595
diff changeset
694 wq.setWrap(false);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
695
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
696 RadioGroupItem mode = new RadioGroupItem(FIELD_MODE);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
697 mode.setShowTitle(false);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
698 mode.setVertical(false);
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
699 mode.setWidth(WIDTH_LEFT_LOWER);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
700
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
701 LinkedHashMap wqValues = new LinkedHashMap();
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
702 wqValues.put(FIELD_WQ_W, MESSAGE.wqW());
1535
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
703 wqValues.put(FIELD_WQ_W_FREE, MESSAGE.wqWFree());
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
704 wqValues.put(FIELD_WQ_Q_FREE, MESSAGE.wqQ());
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
705 wqValues.put(FIELD_WQ_Q, MESSAGE.wqQGauge());
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
706
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
707 LinkedHashMap modeValues = new LinkedHashMap();
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
708 modeValues.put(FIELD_MODE_SINGLE, MESSAGE.wqSingle());
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
709 modeValues.put(FIELD_MODE_RANGE, MESSAGE.wqRange());
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
710
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
711 wq.setValueMap(wqValues);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
712 mode.setValueMap(modeValues);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
713
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
714 wq.addChangeHandler(this);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
715 mode.addChangeHandler(this);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
716
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
717 modes = new DynamicForm();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
718 modes.setFields(wq, mode);
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
719 modes.setWidth(WIDTH_LEFT_UPPER);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
720 modes.setNumCols(1);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
721
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
722 LinkedHashMap initial = new LinkedHashMap();
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
723 initial.put(FIELD_WQ, FIELD_WQ_Q);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
724 initial.put(FIELD_MODE, FIELD_MODE_SINGLE);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
725 modes.setValues(initial);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
726
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
727 return modes;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
728 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
729
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
730
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
731 @Override
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
732 public List<String> validate() {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
733 if (isRangeMode()) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
734 return validateRangeValues();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
735 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
736 else {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
737 return validateSingleValues();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
738 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
739 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
740
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
741
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
742 protected List<String> validateRangeValues() {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
743 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
744 return validateRange(wFreeRangePanel, minWFree, maxWFree);
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
745 }
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
746 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
747 return validateRange(qFreeRangePanel, minQFree, maxQFree);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
748 }
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
749 else if (isWMode()) {
1535
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
750 return validateRange(wRangePanel, minW, maxW);
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
751 }
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
752 else {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
753 return validateRange(qRangePanel, minQ, maxQ);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
754 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
755 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
756
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
757 protected List<String> validateSingleValues() {
2389
3b1a7f34e19b flys/issue499: Deactivate validation for 'W am Pegel'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2388
diff changeset
758 if (isWFree()) {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
759 return validateSingle(wFreeArrayPanel, minWFree, maxWFree);
2389
3b1a7f34e19b flys/issue499: Deactivate validation for 'W am Pegel'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2388
diff changeset
760 }
3b1a7f34e19b flys/issue499: Deactivate validation for 'W am Pegel'
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2388
diff changeset
761 else if (isWMode()) {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
762 return validateSingle(wArrayPanel, minW, maxW);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
763 //return validateSingle(wArrayPanel, 0, 100000);
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
764 }
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
765 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
766 return validateSingle(qFreeArrayPanel, minQFree, maxQFree);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
767 }
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
768 else {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
769 return validateSingle(qArrayPanel, minQ, maxQ);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
770 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
771 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
772
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
773
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
774 protected List<String> validateRange(
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
775 DoubleRangePanel panel,
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
776 double min, double max)
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
777 {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
778 List<String> errors = new ArrayList<String>();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
779 NumberFormat nf = NumberFormat.getDecimalFormat();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
780
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
781 if (!panel.validateForm()) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
782 errors.add(MESSAGE.wrongFormat());
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
783 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
784
1490
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
785 double from;
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
786 double to;
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
787 double step;
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
788
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
789 try {
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
790 from = panel.getFrom();
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
791 to = panel.getTo();
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
792 step = panel.getStep();
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
793 }
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
794 catch (NullPointerException npe) {
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
795 errors.add(MESSAGE.missingInput());
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
796 return errors;
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
797 }
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
798
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
799 if (from < min || from > max) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
800 String tmp = MESSAGE.error_validate_lower_range();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
801 tmp = tmp.replace("$1", nf.format(from));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
802 tmp = tmp.replace("$2", nf.format(min));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
803 errors.add(tmp);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
804 from = min;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
805 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
806
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
807 if (to < min || to > max) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
808 String tmp = MESSAGE.error_validate_upper_range();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
809 tmp = tmp.replace("$1", nf.format(to));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
810 tmp = tmp.replace("$2", nf.format(max));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
811 errors.add(tmp);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
812 to = max;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
813 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
814
1276
393e5d37d85d Bugfix: #119 Display min/max values for WQ ranges if input validation failed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1275
diff changeset
815 if (!errors.isEmpty()) {
393e5d37d85d Bugfix: #119 Display min/max values for WQ ranges if input validation failed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1275
diff changeset
816 panel.setValues(from, to, step);
393e5d37d85d Bugfix: #119 Display min/max values for WQ ranges if input validation failed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1275
diff changeset
817 }
393e5d37d85d Bugfix: #119 Display min/max values for WQ ranges if input validation failed.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1275
diff changeset
818
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
819 return errors;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
820 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
821
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
822
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
823 protected List<String> validateSingle(
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
824 DoubleArrayPanel panel,
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
825 double min, double max)
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
826 {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
827 List<String> errors = new ArrayList<String>();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
828 NumberFormat nf = NumberFormat.getDecimalFormat();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
829
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
830 if (!panel.validateForm()) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
831 errors.add(MESSAGE.wrongFormat());
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
832 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
833
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
834 double[] values = panel.getInputValues();
1490
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
835
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
836 if (values == null || values.length == 0) {
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
837 errors.add(MESSAGE.atLeastOneValue());
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
838 return errors;
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
839 }
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
840
564
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
841 double[] good = new double[values.length];
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
842 int idx = 0;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
843
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
844 for (double value: values) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
845 if (value < min || value > max) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
846 String tmp = MESSAGE.error_validate_range();
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
847 tmp = tmp.replace("$1", nf.format(value));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
848 tmp = tmp.replace("$2", nf.format(min));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
849 tmp = tmp.replace("$3", nf.format(max));
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
850 errors.add(tmp);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
851 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
852 else {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
853 good[idx++] = value;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
854 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
855 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
856
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
857 double[] justGood = new double[idx];
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
858 for (int i = 0; i < justGood.length; i++) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
859 justGood[i] = good[i];
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
860 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
861
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
862 if (!errors.isEmpty()) {
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
863 panel.setValues(justGood);
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
864 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
865
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
866 return errors;
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
867 }
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
868
55a90afaf513 Introduced a client side validation for the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 559
diff changeset
869
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
870 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
871 * This method returns the selected data.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
872 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
873 * @return the selected/inserted data.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
874 */
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
875 @Override
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
876 public Data[] getData() {
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
877 // XXX If we have entered a value and click right afterwards on the
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
878 // 'next' button, the BlurEvent is not fired, and the values are not
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
879 // saved. So, we gonna save those values explicitly.
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
880 if (!isRangeMode()) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
881 Canvas member = container.getMember(0);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
882 if (member instanceof DoubleArrayPanel) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
883 DoubleArrayPanel form = (DoubleArrayPanel) member;
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
884 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
885 saveSingleWFreeValues(form);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
886 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
887 else if (isWMode()) {
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
888 saveSingleWValues(form);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
889 }
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
890 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
891 saveSingleQFreeValues(form);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
892 }
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
893 else {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
894 saveSingleQValues(form);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
895 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
896 }
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
897
1275
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
898 return getSingleData();
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
899 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
900 else {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
901 Canvas member = container.getMember(0);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
902 if (member instanceof DoubleRangePanel) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
903 DoubleRangePanel form = (DoubleRangePanel) member;
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
904
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
905 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
906 saveRangeWFreeValues(form);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
907 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
908 else if (isWMode()) {
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
909 saveRangeWValues(form);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
910 }
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
911 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
912 saveRangeQFreeValues(form);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
913 }
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
914 else {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
915 saveRangeQValues(form);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
916 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
917 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
918
1275
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
919 return getRangeData();
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
920 }
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
921 }
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
922
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
923
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
924 /**
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
925 * Collects the required data for single mode and resets the data for range
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
926 * mode.
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
927 */
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
928 protected Data[] getSingleData() {
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
929 DataItem from = new DefaultDataItem("wq_from", "wq_from", "");
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
930 DataItem to = new DefaultDataItem("wq_to", "wq_to", "");
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
931 DataItem step = new DefaultDataItem("wq_step", "wq_step", "");
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
932
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
933 return new Data[] {
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
934 getDataMode(),
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
935 getFree(),
1275
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
936 getDataSelectionMode(),
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
937 getDataSingle(),
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
938 new DefaultData(
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
939 "wq_from",
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
940 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
941 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
942 new DataItem[] {from}),
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
943 new DefaultData(
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
944 "wq_to",
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
945 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
946 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
947 new DataItem[] {to}),
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
948 new DefaultData(
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
949 "wq_step",
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
950 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
951 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
952 new DataItem[] {step}) };
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
953 }
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
954
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
955
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
956 /**
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
957 * Collects the required data for range mode and resets the data for single
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
958 * mode.
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
959 */
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
960 protected Data[] getRangeData() {
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
961 DataItem item = new DefaultDataItem("wq_single", "wq_single", "");
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
962
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
963 return new Data[] {
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
964 getDataMode(),
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
965 getFree(),
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
966 getDataSelectionMode(),
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
967 getDataFrom(),
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
968 getDataTo(),
1275
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
969 getDataStep(),
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
970 new DefaultData(
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
971 "wq_single",
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
972 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
973 null,
ca2d5bcf67a3 Bugfix: #111 Reset the values of WQ range mode if single mode is selected and the other way arround.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 912
diff changeset
974 new DataItem[] {item}) };
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
975 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
976
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
977
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
978 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
979 * Returns the Data object for the 'mode' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
980 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
981 * @return the Data object for the 'mode' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
982 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
983 protected Data getDataMode() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
984 String wqMode = modes.getValueAsString(FIELD_WQ);
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
985
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
986 String value = null;
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
987 if (wqMode.equals(FIELD_WQ_Q_FREE) || wqMode.equals(FIELD_WQ_Q)) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
988 GWT.log("getData: FIELD_WQ_Q || FIELD_WQ_Q_FREE");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
989 value = "true";
2387
79483ff032bb Client side fix for flys/issue499. There is an server issue, too.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1535
diff changeset
990 }
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
991 else {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
992 GWT.log("getData: FIELD_WQ_W || FIELD_WQ_W_FREE");
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
993 value = "false";
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
994 }
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
995
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
996 DataItem item = new DefaultDataItem("wq_isq", "wq_isq", value);
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
997 return new DefaultData(
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
998 "wq_isq", null, null, new DataItem[] { item });
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
999 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1000
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1001
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1002 /**
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1003 * Returns the Q mode. The Q mode can be "true" or "false". True means, the
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1004 * calculation is not based on a gauge, false means the calculation should
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1005 * be based on a gauge.
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1006 *
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1007 * @return the Data object for the 'wq_free' attribute.
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1008 */
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1009 protected Data getFree() {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1010 String value = "";
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1011 if(!isWMode()) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1012 value = isQFree() ? "true" : "false";
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1013 }
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1014 else {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1015 value = isWFree() ? "true" : "false";
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1016 }
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1017 DataItem item = new DefaultDataItem("wq_isfree", "wq_isfree", value);
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1018 return new DefaultData(
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1019 "wq_isfree", null, null, new DataItem[] { item });
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1020 }
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1021
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1022
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1023 /**
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1024 * Returns the Data object for the 'mode' attribute.
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1025 *
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1026 * @return the Data object for the 'mode' attribute.
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1027 */
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1028 protected Data getDataSelectionMode() {
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1029 String wqSelection = modes.getValueAsString(FIELD_MODE);
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1030
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1031 String isRange = "true";
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1032 if (wqSelection.equals(FIELD_MODE_SINGLE)) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1033 isRange = "false";
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1034 }
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1035 DataItem item = new DefaultDataItem(
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1036 "wq_isrange", "wq_isrange", isRange);
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1037
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1038 return new DefaultData(
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1039 "wq_isrange", null, null, new DataItem[] { item });
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1040 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1041
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1042
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1043 /**
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1044 * Returns the data object for the 'single' attribute.
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1045 *
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1046 * @return the Data object for the 'single' attribute.
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1047 */
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1048 protected Data getDataSingle() {
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1049 double[] values = getFinalSingle();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1050 StringBuilder sb = new StringBuilder();
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1051 for (double value: values) {
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1052 sb.append(Double.toString(value));
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1053 sb.append(" ");
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1054 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1055
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1056 DataItem item = new DefaultDataItem(
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1057 "wq_single", "wq_single", sb.toString());
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1058
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1059 return new DefaultData(
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1060 "wq_single", null, null, new DataItem[] { item });
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1061 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1062
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1063
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1064 /**
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1065 * Returns the Data object for the 'from' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1066 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1067 * @return the Data object for the 'from' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1068 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1069 protected Data getDataFrom() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1070 String value = Double.valueOf(getFinalFrom()).toString();
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1071 DataItem item = new DefaultDataItem("wq_from", "wq_from", value);
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1072 return new DefaultData(
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 48
diff changeset
1073 "wq_from", null, null, new DataItem[] { item });
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1074 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1075
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1076
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1077 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1078 * Returns the Data object for the 'to' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1079 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1080 * @return the Data object for the 'to' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1081 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1082 protected Data getDataTo() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1083 String value = Double.valueOf(getFinalTo()).toString();
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1084 DataItem item = new DefaultDataItem("wq_to", "wq_to", value);
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1085 return new DefaultData(
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 48
diff changeset
1086 "wq_to", null, null, new DataItem[] { item });
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1087 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1088
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1089
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1090 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1091 * Returns the Data object for the 'step' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1092 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1093 * @return the Data object for the 'step' attribute.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1094 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1095 protected Data getDataStep() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1096 String value = Double.valueOf(getFinalStep()).toString();
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1097 DataItem item = new DefaultDataItem("wq_step","wq_step", value);
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1098 return new DefaultData(
51
a2923d63f530 Introduced a data structure DataList to manage to list of Data objects of a single state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 48
diff changeset
1099 "wq_step", null, null, new DataItem[] { item });
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1100 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1101
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1102
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1103 protected double[] getFinalSingle() {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1104 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1105 return getSingleWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1106 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1107 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1108 return getSingleW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1109 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1110 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1111 return getSingleQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1112 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1113 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1114 return getSingleQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1115 }
236
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1116 }
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1117
d12078053b59 Introduced two further parameters in the WQ panel to determine the selection mode (range/single, w/q).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 234
diff changeset
1118
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1119 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1120 * Returns the value of 'from' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1121 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1122 * @return the value of 'from' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1123 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1124 protected double getFinalFrom() {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1125 if (isRangeMode()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1126 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1127 return getFromWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1128 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1129 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1130 return getFromW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1131 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1132 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1133 return getFromQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1134 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1135 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1136 return getFromQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1137 }
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1138 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1139 else {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1140 double[] values = null;
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1141
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1142 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1143 values = getSingleWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1144 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1145 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1146 values = getSingleW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1147 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1148 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1149 values = getSingleQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1150 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1151 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1152 values = getSingleQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1153 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1154
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1155 double value = Double.MAX_VALUE;
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1156 for (double v: values) {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1157 value = value < v ? value : v;
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1158 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1159
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1160 return value;
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1161 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1162 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1163
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1164
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1165 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1166 * Returns the value of 'to' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1167 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1168 * @return the value of 'to' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1169 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1170 protected double getFinalTo() {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1171 if (isRangeMode()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1172 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1173 return getToWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1174 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1175 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1176 return getToW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1177 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1178 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1179 return getToQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1180 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1181 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1182 return getToQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1183 }
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1184 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1185 else {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1186 double[] values = null;
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1187
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1188 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1189 values = getSingleWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1190 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1191 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1192 values = getSingleW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1193 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1194 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1195 values = getSingleQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1196 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1197 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1198 values = getSingleQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1199 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1200
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1201 double value = Double.MIN_VALUE;
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1202 for (double v: values) {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1203 value = value > v ? value : v;
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1204 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1205
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1206 return value;
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1207 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1208 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1209
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1210
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1211 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1212 * Returns the value of 'step' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1213 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1214 * @return the value of 'step' depending on the selected input mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1215 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1216 protected double getFinalStep() {
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1217 if (isRangeMode()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1218 if (isWFree()) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1219 return getStepWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1220 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1221 else if (isWMode()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1222 return getStepW();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1223 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1224 else if (isQFree()) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1225 return getStepQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1226 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1227 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1228 return getStepQ();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1229 }
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1230 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1231 else {
234
27f5afc4dbde Bugfix: the WQ panel now returns the correct step width value if the range mode is selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 211
diff changeset
1232 // we have no field to enter the 'step' attribute in the
27f5afc4dbde Bugfix: the WQ panel now returns the correct step width value if the range mode is selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 211
diff changeset
1233 // single mode
27f5afc4dbde Bugfix: the WQ panel now returns the correct step width value if the range mode is selected.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 211
diff changeset
1234 return 0d;
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1235 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1236 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1237
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1238
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1239 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1240 * Determines the range/single mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1241 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1242 * @return true if the range mode is activated.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1243 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1244 public boolean isRangeMode() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1245 String rMode = modes.getValueAsString(FIELD_MODE);
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1246
582
78907f0fb939 Added dummy report panel.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 580
diff changeset
1247 return rMode.equals(FIELD_MODE_RANGE);
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1248 }
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1249
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1250
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1251 /**
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1252 * Determines the w/q mode.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1253 *
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1254 * @return true, if the W mode is activated.
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1255 */
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1256 public boolean isWMode() {
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1257 String wq = modes.getValueAsString(FIELD_WQ);
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1258 return wq.contains("W");
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1259 }
47
45ae03d9ca2b Implemented the getData() method of the WQInputPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 45
diff changeset
1260
577
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1261
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1262 public boolean isQFree() {
ded285064e43 #118 Added a further radio button to select 'Q at Gauge' to the WQ panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 564
diff changeset
1263 String wqMode = modes.getValueAsString(FIELD_WQ);
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1264 return wqMode.equals(FIELD_WQ_Q_FREE);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1265 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1266
1535
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
1267 protected boolean isWFree() {
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
1268 String wqMode = modes.getValueAsString(FIELD_WQ);
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
1269 return wqMode.equals(FIELD_WQ_W_FREE);
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
1270 }
03e82be2aabc Added UI for "Bezugslinienverfahren" ("W auf freier Strecke").
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 1493
diff changeset
1271
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1272
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1273 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1274 * This method changes the lower panel with the input fields depending on
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1275 * the combination of the two radio button panels.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1276 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1277 * @param event The ChangeEvent.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1278 */
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
1279 @Override
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1280 public void onChange(ChangeEvent event) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1281 DynamicForm form = event.getForm();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1282 FormItem item = event.getItem();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1283
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1284 boolean isQ = false;
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1285 boolean isFree = false;
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1286 boolean isRange = false;
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1287
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1288 if (item.getFieldName().equals(FIELD_MODE)) {
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1289 String wq = form.getValueAsString(FIELD_WQ);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1290 isQ = wq.contains("Q");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1291 isFree = wq.contains("FREE");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1292 isRange = ((String) event.getValue()).equals(FIELD_MODE_RANGE);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1293 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1294 else {
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1295 String wq = ((String) event.getValue());
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1296 isQ = wq.contains("Q");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1297 isFree = wq.contains("FREE");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1298 isRange =
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1299 form.getValueAsString(FIELD_MODE).equals(FIELD_MODE_RANGE);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1300 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1301
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1302 if (isQ && isFree) {
912
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1303 qdTable.hideIconFields();
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1304 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1305 else {
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1306 qdTable.showIconFields();
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1307 }
2c8f1112be37 Rollback for input assistance of "Q/D" table.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 894
diff changeset
1308
3543
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1309 if (!isRange) {
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1310 qdTable.showSelect();
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1311 }
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1312 else {
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1313 qdTable.showIconFields();
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1314 }
14774fb42054 Issue 808.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3351
diff changeset
1315
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1316 updatePanels(isQ, isFree, isRange);
250
27f12703937e Enable or disable table rows depending on the WQ selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 249
diff changeset
1317 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1318
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1319
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1320 protected void updatePanels(boolean isQ, boolean isFree, boolean isRange) {
250
27f12703937e Enable or disable table rows depending on the WQ selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 249
diff changeset
1321 container.removeMembers(container.getMembers());
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1322
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1323 if (!isQ && isFree) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1324 if (!isRange) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1325 // Single W mode
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1326 double[] values = getSingleWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1327
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1328 wFreeArrayPanel = new DoubleArrayPanel(
8624
4f702ea1fd3a Fix unit displayed in WFree calculation
Andre Heinecke <andre.heinecke@intevation.de>
parents: 6557
diff changeset
1329 MESSAGE.unitWFree(), values, this);
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1330
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1331 container.addMember(wFreeArrayPanel);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1332 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1333 else {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1334 // Range W mode
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1335 double from = getFromWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1336 double to = getToWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1337 double step = getStepWFree();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1338
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1339 wFreeRangePanel = new DoubleRangePanel(
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1340 MESSAGE.unitWFrom(), MESSAGE.unitWTo(), MESSAGE.unitWStep(),
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1341 from, to, step,
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1342 250,
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1343 this);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1344 container.addMember(wFreeRangePanel);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1345 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1346
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1347 tabs.selectTab(0);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1348 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1349 else if (!isQ) {
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1350 if (!isRange) {
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1351 // Single W mode
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1352 double[] values = getSingleW();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1353
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1354 wArrayPanel = new DoubleArrayPanel(
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1355 MESSAGE.unitWSingle(), values, this);
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1356
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1357 container.addMember(wArrayPanel);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1358 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1359 else {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1360 // Range W mode
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1361 double from = getFromW();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1362 double to = getToW();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1363 double step = getStepW();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1364
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1365 wRangePanel = new DoubleRangePanel(
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1366 MESSAGE.unitWFrom(), MESSAGE.unitWTo(), MESSAGE.unitWStep(),
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1367 from, to, step,
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1368 250,
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1369 this);
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1370 container.addMember(wRangePanel);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1371 }
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1372
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1373 tabs.selectTab(0);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1374 }
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1375 else if (isQ && isFree) {
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1376 if (!isRange) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1377 // Single Q mode
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1378 double[] values = getSingleQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1379
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1380 qFreeArrayPanel = new DoubleArrayPanel(
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1381 MESSAGE.unitQSingle(), values, this);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1382 container.addMember(qFreeArrayPanel);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1383 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1384 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1385 // Range Q mode
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1386 double from = getFromQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1387 double to = getToQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1388 double step = getStepQFree();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1389
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1390 qFreeRangePanel = new DoubleRangePanel(
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1391 MESSAGE.unitQFrom(), MESSAGE.unitQTo(), MESSAGE.unitQStep(),
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1392 from, to, step,
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1393 250,
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1394 this);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1395 container.addMember(qFreeRangePanel);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1396 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1397
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1398 tabs.selectTab(1);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1399 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1400 else {
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1401 if (!isRange) {
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1402 // Single Q mode
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1403 double[] values = getSingleQ();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1404
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1405 qArrayPanel = new DoubleArrayPanel(
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1406 MESSAGE.unitQSingle(), values, this);
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1407 container.addMember(qArrayPanel);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1408 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1409 else {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1410 // Range Q mode
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1411 double from = getFromQ();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1412 double to = getToQ();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1413 double step = getStepQ();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1414
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1415 qRangePanel = new DoubleRangePanel(
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1416 MESSAGE.unitQFrom(), MESSAGE.unitQTo(), MESSAGE.unitQStep(),
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1417 from, to, step,
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1418 250,
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1419 this);
249
6c7133eb8c4c Implemented handler for WQ value selection.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 248
diff changeset
1420 container.addMember(qRangePanel);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1421 }
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1422
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1423 tabs.selectTab(1);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1424 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1425 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1426
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1427 /**
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1428 * This method is called if the value of one of the input fields might have
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1429 * changed. The entered values are validated and stored.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1430 *
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1431 * @param event The BlurEvent.
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1432 */
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
1433 @Override
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1434 public void onBlur(BlurEvent event) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1435 DynamicForm form = event.getForm();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1436 FormItem item = event.getItem();
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1437
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1438 String wqMode = (String) modes.getValue(FIELD_WQ);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1439 String inputMode = (String) modes.getValue(FIELD_MODE);
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1440
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1441 if (wqMode.equals(FIELD_WQ_W)) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1442 if (inputMode.equals(FIELD_MODE_SINGLE)) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1443 DoubleArrayPanel p = (DoubleArrayPanel) form;
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1444 saveSingleWValue(p, item);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1445 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1446 else {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1447 DoubleRangePanel p = (DoubleRangePanel) form;
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1448 saveRangeWValue(p, item);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1449 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1450 }
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1451 else if (wqMode.equals(FIELD_WQ_W_FREE)) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1452 if (inputMode.equals(FIELD_MODE_SINGLE)) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1453 DoubleArrayPanel p = (DoubleArrayPanel) form;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1454 saveSingleWFreeValue(p, item);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1455 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1456 else {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1457 DoubleRangePanel p = (DoubleRangePanel) form;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1458 saveRangeWFreeValue(p, item);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1459 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1460 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1461 else if (wqMode.equals(FIELD_WQ_Q_FREE)) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1462 if (inputMode.equals(FIELD_MODE_SINGLE)) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1463 DoubleArrayPanel p = (DoubleArrayPanel) form;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1464 saveSingleQFreeValue(p, item);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1465 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1466 else {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1467 DoubleRangePanel p = (DoubleRangePanel) form;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1468 saveRangeQFreeValue(p, item);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1469 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1470 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1471 else {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1472 if (inputMode.equals(FIELD_MODE_SINGLE)) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1473 DoubleArrayPanel p = (DoubleArrayPanel) form;
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1474 saveSingleQValue(p, item);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1475 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1476 else {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1477 DoubleRangePanel p = (DoubleRangePanel) form;
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1478 saveRangeQValue(p, item);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1479 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1480 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1481 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1482
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1483
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1484 protected void saveSingleWValues(DoubleArrayPanel p) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1485 FormItem[] formItems = p.getFields();
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1486
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1487 for (FormItem item: formItems) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1488 if (item.getFieldName().equals(DoubleArrayPanel.FIELD_NAME)) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1489 saveSingleWValue(p, item);
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1490 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1491 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1492 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1493
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1494
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1495 protected void saveSingleWFreeValues(DoubleArrayPanel p) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1496 FormItem[] formItems = p.getFields();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1497
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1498 for (FormItem item: formItems) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1499 if (item.getFieldName().equals(DoubleArrayPanel.FIELD_NAME)) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1500 saveSingleWFreeValue(p, item);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1501 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1502 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1503 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1504
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1505
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1506 protected void saveSingleQValues(DoubleArrayPanel p) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1507 FormItem[] formItems = p.getFields();
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1508
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1509 for (FormItem item: formItems) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1510 if (item.getFieldName().equals(DoubleArrayPanel.FIELD_NAME)) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1511 saveSingleQValue(p, item);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1512 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1513 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1514 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1515
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1516
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1517 protected void saveSingleQFreeValues(DoubleArrayPanel p) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1518 FormItem[] formItems = p.getFields();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1519
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1520 for (FormItem item: formItems) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1521 if (item.getFieldName().equals(DoubleArrayPanel.FIELD_NAME)) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1522 saveSingleQFreeValue(p, item);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1523 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1524 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1525 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1526
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1527
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1528 protected void saveSingleWValue(DoubleArrayPanel p, FormItem item) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1529 if (p.validateForm(item)) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1530 setSingleW(p.getInputValues(item));
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1531 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1532 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1533
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1534
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1535 protected void saveSingleWFreeValue(DoubleArrayPanel p, FormItem item) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1536 if (p.validateForm(item)) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1537 setSingleWFree(p.getInputValues(item));
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1538 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1539 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1540
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1541
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1542 protected void saveSingleQValue(DoubleArrayPanel p, FormItem item) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1543 if (p.validateForm(item)) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1544 setSingleQ(p.getInputValues(item));
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1545 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1546 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1547
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1548
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1549 protected void saveSingleQFreeValue(DoubleArrayPanel p, FormItem item) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1550 if (p.validateForm(item)) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1551 setSingleQFree(p.getInputValues(item));
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1552 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1553 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1554
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1555
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1556 protected void saveRangeWValues(DoubleRangePanel p) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1557 FormItem[] formItems = p.getFields();
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1558
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1559 for (FormItem item: formItems) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1560 saveRangeWValue(p, item);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1561 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1562 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1563
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1564
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1565 protected void saveRangeWFreeValues(DoubleRangePanel p) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1566 FormItem[] formItems = p.getFields();
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1567
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1568 for (FormItem item: formItems) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1569 saveRangeWFreeValue(p, item);
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1570 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1571 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1572
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1573
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1574 protected void saveRangeQValues(DoubleRangePanel p) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1575 FormItem[] formItems = p.getFields();
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1576
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1577 for (FormItem item: formItems) {
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1578 saveRangeQValue(p, item);
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1579 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1580 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1581
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1582
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1583 protected void saveRangeQFreeValues(DoubleRangePanel p) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1584 FormItem[] formItems = p.getFields();
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1585
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1586 for (FormItem item: formItems) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1587 saveRangeQFreeValue(p, item);
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1588 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1589 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1590
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1591
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1592 protected void saveRangeWValue(DoubleRangePanel p, FormItem item) {
1490
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
1593 if (p.validateForm()) {
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1594 setFromW(p.getFrom());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1595 setToW(p.getTo());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1596 setStepW(p.getStep());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1597 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1598 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1599
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1600
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1601 protected void saveRangeWFreeValue(DoubleRangePanel p, FormItem item) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1602 if (p.validateForm()) {
2474
6f7e188fac1a Fixed range input for 'W free'.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2473
diff changeset
1603 setFromWFree(p.getFrom());
6f7e188fac1a Fixed range input for 'W free'.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2473
diff changeset
1604 setToWFree(p.getTo());
6f7e188fac1a Fixed range input for 'W free'.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2473
diff changeset
1605 setStepWFree(p.getStep());
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1606 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1607 }
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1608
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1609
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1610 protected void saveRangeQValue(DoubleRangePanel p, FormItem item) {
1490
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
1611 if (p.validateForm()) {
59
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1612 setFromQ(p.getFrom());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1613 setToQ(p.getTo());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1614 setStepQ(p.getStep());
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1615 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1616 }
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1617
a3d235c63195 Save the data explicitly in the LocationDistancePanel and WQInputPanel before returning the user input to avoid a nullpointer exception.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 58
diff changeset
1618
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1619 protected void saveRangeQFreeValue(DoubleRangePanel p, FormItem item) {
1490
15b4bc8eede0 #302 Improved input validation in WQ panels.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1485
diff changeset
1620 if (p.validateForm()) {
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1621 setFromQFree(p.getFrom());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1622 setToQFree(p.getTo());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1623 setStepQFree(p.getStep());
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1624 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1625 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1626
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1627
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1628 protected double[] getSingleQ() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1629 return valuesQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1630 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1631
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1632
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1633 protected double[] getSingleQFree() {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1634 return valuesQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1635 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1636
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1637
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1638 protected void setSingleQ(double[] values) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1639 valuesQ = values;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1640 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1641
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1642
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1643 protected void setSingleQFree(double[] values) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1644 valuesQFree = values;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1645 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1646
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1647
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1648 protected double getFromQ() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1649 return fromQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1650 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1651
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1652
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1653 protected double getFromQFree() {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1654 return fromQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1655 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1656
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1657
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1658 protected void setFromQ(double fromQ) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1659 this.fromQ = fromQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1660 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1661
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1662
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1663 protected void setFromQFree(double fromQ) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1664 this.fromQFree = fromQ;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1665 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1666
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1667
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1668 protected double getToQ() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1669 return toQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1670 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1671
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1672
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1673 protected double getToQFree() {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1674 return toQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1675 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1676
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1677
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1678 protected void setToQ(double toQ) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1679 this.toQ = toQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1680 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1681
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1682
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1683 protected void setToQFree(double toQ) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1684 this.toQFree = toQ;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1685 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1686
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1687
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1688 protected double getStepQ() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1689 return stepQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1690 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1691
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1692
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1693 protected double getStepQFree() {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1694 return stepQFree;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1695 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1696
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1697
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1698 protected void setStepQ(double stepQ) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1699 this.stepQ = stepQ;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1700 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1701
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1702
1485
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1703 protected void setStepQFree(double stepQ) {
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1704 this.stepQFree = stepQ;
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1705 }
00e429e6420c Made WQInputPanel able to distinguish between a 'Q at Gauge' and 'Free Q'.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1459
diff changeset
1706
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1707 protected double[] getSingleW() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1708 return valuesW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1709 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1710
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1711 protected double[] getSingleWFree() {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1712 return valuesWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1713 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1714
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1715 protected void setSingleW(double[] values) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1716 valuesW = values;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1717 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1718
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1719 protected void setSingleWFree(double[] values) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1720 valuesWFree = values;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1721 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1722
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1723 protected double getFromW() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1724 return fromW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1725 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1726
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1727 protected double getFromWFree() {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1728 return fromWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1729 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1730
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1731 protected void setFromW(double fromW) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1732 this.fromW = fromW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1733 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1734
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1735 protected void setFromWFree(double fromW) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1736 this.fromW = fromW;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1737 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1738
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1739 protected double getToW() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1740 return toW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1741 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1742
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1743 protected double getToWFree() {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1744 return toWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1745 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1746
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1747 protected void setToW(double toW) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1748 this.toW = toW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1749 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1750
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1751 protected void setToWFree(double toW) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1752 this.toWFree = toW;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1753 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1754
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1755 protected double getStepW() {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1756 return stepW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1757 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1758
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1759 protected double getStepWFree() {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1760 return stepWFree;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1761 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1762
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1763 protected void setStepW(double stepW) {
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1764 this.stepW = stepW;
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1765 }
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1766
2473
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1767 protected void setStepWFree(double stepW) {
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1768 this.stepWFree = stepW;
9fa513b7955b Issue 499.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 2460
diff changeset
1769 }
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1770
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1771 /**
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1772 * Determines the min and max kilometer value selected in a former state. A
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1773 * bit silly, but we need to run over each value of the "old data" to find
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1774 * such values because it is not available here.
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1775 *
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1776 * @param data The DataList which contains the whole data inserted for the
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1777 * current artifact.
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1778 *
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1779 * @return a double array with [min, max].
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1780 */
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1781 protected double[] getMinMaxKM(DataList[] data) {
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1276
diff changeset
1782 ArtifactDescription adesc = artifact.getArtifactDescription();
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1276
diff changeset
1783 return adesc.getKMRange();
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1784 }
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1785
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1786
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1787 /**
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1788 * Returns the name of the selected river.
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1789 *
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1790 * @param data The DataList with all data.
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1791 *
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1792 * @return the name of the current river.
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1793 */
4982
cbe89b2ce3cd WQInputPanel: Removed unnecessary parameter from function.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4568
diff changeset
1794 protected String getRiverName() {
1279
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1276
diff changeset
1795 ArtifactDescription adesc = artifact.getArtifactDescription();
af6ad7522351 Bugfix: #336 Improved determination of min/max KM values - code moved to ArtifactDescription.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1276
diff changeset
1796 return adesc.getRiver();
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1797 }
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1798
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1799
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1800 protected void fetchWQData() {
4983
8679d16fe11a WQInputPanel: Whitespace cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4982
diff changeset
1801 Config config = Config.getInstance();
8679d16fe11a WQInputPanel: Whitespace cosmetics.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4982
diff changeset
1802 String locale = config.getLocale ();
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1803
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1804 ArtifactDescription adescr = artifact.getArtifactDescription();
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1805 DataList[] data = adescr.getOldData();
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1806
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1807 double[] mm = getMinMaxKM(data);
4982
cbe89b2ce3cd WQInputPanel: Removed unnecessary parameter from function.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 4568
diff changeset
1808 String river = getRiverName();
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1809
1425
bc06a671ef60 Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1401
diff changeset
1810 wqInfoService.getWQInfo(locale, river, mm[0], mm[1],
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1811 new AsyncCallback<WQInfoObject[]>() {
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
1812 @Override
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1813 public void onFailure(Throwable caught) {
6557
685c2be0541c Debug/typo fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
1814 GWT.log("Could not receive wq informations.");
579
f1b977657880 #140 Code cleanup in WQ table.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 578
diff changeset
1815 SC.warn(caught.getMessage());
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1816 }
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1817
4568
bbd82bd8e541 flys-client: Cosmetics and warnings.
Christian Lins <christian.lins@intevation.de>
parents: 3969
diff changeset
1818 @Override
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1819 public void onSuccess(WQInfoObject[] wqi) {
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1820 int num = wqi != null ? wqi.length :0;
6557
685c2be0541c Debug/typo fixes.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 5993
diff changeset
1821 GWT.log("Received " + num + " wq informations.");
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1822
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1823 if (num == 0) {
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1824 return;
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1825 }
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1826
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1827 addWQInfo(wqi);
519
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
1828
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
1829 String wq = (String) modes.getValue(FIELD_WQ);
77234b1d009c ISSUE-90 & ISSUE-40 (part II/II) Former selected values are preselected after back jumps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 284
diff changeset
1830 String sr = (String) modes.getValue(FIELD_MODE);
2392
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1831 GWT.log("sending: " + wq + ", " + sr);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1832 boolean isQ = wq.contains("Q");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1833 boolean isFree = wq.contains("FREE");
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1834 boolean isRange = sr.equals(FIELD_MODE_RANGE);
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1835
8112ec686a9a Picked rev4066,4075 from trunk.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2389
diff changeset
1836 updatePanels(isQ, isFree, isRange);
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1837 }
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1838 }
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1839 );
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1840 }
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1841
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1842
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1843 protected void addWQInfo (WQInfoObject[] wqi) {
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1844 for(WQInfoObject wi: wqi) {
580
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1845 WQInfoRecord rec = new WQInfoRecord(wi);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1846
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1847 if (wi.getType().equals("W")) {
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1848 wTable.addData(rec);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1849 }
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1850 else {
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1851 qdTable.addData(rec);
42512fce9b1b #140, #122: Splitted the WQD table in the WQInputPanel into two tables: a table for QD values and a table for W values - only the QD table is selectable.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 579
diff changeset
1852 }
248
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1853 }
ed90309ec608 Added table for WQ inputs.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 247
diff changeset
1854 }
42
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1855 }
ba7df4a24ae0 Added a new widget to enter w/Q values in single and range mode.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
1856 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org