Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/GaugeTimeRangePanel.java @ 2468:6a65694bdcc2
Issue 506.
Gauge time range panel now accepts dates. The dates are stored as long values.
flys-client/trunk@4176 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Tue, 20 Mar 2012 14:53:42 +0000 |
parents | f30919997e57 |
children | 8d27d2d33d70 |
rev | line source |
---|---|
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
3 import java.util.List; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
4 import java.util.ArrayList; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
5 import java.util.Date; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
6 import java.util.Calendar; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
7 import java.text.ParseException; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
8 |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 import com.google.gwt.core.client.GWT; |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
10 import com.google.gwt.i18n.client.DateTimeFormat; |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
11 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 import com.smartgwt.client.types.ListGridFieldType; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 import com.smartgwt.client.data.Record; |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
15 import com.smartgwt.client.widgets.layout.HLayout; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
16 import com.smartgwt.client.widgets.form.DynamicForm; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
17 import com.smartgwt.client.widgets.form.fields.DateRangeItem; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
18 import com.smartgwt.client.widgets.Label; |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
19 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 import com.smartgwt.client.widgets.layout.VLayout; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
21 import com.smartgwt.client.widgets.Canvas; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 import com.smartgwt.client.widgets.grid.ListGrid; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 import com.smartgwt.client.widgets.grid.ListGridField; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 import com.smartgwt.client.widgets.grid.CellFormatter; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 import com.smartgwt.client.widgets.grid.ListGridRecord; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 import com.smartgwt.client.widgets.grid.events.RecordClickHandler; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
27 import com.smartgwt.client.widgets.grid.events.RecordClickEvent; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
28 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
29 import de.intevation.flys.client.client.FLYSConstants; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
30 import de.intevation.flys.client.client.Config; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
31 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
32 import de.intevation.flys.client.shared.model.DataList; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
33 import de.intevation.flys.client.shared.model.DataItem; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 import de.intevation.flys.client.shared.model.ArtifactDescription; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 import de.intevation.flys.client.shared.model.Data; |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
36 import de.intevation.flys.client.shared.model.RangeData; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
37 import de.intevation.flys.client.shared.model.LongRangeData; |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
38 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 import de.intevation.flys.client.client.ui.range.DischargeInfoDataSource; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 /** |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 */ |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
44 public class GaugeTimeRangePanel extends RangePanel { |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 /** The message class that provides i18n strings. */ |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 protected FLYSConstants MESSAGES = GWT.create(FLYSConstants.class); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
48 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 protected ListGrid yearTable; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
50 |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
51 protected DateRangeItem dateRange; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
52 |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 public GaugeTimeRangePanel() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 GWT.log("Creating YearInputPanel"); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
55 yearTable = new ListGrid(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
56 yearTable.setAutoFetchData(true); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
57 yearTable.setShowHeaderContextMenu(false); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
58 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
59 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
60 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
61 public Canvas create(DataList data) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
62 setDataName(data); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
63 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
64 VLayout root = new VLayout(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
65 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
66 root.addMember(createLabel(data)); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
67 root.addMember(createForm(data)); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
68 root.addMember(getNextButton()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
69 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
70 initDefaults(data); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
71 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
72 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
73 initYearTable(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
74 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
75 long gauge = getGaugeNumber(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
76 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
77 Config config = Config.getInstance(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
78 String url = config.getServerUrl(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
79 yearTable.setDataSource(new DischargeInfoDataSource(url, gauge)); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
80 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
81 helperContainer.addMember(yearTable); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
82 return root; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
83 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
84 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
85 |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
86 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
87 protected void initDefaults(DataList dataList) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
88 RangeData data = findRangeData(dataList); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
89 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
90 if(data != null) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
91 GWT.log("data: " + data); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
92 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
93 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
94 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
95 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
96 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
97 public Canvas createOld(DataList dataList) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
98 GWT.log("create old date."); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
99 Data data = dataList.get(0); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
100 DataItem[] items = data.getItems(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
101 GWT.log(data.getClass().toString()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
102 HLayout layout = new HLayout(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
103 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
104 Label label = new Label(dataList.getLabel()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
105 label.setWidth(200); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
106 label.setHeight(20); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
107 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
108 Date dl = new Date((Long)((LongRangeData)data).getLower()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
109 Date du = new Date((Long)((LongRangeData)data).getUpper()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
110 DateTimeFormat dtf = DateTimeFormat.getMediumDateFormat(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
111 Label value = new Label(dtf.format(dl) + " - " + dtf.format(du)); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
112 value.setHeight(20); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
113 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
114 layout.addMember(label); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
115 layout.addMember(value); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
116 layout.addMember(getBackButton(dataList.getState())); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
117 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
118 return layout; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
119 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
120 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
121 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
122 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
123 protected Data[] getData() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
124 long lo = getLowerAsLong(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
125 long up = getUpperAsLong(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
126 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
127 return new Data[] { new LongRangeData(getDataName(), null, lo, up) }; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
128 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
129 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
130 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
131 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
132 protected Canvas createForm(DataList dataList) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
133 HLayout layout = new HLayout(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
134 DynamicForm form = new DynamicForm(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
135 dateRange = new DateRangeItem(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
136 dateRange.setToTitle(MESSAGES.to()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
137 dateRange.setFromTitle(MESSAGES.from()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
138 dateRange.setShowTitle(false); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
139 form.setFields(dateRange); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
140 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
141 layout.addMember(form); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
142 return layout; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
143 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
144 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
145 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
146 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
147 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
148 public Object getMaxLower() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
149 Date d = dateRange.getFromDate(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
150 return new Long(d.getTime()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
151 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
152 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
153 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
154 protected long getLowerAsLong() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
155 Date d = dateRange.getFromDate(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
156 return d.getTime(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
157 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
158 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
159 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
160 protected long getUpperAsLong() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
161 Date d = dateRange.getToDate(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
162 return d.getTime(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
163 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
164 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
165 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
166 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
167 public Object getMaxUpper() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
168 Date d = dateRange.getToDate(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
169 return new Long(d.getTime()); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
170 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
171 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
172 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
173 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
174 public void setLower(String lower) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
175 try { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
176 DateTimeFormat dtf = |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
177 DateTimeFormat.getFormat("yyyy"); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
178 Date dy = dtf.parse(lower); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
179 dy.setMonth(0); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
180 dy.setDate(1); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
181 dateRange.setFromDate(dy); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
182 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
183 catch(IllegalArgumentException iae) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
184 GWT.log("could not parse lower date."); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
185 //TODO: Messagebox with error. |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
186 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
187 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
188 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
189 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
190 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
191 public void setUpper(String upper) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
192 try { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
193 DateTimeFormat dtf = |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
194 DateTimeFormat.getFormat("yyyy"); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
195 Date dy = dtf.parse(upper); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
196 dy.setMonth(0); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
197 dy.setDate(1); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
198 dateRange.setToDate(dy); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
199 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
200 catch(IllegalArgumentException iae) { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
201 GWT.log("could not parse upper date."); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
202 //TODO: Messagebox with error. |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
203 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
204 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
205 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
206 |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
207 protected ListGrid initYearTable() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
208 String baseUrl = GWT.getHostPageBaseURL(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
209 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
210 yearTable.setWidth100(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
211 yearTable.setHeight100(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
212 yearTable.setShowRecordComponents(true); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
213 yearTable.setShowRecordComponentsByCell(true); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
214 yearTable.setEmptyMessage(MESSAGES.empty_filter()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
215 yearTable.setCanReorderFields(false); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
216 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
217 CellFormatter cf = new CellFormatter() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
218 public String format( |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
219 Object value, |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
220 ListGridRecord record, |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
221 int rowNum, int colNum) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
222 if (value == null) return null; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
223 if (value.toString().equals("-1")) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
224 return ""; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
225 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
226 return value.toString(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
227 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
228 }; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
229 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
230 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
231 ListGridField addstart = new ListGridField ("", ""); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
232 addstart.setType (ListGridFieldType.ICON); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
233 addstart.setWidth (20); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
234 addstart.setCellIcon(baseUrl + MESSAGES.markerGreen()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
235 addstart.addRecordClickHandler(new RecordClickHandler() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
236 public void onRecordClick(RecordClickEvent e) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
237 Record r = e.getRecord(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
238 if (r.getAttribute("start").equals("-1")) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
239 return; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
240 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
241 else { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
242 setLower(r.getAttribute("start")); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
243 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
244 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
245 }); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
246 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
247 ListGridField addend = new ListGridField ("", ""); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
248 addend.setType (ListGridFieldType.ICON); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
249 addend.setWidth (20); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
250 addend.setCellIcon(baseUrl + MESSAGES.markerRed()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
251 addend.addRecordClickHandler(new RecordClickHandler() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
252 public void onRecordClick(RecordClickEvent e) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
253 Record r = e.getRecord(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
254 if (r.getAttribute("end").equals("-1")) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
255 return; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
256 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
257 else { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
258 setUpper(r.getAttribute("end")); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
259 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
260 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
261 }); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
262 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
263 ListGridField desc = |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
264 new ListGridField("description", MESSAGES.description()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
265 desc.setType(ListGridFieldType.TEXT); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
266 desc.setWidth("*"); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
267 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
268 ListGridField start = |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
269 new ListGridField("start", MESSAGES.start_year()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
270 start.setType(ListGridFieldType.INTEGER); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
271 start.setWidth(50); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
272 start.setCellFormatter(cf); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
273 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
274 ListGridField end = |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
275 new ListGridField("end", MESSAGES.end_year()); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
276 end.setType(ListGridFieldType.INTEGER); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
277 end.setWidth(50); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
278 end.setCellFormatter(cf); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
279 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
280 yearTable.setFields(addstart, addend, desc, start, end); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
281 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
282 return yearTable; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
283 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
284 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
285 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
286 protected long getGaugeNumber() { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
287 ArtifactDescription adescr = artifact.getArtifactDescription(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
288 DataList[] data = adescr.getOldData(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
289 |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
290 String gauge = ""; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
291 if (data != null && data.length > 0) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
292 for (int i = 0; i < data.length; i++) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
293 DataList dl = data[i]; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
294 if (dl.getState().equals("state.winfo.historicalq.reference_gauge")) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
295 for (int j = 0; j < dl.size(); j++) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
296 Data d = dl.get(j); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
297 DataItem[] di = d.getItems(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
298 if (di != null && di.length == 1) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
299 gauge = d.getItems()[0].getStringValue(); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
300 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
301 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
302 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
303 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
304 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
305 try { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
306 return Long.parseLong(gauge); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
307 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
308 catch (NumberFormatException nfe) { |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
309 GWT.log("Error parsing gauge."); |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
310 return 0; |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
311 } |
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
312 } |
2468
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
313 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
314 |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
315 @Override |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
316 public List<String> validate() { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
317 List<String> errors = new ArrayList<String>(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
318 if (dateRange.getFromDate() == null || |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
319 dateRange.getToDate() == null || |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
320 !dateRange.getFromDate().before(dateRange.getToDate())) |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
321 { |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
322 String msg = MSG.error_validate_date_range(); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
323 errors.add(msg); |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
324 } |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
325 return errors; |
6a65694bdcc2
Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1602
diff
changeset
|
326 } |
1602
f30919997e57
Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
327 } |