annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/GaugeTimeRangePanel.java @ 4131:360e22afb98b

Cosmetics, warnings and minor TODOs.
author Christian Lins <christian.lins@intevation.de>
date Mon, 15 Oct 2012 00:04:35 +0200
parents 0cc2c3d89a9d
children c722c08cf502
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
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
3 import com.google.gwt.core.client.GWT;
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
4 import com.google.gwt.i18n.client.DateTimeFormat;
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
5
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
6 import com.smartgwt.client.data.Record;
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 import com.smartgwt.client.types.ListGridFieldType;
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
8 import com.smartgwt.client.util.SC;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
9 import com.smartgwt.client.widgets.Canvas;
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
10 import com.smartgwt.client.widgets.Label;
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
11 import com.smartgwt.client.widgets.form.DynamicForm;
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
12 import com.smartgwt.client.widgets.form.fields.DateRangeItem;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
13 import com.smartgwt.client.widgets.grid.CellFormatter;
1602
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.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
15 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
16 import com.smartgwt.client.widgets.grid.ListGridRecord;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
17 import com.smartgwt.client.widgets.grid.events.RecordClickEvent;
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.grid.events.RecordClickHandler;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
19 import com.smartgwt.client.widgets.layout.HLayout;
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
20 import com.smartgwt.client.widgets.layout.VLayout;
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 import de.intevation.flys.client.client.Config;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
23 import de.intevation.flys.client.client.FLYSConstants;
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
24 import de.intevation.flys.client.client.ui.range.DischargeInfoDataSource;
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 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
26 import de.intevation.flys.client.shared.model.Data;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
27 import de.intevation.flys.client.shared.model.DataItem;
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
28 import de.intevation.flys.client.shared.model.DataList;
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
29 import de.intevation.flys.client.shared.model.LongRangeData;
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
30 import de.intevation.flys.client.shared.model.RangeData;
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
31
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
32 import java.util.ArrayList;
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
33 import java.util.Date;
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
34 import java.util.List;
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
35
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
36 /**
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 * @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
38 */
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
39 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
40
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
41 private static final long serialVersionUID = -157571967010594739L;
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
42
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 /** 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
44 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
45
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
46 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
47
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
48 protected DateRangeItem dateRange;
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
49
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
50 public GaugeTimeRangePanel() {
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 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
52 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
53 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
54 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
55 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
56
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
57 @Override
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
58 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
59 setDataName(data);
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 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
62
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
63 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
64 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
65 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
66
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 initDefaults(data);
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68
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 initYearTable();
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 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
73
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74 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
75 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
76 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
77
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
78 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
79 return root;
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
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
82
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
83 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
84 protected void initDefaults(DataList dataList) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
85 RangeData data = findRangeData(dataList);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
86
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
87 if(data != null) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
88 GWT.log("data: " + data);
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 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
91
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
94 public Canvas createOld(DataList dataList) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
95 GWT.log("create old date.");
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
96 Data data = dataList.get(0);
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
97
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
98 HLayout layout = new HLayout();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
99
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
100 Label label = new Label(dataList.getLabel());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
101 label.setWidth(200);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
102 label.setHeight(20);
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 Date dl = new Date((Long)((LongRangeData)data).getLower());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
105 Date du = new Date((Long)((LongRangeData)data).getUpper());
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
106
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
107 @SuppressWarnings("deprecation")
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
108 DateTimeFormat dtf = DateTimeFormat.getMediumDateFormat();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
109 Label value = new Label(dtf.format(dl) + " - " + dtf.format(du));
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
110 value.setHeight(20);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
111
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
112 layout.addMember(label);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
113 layout.addMember(value);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
114 layout.addMember(getBackButton(dataList.getState()));
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
115
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
116 return layout;
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
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
121 protected Data[] getData() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
122 long lo = getLowerAsLong();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
123 long up = getUpperAsLong();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
124
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
125 return new Data[] { new LongRangeData(getDataName(), null, lo, up) };
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
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
130 protected Canvas createForm(DataList dataList) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
131 HLayout layout = new HLayout();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
132 DynamicForm form = new DynamicForm();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
133 dateRange = new DateRangeItem();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
134 dateRange.setToTitle(MESSAGES.to());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
135 dateRange.setFromTitle(MESSAGES.from());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
136 dateRange.setShowTitle(false);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
137 form.setFields(dateRange);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
138
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
139 layout.addMember(form);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
140 return layout;
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
141
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
142 }
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
146 public Object getMaxLower() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
147 Date d = dateRange.getFromDate();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
148 return new Long(d.getTime());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
149 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
150
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 protected long getLowerAsLong() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
153 Date d = dateRange.getFromDate();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
154 return d.getTime();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
155 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
156
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 protected long getUpperAsLong() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
159 Date d = dateRange.getToDate();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
160 return d.getTime();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
161 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
162
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
165 public Object getMaxUpper() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
166 Date d = dateRange.getToDate();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
167 return new Long(d.getTime());
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
168 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
169
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 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
172 public void setLower(String lower) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
173 try {
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
174 long value = Long.valueOf(lower);
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
175 dateRange.setFromDate(new Date(value));
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
176 }
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
177 catch (NumberFormatException nfe) {
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
178 GWT.log("could not parse lower date.");
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
179 SC.warn(MESSAGES.warning_cannot_parse_date());
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
180 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
181 }
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
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
184 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
185 public void setUpper(String upper) {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
186 try {
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
187 long value = Long.valueOf(upper);
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
188 dateRange.setToDate(new Date(value));
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
189 }
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
190 catch (NumberFormatException nfe) {
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
191 GWT.log("could not parse upper date.");
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
192 SC.warn(MESSAGES.warning_cannot_parse_date());
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
193 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
194 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
195
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
196
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
197 protected String buildDateString(String raw) {
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
198 if (raw == null || raw.length() == 0) {
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
199 return "";
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
200 }
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
201
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
202 long value = Long.valueOf(raw);
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
203 Date date = new Date(value);
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
204 @SuppressWarnings("deprecation")
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
205 DateTimeFormat dtf = DateTimeFormat.getMediumDateFormat();
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
206
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
207 return dtf.format(date);
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
208 }
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
209
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
210
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
211 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
212 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
213
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
214 yearTable.setWidth100();
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
215 yearTable.setHeight100();
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
216 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
217 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
218 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
219 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
220
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
221 CellFormatter cf = new CellFormatter() {
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
222 @Override
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
223 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
224 Object value,
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
225 ListGridRecord record,
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
226 int rowNum, int colNum
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
227 ) {
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
228 if (value == null) {
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
229 return null;
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
230 }
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
231 else if (value.toString().equals("-1")) {
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
232 return "";
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
233 }
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
234 else if (colNum == 3 || colNum == 4) {
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
235 return buildDateString(value.toString());
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
236 }
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
237 else {
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
238 return value.toString();
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
239 }
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
240 }
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
241 };
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
242
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 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
245 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
246 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
247 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
248 addstart.addRecordClickHandler(new RecordClickHandler() {
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
249 @Override
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
250 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
251 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
252 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
253 return;
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
254 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
255 else {
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
256 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
257 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
258 }
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 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
262 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
263 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
264 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
265 addend.addRecordClickHandler(new RecordClickHandler() {
4131
360e22afb98b Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents: 4115
diff changeset
266 @Override
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
267 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
268 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
269 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
270 return;
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
271 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
272 else {
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
273 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
274 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
275 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
276 });
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
277
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
278 ListGridField desc =
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
279 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
280 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
281 desc.setWidth("*");
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
282
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
283 ListGridField start =
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
284 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
285 start.setType(ListGridFieldType.INTEGER);
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
286 start.setWidth(100);
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
287 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
288
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
289 ListGridField end =
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
290 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
291 end.setType(ListGridFieldType.INTEGER);
4115
0cc2c3d89a9d #900 Added complete start and end date to the discharge info service and display on in the client side.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2486
diff changeset
292 end.setWidth(100);
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
293 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
294
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
295 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
296
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
297 return yearTable;
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
298 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
299
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 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
302 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
303 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
304
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
305 String gauge = "";
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
306 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
307 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
308 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
309 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
310 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
311 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
312 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
313 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
314 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
315 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
316 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
317 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
318 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
319 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
320 try {
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
321 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
322 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
323 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
324 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
325 return 0;
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
326 }
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
327 }
2468
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
328
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
329
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
330 @Override
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
331 public List<String> validate() {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
332 List<String> errors = new ArrayList<String>();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
333 if (dateRange.getFromDate() == null ||
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
334 dateRange.getToDate() == null ||
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
335 !dateRange.getFromDate().before(dateRange.getToDate()))
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
336 {
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
337 String msg = MSG.error_validate_date_range();
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
338 errors.add(msg);
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
339 }
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
340 return errors;
6a65694bdcc2 Issue 506.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 1602
diff changeset
341 }
1602
f30919997e57 Added helper input table to state 'timerange' input in hist. discharge curves.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
342 }

http://dive4elements.wald.intevation.org