Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/WQSimpleArrayPanel.java @ 4215:c179cd02177d
Logout the current user
Add code to the logout button to remove the current user from the session and to
redirect the browser window to the login page.
Part of flys/issue916 (Logout: "Abmelden" Knopf mit Funktion belegen)
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Tue, 23 Oct 2012 09:59:16 +0200 |
parents | 1f212836998e |
children | 6ae99d996f79 |
rev | line source |
---|---|
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import java.util.ArrayList; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import java.util.LinkedHashMap; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 import java.util.List; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import com.google.gwt.core.client.GWT; |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
8 import com.google.gwt.i18n.client.NumberFormat; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
9 import com.google.gwt.user.client.rpc.AsyncCallback; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import com.smartgwt.client.widgets.Canvas; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import com.smartgwt.client.widgets.Label; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 import com.smartgwt.client.widgets.form.DynamicForm; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import com.smartgwt.client.widgets.form.fields.RadioGroupItem; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 import com.smartgwt.client.widgets.form.fields.events.BlurEvent; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import com.smartgwt.client.widgets.form.fields.events.BlurHandler; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 import com.smartgwt.client.widgets.form.fields.events.ChangedEvent; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import com.smartgwt.client.widgets.form.fields.events.ChangedHandler; |
1556
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
18 import com.smartgwt.client.widgets.layout.HLayout; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 import com.smartgwt.client.widgets.layout.VLayout; |
4198
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
20 import com.smartgwt.client.widgets.tab.Tab; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
21 import com.smartgwt.client.widgets.tab.TabSet; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
4198
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
23 import de.intevation.flys.client.client.Config; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
24 import de.intevation.flys.client.client.FLYSConstants; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
25 import de.intevation.flys.client.client.services.GaugeInfoService; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
26 import de.intevation.flys.client.client.services.GaugeInfoServiceAsync; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
27 import de.intevation.flys.client.client.services.WQInfoService; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
28 import de.intevation.flys.client.client.services.WQInfoServiceAsync; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
29 import de.intevation.flys.client.client.ui.wq.ClickableQDTable; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
30 import de.intevation.flys.client.client.ui.wq.ClickableWTable; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
31 import de.intevation.flys.client.client.ui.wq.ClickableWTable.ClickMode; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
32 import de.intevation.flys.client.client.ui.wq.QDTable; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
33 import de.intevation.flys.client.shared.model.ArtifactDescription; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 import de.intevation.flys.client.shared.model.Data; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 import de.intevation.flys.client.shared.model.DataItem; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 import de.intevation.flys.client.shared.model.DataList; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 import de.intevation.flys.client.shared.model.DefaultData; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 import de.intevation.flys.client.shared.model.DefaultDataItem; |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
39 import de.intevation.flys.client.shared.model.DoubleArrayData; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
40 import de.intevation.flys.client.shared.model.Gauge; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 import de.intevation.flys.client.shared.model.IntegerOptionsData; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
42 import de.intevation.flys.client.shared.model.WQInfoObject; |
4198
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
43 import de.intevation.flys.client.shared.model.WQInfoRecord; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
45 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 /** |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 * An UIProvider for inserting a mode for W or Q and an array of values for each |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 * mode. |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 * |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 */ |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 public class WQSimpleArrayPanel |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 extends AbstractUIProvider |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 implements BlurHandler |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 public static final String FIELD_MODE = "field_mode"; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 public static final String FIELD_VALUES = "field_values"; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 public static final int MODE_W = 0; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 protected FLYSConstants MSG = GWT.create(FLYSConstants.class); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
63 protected GaugeInfoServiceAsync gaugeService = |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
64 GWT.create(GaugeInfoService.class); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
65 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
66 protected WQInfoServiceAsync wqInfoService = |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
67 GWT.create(WQInfoService.class); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
68 |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 protected String modeName; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 protected String valuesName; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 protected Canvas valuesWrapper; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 |
4200
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
74 protected TabSet tabs; |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
75 |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 protected DynamicForm modeForm; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 protected DoubleArrayPanel panelW; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 protected DoubleArrayPanel panelQ; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 |
4198
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
80 protected ClickableWTable wTable; |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
81 protected ClickableQDTable qTable; |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
82 |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
83 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 @Override |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
85 public Canvas create(DataList data) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 VLayout rootLayout = new VLayout(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
87 rootLayout.addMember(createLabel(data)); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
88 rootLayout.addMember(createModeForm(data)); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 rootLayout.addMember(createValuesForm(data)); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
90 rootLayout.addMember(getNextButton()); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
91 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
92 initializeMode(data); |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
93 initializeTables(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
94 initializeHelperPanel(); |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
95 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
96 return rootLayout; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
97 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
98 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 @Override |
1556
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
101 public Canvas createOld(DataList dataList) { |
1576
8e5c5c70c586
Implemented WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1556
diff
changeset
|
102 IntegerOptionsData modeData = findOptionsData(dataList); |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
103 DoubleArrayData valuesData = findValuesData(dataList); |
1576
8e5c5c70c586
Implemented WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1556
diff
changeset
|
104 |
8e5c5c70c586
Implemented WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1556
diff
changeset
|
105 DataItem[] modeItems = modeData.getItems(); |
8e5c5c70c586
Implemented WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1556
diff
changeset
|
106 DataItem[] valuesItems = valuesData.getItems(); |
1556
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
107 |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
108 HLayout layout = new HLayout(); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
109 VLayout valueContainer = new VLayout(); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
110 |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
111 Label label = new Label(dataList.getLabel()); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
112 label.setWidth(200); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
113 label.setHeight(20); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
114 |
1576
8e5c5c70c586
Implemented WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1556
diff
changeset
|
115 Label mode = new Label(modeItems[0].getLabel()); |
1556
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
116 mode.setHeight(20); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
117 mode.setWidth(150); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
118 |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
119 Canvas values = createOldValues(modeData, valuesData); |
1556
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
120 values.setWidth(150); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
121 |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
122 valueContainer.addMember(mode); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
123 valueContainer.addMember(values); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
124 |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
125 layout.addMember(label); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
126 layout.addMember(valueContainer); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
127 layout.addMember(getBackButton(dataList.getState())); |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
128 |
3324ef9d8341
First step to implement WQSimpleArrayPanel.createOld().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1529
diff
changeset
|
129 return layout; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
133 @Override |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 protected Data[] getData() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 Data mode = getModeAsData(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
137 if (getMode() == MODE_W) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 return new Data[] { mode, getWValuesAsData() }; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 else { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
141 return new Data[] { mode, getQValuesAsData() }; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
142 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 @Override |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 public List<String> validate() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
148 List<String> errors = new ArrayList<String>(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
150 // TODO IMPLEMENT ME |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
151 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
152 return errors; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
153 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
155 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 @Override |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
157 public void onBlur(BlurEvent event) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
158 // TODO TRIGGER VALIDATION HERE |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
159 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
160 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
161 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
162 protected void initializeMode(DataList dataList) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
163 IntegerOptionsData data = findOptionsData(dataList); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
164 DataItem[] items = data != null ? data.getItems() : null; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
165 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
166 if (items != null) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
167 String value = items[0].getStringValue(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
168 modeForm.setValue(modeName, value); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
169 switchMode(value); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
170 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
171 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
172 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
173 |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
174 protected void initializeTables() { |
4198
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
175 wTable = new ClickableWTable(new ClickableWTable.WClickedListener() { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
176 @Override |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
177 public void clickedUpper(double value) { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
178 // nothing to do here |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
179 } |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
180 |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
181 @Override |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
182 public void clickedLower(double value) { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
183 panelW.addValue(value); |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
184 } |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
185 }, ClickMode.SINGLE); |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
186 |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
187 qTable = new ClickableQDTable(new ClickableQDTable.QClickedListener() { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
188 |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
189 @Override |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
190 public void clickedUpper(double value) { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
191 // nothing to do here |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
192 } |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
193 |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
194 @Override |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
195 public void clickedLower(double value) { |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
196 panelQ.addValue(value); |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
197 } |
1cdbd8a0c994
Added two new tables ClickableQDTable and ClickableWTable and made Ws and Qs clickable in historical discharge calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2467
diff
changeset
|
198 }, ClickableQDTable.ClickMode.SINGLE); |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
199 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
200 fetchWQData(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
201 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
202 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
203 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
204 protected void initializeHelperPanel() { |
4200
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
205 tabs = new TabSet(); |
2467
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
206 tabs.setWidth100(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
207 tabs.setHeight100(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
208 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
209 Tab w = new Tab(MSG.wq_table_w()); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
210 Tab q = new Tab(MSG.wq_table_q()); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
211 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
212 w.setPane(wTable); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
213 q.setPane(qTable); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
214 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
215 tabs.addTab(w, 0); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
216 tabs.addTab(q, 1); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
217 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
218 helperContainer.addMember(tabs); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
219 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
220 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
221 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
222 protected void fetchWQData() { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
223 ArtifactDescription desc = artifact.getArtifactDescription(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
224 DataList[] data = desc.getOldData(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
225 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
226 final String river = desc.getRiver(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
227 final String refGauge = desc.getReferenceGauge(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
228 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
229 gaugeService.getGaugeInfo(river, refGauge, new AsyncCallback<List<Gauge>>() { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
230 public void onFailure(Throwable throwable) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
231 GWT.log("ERROR WHILE FETCHING GAUGES!"); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
232 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
233 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
234 public void onSuccess(List<Gauge> gauges) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
235 Gauge g = gauges.get(0); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
236 updateWQData(river, g.getLower(), g.getUpper()); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
237 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
238 }); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
239 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
240 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
241 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
242 protected void updateWQData(String river, double lower, double upper) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
243 GWT.log("FETCH WQ INFO FOR " + lower + " - " + upper + " now!"); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
244 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
245 Config config = Config.getInstance(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
246 String locale = config.getLocale(); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
247 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
248 wqInfoService.getWQInfo(locale, river, lower, upper, |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
249 new AsyncCallback<WQInfoObject[]>() { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
250 public void onFailure(Throwable caught) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
251 GWT.log("Could not recieve wq informations."); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
252 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
253 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
254 public void onSuccess(WQInfoObject[] wqi) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
255 int num = wqi != null ? wqi.length :0; |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
256 GWT.log("Recieved " + num + " wq informations."); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
257 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
258 if (num == 0) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
259 return; |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
260 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
261 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
262 addWQInfo(wqi); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
263 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
264 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
265 ); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
266 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
267 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
268 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
269 protected void addWQInfo (WQInfoObject[] wqi) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
270 for(WQInfoObject wi: wqi) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
271 WQInfoRecord rec = new WQInfoRecord(wi); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
272 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
273 if (wi.getType().equals("W")) { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
274 wTable.addData(rec); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
275 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
276 else { |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
277 qTable.addData(rec); |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
278 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
279 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
280 } |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
281 |
070321cf17e1
Added the WQ tables to the helper panel of the WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1595
diff
changeset
|
282 |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
283 protected Canvas createLabel(DataList dataList) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
284 Label label = new Label(MSG.wqHistorical()); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
285 label.setWidth100(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
286 label.setHeight(25); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
287 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
288 return label; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
289 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
290 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
291 |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
292 protected Canvas createOldValues( |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
293 IntegerOptionsData modeData, |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
294 DoubleArrayData valuesData |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
295 ) { |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
296 NumberFormat nf = NumberFormat.getDecimalFormat(); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
297 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
298 DataItem[] items = modeData.getItems(); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
299 String unit = items[0].getStringValue().equals("0") ? "cm" : "q³/s"; |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
300 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
301 VLayout layout = new VLayout(); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
302 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
303 for (double val: valuesData.getValues()) { |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
304 Label tmp = new Label(nf.format(val) + " " + unit); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
305 tmp.setHeight(20); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
306 layout.addMember(tmp); |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
307 } |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
308 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
309 return layout; |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
310 } |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
311 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
312 |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
313 protected DoubleArrayData findValuesData(DataList dataList) { |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
314 DoubleArrayData data = null; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
315 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
316 for (int i = 0, n = dataList.size(); i < n; i++) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
317 Data tmp = dataList.get(i); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
318 |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
319 if (tmp instanceof DoubleArrayData) { |
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
320 return (DoubleArrayData) tmp; |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
321 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
322 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
323 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
324 return null; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
325 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
326 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
327 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
328 protected IntegerOptionsData findOptionsData(DataList dataList) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
329 IntegerOptionsData data = null; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
330 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
331 for (int i = 0, n = dataList.size(); i < n; i++) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
332 Data tmp = dataList.get(i); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
333 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
334 if (tmp instanceof IntegerOptionsData) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
335 return (IntegerOptionsData) tmp; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
336 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
337 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
338 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
339 return null; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
340 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
341 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
342 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
343 protected Canvas createModeForm(DataList dataList) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
344 IntegerOptionsData data = findOptionsData(dataList); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
345 DataItem[] opts = data != null ? data.getItems() : null; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
346 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
347 if (data == null || opts == null) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
348 return new Label("NO MODES FOUND"); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
349 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
350 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
351 modeName = data.getLabel(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
352 modeForm = new DynamicForm(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
353 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
354 RadioGroupItem items = new RadioGroupItem(data.getLabel()); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
355 LinkedHashMap values = new LinkedHashMap(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
356 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
357 for (DataItem opt: opts) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
358 values.put(opt.getStringValue(), opt.getLabel()); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
359 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
360 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
361 items.setValueMap(values); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
362 items.setVertical(false); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
363 items.setShowTitle(false); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
364 items.addChangedHandler(new ChangedHandler() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
365 @Override |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
366 public void onChanged(ChangedEvent event) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
367 switchMode((String) event.getValue()); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
368 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
369 }); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
370 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
371 modeForm.setFields(items); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
372 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
373 return modeForm; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
374 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
375 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
376 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
377 protected Canvas createValuesForm(DataList dataList) { |
1595
e53d773e6992
Display inserted W/Q values in WQSimpleArrayPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1576
diff
changeset
|
378 DoubleArrayData data = findValuesData(dataList); |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
379 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
380 if (data == null) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
381 return new Label("NO VALUES GIVEN!"); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
382 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
383 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
384 valuesName = data.getLabel(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
385 panelW = new DoubleArrayPanel(MSG.unitWSingle(), null, this); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
386 panelQ = new DoubleArrayPanel(MSG.unitQSingle(), null, this); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
387 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
388 valuesWrapper = new Canvas(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
389 valuesWrapper.setWidth100(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
390 valuesWrapper.setHeight(35); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
391 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
392 return valuesWrapper; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
393 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
394 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
395 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
396 public void switchMode(String newMode) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
397 for (Canvas child: valuesWrapper.getChildren()) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
398 valuesWrapper.removeChild(child); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
399 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
400 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
401 if (newMode.equals("0")) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
402 valuesWrapper.addChild(panelW); |
4200
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
403 showWTable(); |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
404 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
405 else if (newMode.equals("1")) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
406 valuesWrapper.addChild(panelQ); |
4200
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
407 showQDTable(); |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
408 } |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
409 } |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
410 |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
411 public void showWTable() { |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
412 if (tabs != null) { |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
413 tabs.selectTab(0); |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
414 } |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
415 } |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
416 |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
417 public void showQDTable() { |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
418 if (tabs != null) { |
1f212836998e
flys/issue901: Changing the W/Q mode in WQSimpleArrayPanel (used in historical discharge calculation) will now switch the W/QD table in the helper panel, too.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4198
diff
changeset
|
419 tabs.selectTab(1); |
1528
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
420 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
421 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
422 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
423 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
424 public String getModeAsString() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
425 return (String) modeForm.getValue(modeName); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
426 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
427 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
428 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
429 public int getMode() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
430 String modeValue = getModeAsString(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
431 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
432 try { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
433 return Integer.valueOf(modeValue); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
434 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
435 catch (NumberFormatException nfe) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
436 // do something |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
437 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
438 catch (NullPointerException npe) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
439 // do something |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
440 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
441 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
442 return -1; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
443 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
444 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
445 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
446 public Data getModeAsData() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
447 String value = getModeAsString(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
448 DataItem item = new DefaultDataItem(value, value, value); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
449 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
450 return new DefaultData(modeName, null, null, new DataItem[] { item }); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
451 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
452 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
453 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
454 public Data getWValuesAsData() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
455 double[] values = panelW.getInputValues(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
456 String valueStr = getStringValue(values); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
457 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
458 DataItem item = new DefaultDataItem(valueStr, valueStr, valueStr); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
459 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
460 return new DefaultData(valuesName, null, null, new DataItem[] { item }); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
461 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
462 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
463 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
464 public Data getQValuesAsData() { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
465 double[] values = panelQ.getInputValues(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
466 String valueStr = getStringValue(values); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
467 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
468 DataItem item = new DefaultDataItem(valueStr, valueStr, valueStr); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
469 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
470 return new DefaultData(valuesName, null, null, new DataItem[] { item }); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
471 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
472 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
473 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
474 protected static String getStringValue(double[] values) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
475 StringBuilder sb = new StringBuilder(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
476 boolean first = true; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
477 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
478 for (double value: values) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
479 if (first) { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
480 sb.append(String.valueOf(value)); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
481 first = false; |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
482 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
483 else { |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
484 sb.append(";" + String.valueOf(value)); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
485 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
486 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
487 |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
488 return sb.toString(); |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
489 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
490 } |
ff41405a891d
Added a new widget to simply insert a WQ mode and values as array.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
491 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |