Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/DistancePanel.java @ 6518:1a7f5d09b9d8
Longitudinal sections: partly renamed outs and configured recommendations at once
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Fri, 28 Jun 2013 21:08:23 +0200 |
parents | ea9eef426962 |
children | afa531aca3de |
rev | line source |
---|---|
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5993
ea9eef426962
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5861
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5861
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
172338b1407f
GWT client: Added copyright header.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
9 package org.dive4elements.river.client.client.ui; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import com.google.gwt.core.client.GWT; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 import com.google.gwt.i18n.client.NumberFormat; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
14 import com.smartgwt.client.data.AdvancedCriteria; |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
15 import com.smartgwt.client.data.Criteria; |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
16 import com.smartgwt.client.data.Criterion; |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
17 import com.smartgwt.client.data.Record; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
18 import com.smartgwt.client.types.Alignment; |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
19 import com.smartgwt.client.types.OperatorId; |
783
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
20 import com.smartgwt.client.util.SC; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 import com.smartgwt.client.widgets.Canvas; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 import com.smartgwt.client.widgets.Label; |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
23 import com.smartgwt.client.widgets.form.DynamicForm; |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
24 import com.smartgwt.client.widgets.form.fields.SelectItem; |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
25 import com.smartgwt.client.widgets.form.fields.StaticTextItem; |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
26 import com.smartgwt.client.widgets.form.fields.events.BlurEvent; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 import com.smartgwt.client.widgets.form.fields.events.BlurHandler; |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
28 import com.smartgwt.client.widgets.form.fields.events.ChangedEvent; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
29 import com.smartgwt.client.widgets.form.fields.events.ChangedHandler; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
30 import com.smartgwt.client.widgets.grid.ListGrid; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
31 import com.smartgwt.client.widgets.grid.events.RecordClickEvent; |
783
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
32 import com.smartgwt.client.widgets.grid.events.RecordClickHandler; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 import com.smartgwt.client.widgets.layout.HLayout; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
34 import com.smartgwt.client.widgets.layout.VLayout; |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
35 import com.smartgwt.client.widgets.tab.Tab; |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
36 import com.smartgwt.client.widgets.tab.TabSet; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
37 import com.smartgwt.client.widgets.tab.events.TabSelectedEvent; |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
38 import com.smartgwt.client.widgets.tab.events.TabSelectedHandler; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
40 import org.dive4elements.river.client.client.Config; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
41 import org.dive4elements.river.client.client.FLYSConstants; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
42 import org.dive4elements.river.client.client.event.FilterHandler; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
43 import org.dive4elements.river.client.client.event.RangeFilterEvent; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
44 import org.dive4elements.river.client.client.event.StringFilterEvent; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
45 import org.dive4elements.river.client.client.ui.range.DistanceInfoDataSource; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
46 import org.dive4elements.river.client.client.ui.range.LocationsTable; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
47 import org.dive4elements.river.client.client.ui.range.RangeTable; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
48 import org.dive4elements.river.client.shared.model.ArtifactDescription; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
49 import org.dive4elements.river.client.shared.model.Data; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
50 import org.dive4elements.river.client.shared.model.DataItem; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
51 import org.dive4elements.river.client.shared.model.DataList; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
52 import org.dive4elements.river.client.shared.model.DefaultData; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
53 import org.dive4elements.river.client.shared.model.DefaultDataItem; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
55 import java.util.ArrayList; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
56 import java.util.LinkedHashMap; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
57 import java.util.List; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
60 public class DistancePanel extends AbstractUIProvider implements BlurHandler, FilterHandler |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
61 { |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
63 private static final long serialVersionUID = -883142387908664588L; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
64 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
65 public static final int DEFAULT_STEP_WIDTH = 100; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
66 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
67 public static final String FIELD_LOWER = "ld_from"; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
68 public static final String FIELD_UPPER = "ld_to"; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
69 public static final String FIELD_STEP = "ld_step"; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
70 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 protected FLYSConstants MSG = GWT.create(FLYSConstants.class); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
74 protected RangeTable distancesTable; |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
75 protected LocationsTable locationsTable; |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
76 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 protected DoubleRangePanel distancePanel; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
79 protected TableFilter filterDescription; |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
80 protected RangeTableFilter filterRange; |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
81 |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
82 protected TabSet tabs; |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
83 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
84 protected double min; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
85 protected double max; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
86 |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
87 protected StaticTextItem filterResultCount; |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
88 protected ListGrid currentFiltered; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
89 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
90 public DistancePanel() { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
91 this("right"); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
92 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
93 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
94 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
95 public DistancePanel(String labelOrientation) { |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
96 distancePanel = new DoubleRangePanel( |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
97 labelFrom(), labelTo(), labelStep(), |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
98 0d, 0d, 0d, 250, this, labelOrientation); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
102 @Override |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
103 public Canvas create(DataList data) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
104 VLayout layout = new VLayout(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 layout.setMembersMargin(10); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 |
1423
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
107 Label label = new Label(getLabel()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
109 Canvas submit = getNextButton(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
110 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 label.setHeight(25); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 distancePanel.setHeight(50); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
114 layout.addMember(label); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 layout.addMember(distancePanel); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
116 layout.addMember(submit); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
117 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
118 initMinMaxValues(data); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 initDefaultValues(data); |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
120 initHelperPanel(); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
121 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
122 return layout; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
123 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
125 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
126 @Override |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 public Canvas createOld(DataList dataList) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 String s = getOldSelectionString(dataList); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
129 String l = dataList.getLabel(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 Label label = new Label(l); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 Label selected = new Label(s); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
133 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 HLayout layout = new HLayout(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 layout.setWidth(400); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
137 label.setWidth(200); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 selected.setWidth(130); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 layout.addMember(label); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
141 layout.addMember(selected); |
784
3fa64c796ffc
Added the missing 'back'-button to the DistancePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
783
diff
changeset
|
142 layout.addMember(getBackButton(dataList.getState())); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 return layout; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
148 protected String getOldSelectionString(DataList dataList) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 List<Data> items = dataList.getAll(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
150 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
151 Data dFrom = getData(items, getLowerField()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
152 Data dTo = getData(items, getUpperField()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
153 Data dStep = getData(items, getStepField()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
155 DataItem[] from = dFrom.getItems(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 DataItem[] to = dTo.getItems(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
157 DataItem[] step = dStep.getItems(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
158 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
159 StringBuilder sb = new StringBuilder(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
160 sb.append(from[0].getLabel()); |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
161 sb.append(" " + getUnitFrom() + " - "); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
162 sb.append(to[0].getLabel()); |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
163 sb.append(" " + getUnitTo() + " - "); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
164 sb.append(step[0].getLabel()); |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
165 sb.append(" " + getUnitStep()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
166 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
167 return sb.toString(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
168 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
169 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
170 |
1423
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
171 protected String getLabel() { |
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
172 return MSG.distance_state(); |
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
173 } |
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
174 |
204e085a9f1c
Bugfix: set correct label for 'waterlevel/ground' state.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1387
diff
changeset
|
175 |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
176 protected String labelFrom() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
177 return getLabelFrom() + " [" + getUnitFrom() + "]"; |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
178 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
179 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
180 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
181 protected String getLabelFrom() { |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
182 return MSG.dpLabelFrom(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
183 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
184 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
185 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
186 protected String getUnitFrom() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
187 return MSG.dpUnitFrom(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
188 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
189 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
190 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
191 protected String labelTo() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
192 return getLabelTo() + " [" + getUnitTo() + "]"; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
193 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
194 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
195 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
196 protected String getLabelTo() { |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
197 return MSG.dpLabelTo(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
198 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
199 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
200 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
201 protected String getUnitTo() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
202 return MSG.dpUnitTo(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
203 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
204 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
205 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
206 protected String labelStep() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
207 return getLabelStep() + " [" + getUnitStep() + "]"; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
208 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
209 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
210 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
211 protected String getLabelStep() { |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
212 return MSG.dpLabelStep(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
213 } |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
214 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
215 |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
216 protected String getUnitStep() { |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
217 return MSG.dpUnitStep(); |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
218 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
219 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
220 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
221 protected String getLowerField() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
222 return FIELD_LOWER; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
223 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
224 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
225 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
226 protected String getUpperField() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
227 return FIELD_UPPER; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
228 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
229 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
230 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
231 protected String getStepField() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
232 return FIELD_STEP; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
233 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
234 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
235 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
236 @Override |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
237 public List<String> validate() { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
238 List<String> errors = new ArrayList<String>(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
239 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
240 if (!distancePanel.validateForm()) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
241 errors.add(MSG.wrongFormat()); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
242 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
243 return errors; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
244 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
245 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
246 validateFrom(errors); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
247 validateTo(errors); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
248 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
249 return errors; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
250 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
251 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
252 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
253 protected void validateFrom(List<String> errors) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
254 double from = distancePanel.getFrom(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
255 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
256 if (from < min || from > max) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
257 NumberFormat nf = NumberFormat.getDecimalFormat(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
258 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
259 String tmp = MSG.error_validate_lower_range(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
260 tmp = tmp.replace("$1", nf.format(from)); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
261 tmp = tmp.replace("$2", nf.format(min)); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
262 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
263 distancePanel.setFrom(min); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
264 errors.add(tmp); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
265 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
266 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
267 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
268 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
269 protected void validateTo(List<String> errors) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
270 double to = distancePanel.getTo(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
271 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
272 if (to < min || to > max) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
273 NumberFormat nf = NumberFormat.getDecimalFormat(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
274 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
275 String tmp = MSG.error_validate_upper_range(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
276 tmp = tmp.replace("$1", nf.format(to)); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
277 tmp = tmp.replace("$2", nf.format(max)); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
278 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
279 distancePanel.setTo(max); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
280 errors.add(tmp); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
281 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
282 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
283 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
284 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
285 @Override |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
286 public Data[] getData() { |
1387
3cbc7fbfff0e
Set attribute 'ld_mode' in appropiate UIProviders.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1265
diff
changeset
|
287 Data[] data = new Data[4]; |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
288 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
289 data[0] = getDataFrom(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
290 data[1] = getDataTo(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
291 data[2] = getDataStep(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
292 |
1387
3cbc7fbfff0e
Set attribute 'ld_mode' in appropiate UIProviders.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1265
diff
changeset
|
293 DataItem item = new DefaultDataItem("ld_mode","ld_mode", "distance"); |
3cbc7fbfff0e
Set attribute 'ld_mode' in appropiate UIProviders.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1265
diff
changeset
|
294 data[3] = new DefaultData( |
3cbc7fbfff0e
Set attribute 'ld_mode' in appropiate UIProviders.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1265
diff
changeset
|
295 "ld_mode", null, null, new DataItem[] { item }); |
3cbc7fbfff0e
Set attribute 'ld_mode' in appropiate UIProviders.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1265
diff
changeset
|
296 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
297 return data; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
298 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
299 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
300 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
301 protected Data getDataFrom() { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
302 String value = String.valueOf(distancePanel.getFrom()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
303 String field = getLowerField(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
304 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
305 DataItem item = new DefaultDataItem(field, field, value); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
306 return new DefaultData( |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
307 field, null, null, new DataItem[] { item }); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
308 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
309 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
310 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
311 protected Data getDataTo() { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
312 String value = String.valueOf(distancePanel.getTo()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
313 String field = getUpperField(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
314 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
315 DataItem item = new DefaultDataItem(field, field, value); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
316 return new DefaultData( |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
317 field, null, null, new DataItem[] { item }); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
318 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
319 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
320 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
321 protected Data getDataStep() { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
322 String value = String.valueOf(distancePanel.getStep()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
323 String field = getStepField(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
324 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
325 DataItem item = new DefaultDataItem(field, field, value); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
326 return new DefaultData( |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
327 field, null, null, new DataItem[] { item }); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
328 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
329 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
330 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
331 @Override |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
332 public void onBlur(BlurEvent event) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
333 distancePanel.validateForm(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
334 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
335 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
336 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
337 protected void initMinMaxValues(DataList data) { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
338 Data f = getData(data.getAll(), getLowerField()); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
339 Data t = getData(data.getAll(), getUpperField()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
340 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
341 DataItem[] fItems = f.getItems(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
342 DataItem[] tItems = t.getItems(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
343 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
344 try { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
345 min = Double.valueOf(fItems[0].getStringValue()); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
346 max = Double.valueOf(tItems[0].getStringValue()); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
347 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
348 catch (NumberFormatException nfe) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
349 min = -Double.MAX_VALUE; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
350 max = Double.MAX_VALUE; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
351 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
352 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
353 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
354 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
355 protected void initDefaultValues(DataList data) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
356 initDefaultFrom(data); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
357 initDefaultTo(data); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
358 initDefaultStep(data); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
359 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
360 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
361 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
362 protected void initDefaultFrom(DataList data) { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
363 Data f = getData(data.getAll(), getLowerField()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
364 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
365 double from = getDefaultFrom(); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
366 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
367 try { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
368 from = getDefaultValue(f); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
369 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
370 catch (NumberFormatException nfe) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
371 // do nothing |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
372 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
373 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
374 distancePanel.setFrom(from); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
375 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
376 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
377 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
378 protected double getDefaultFrom() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
379 return min; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
380 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
381 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
382 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
383 protected void initDefaultTo(DataList data) { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
384 Data t = getData(data.getAll(), getUpperField()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
385 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
386 double to = getDefaultTo(); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
387 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
388 try { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
389 to = getDefaultValue(t); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
390 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
391 catch (NumberFormatException nfe) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
392 // do nothing |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
393 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
394 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
395 distancePanel.setTo(to); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
396 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
397 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
398 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
399 protected double getDefaultTo() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
400 return max; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
401 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
402 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
403 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
404 protected void initDefaultStep(DataList data) { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
405 Data s = getData(data.getAll(), getStepField()); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
406 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
407 double step = getDefaultStep(); |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
408 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
409 try { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
410 step = getDefaultValue(s); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
411 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
412 catch (NumberFormatException nfe) { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
413 // do nothing |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
414 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
415 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
416 distancePanel.setStep(step); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
417 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
418 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
419 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
420 protected double getDefaultStep() { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
421 return DEFAULT_STEP_WIDTH; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
422 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
423 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
784
diff
changeset
|
424 |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
425 protected double getDefaultValue(Data data) |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
426 throws NumberFormatException |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
427 { |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
428 DataItem def = data.getDefault(); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
429 String defValue = def != null ? def.getStringValue() : null; |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
430 |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
431 return Double.valueOf(defValue); |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
432 } |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
433 |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
434 |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
435 protected void initHelperPanel() { |
793
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
436 distancesTable = new RangeTable(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
437 locationsTable = new LocationsTable(); |
4497d19c22fd
Finished the panel to enter waterlevel/ground information (from, to, diff).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
788
diff
changeset
|
438 |
782
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
439 Config config = Config.getInstance(); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
440 String url = config.getServerUrl(); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
441 String river = getRiverName(); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
442 |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
443 distancesTable.setAutoFetchData(true); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
444 locationsTable.setAutoFetchData(true); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
445 distancesTable.setDataSource(new DistanceInfoDataSource( |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
446 url, river, "distances")); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
447 locationsTable.setDataSource(new DistanceInfoDataSource( |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
448 url, river, "locations")); |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
449 |
783
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
450 distancesTable.addRecordClickHandler(new RecordClickHandler() { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
451 @Override |
783
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
452 public void onRecordClick(RecordClickEvent e) { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
453 Record r = e.getRecord(); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
454 |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
455 String from = r.getAttribute("from"); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
456 String to = r.getAttribute("to"); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
457 |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
458 try { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
459 distancePanel.setFrom(Double.valueOf(from)); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
460 distancePanel.setTo(Double.valueOf(to)); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
461 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
462 catch (NumberFormatException nfe) { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
463 SC.warn(MSG.wrongFormat()); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
464 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
465 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
466 }); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
467 |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
468 locationsTable.addRecordClickHandler(new RecordClickHandler() { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
469 @Override |
783
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
470 public void onRecordClick(RecordClickEvent e) { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
471 Record r = e.getRecord(); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
472 int field = e.getFieldNum(); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
473 |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
474 try { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
475 String value = r.getAttribute("from"); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
476 |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
477 switch (field) { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
478 case 0: |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
479 distancePanel.setFrom(Double.valueOf(value)); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
480 break; |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
481 case 1: |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
482 distancePanel.setTo(Double.valueOf(value)); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
483 break; |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
484 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
485 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
486 catch (NumberFormatException nfe) { |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
487 SC.warn(MSG.wrongFormat()); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
488 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
489 } |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
490 }); |
8ebaad41285b
#159 Added listeners to the locations and distances tables of the kilometer range panel to set the from/to fields.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
782
diff
changeset
|
491 |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
492 tabs = new TabSet(); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
493 tabs.setWidth100(); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
494 tabs.setHeight100(); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
495 |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
496 Tab locations = new Tab(MSG.locations()); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
497 Tab distances = new Tab(MSG.distance()); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
498 |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
499 locations.setPane(locationsTable); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
500 distances.setPane(distancesTable); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
501 |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
502 tabs.addTab(locations, 0); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
503 tabs.addTab(distances, 1); |
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
504 |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
505 filterResultCount = new StaticTextItem(MSG.resultCount()); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
506 filterResultCount.setTitleAlign(Alignment.LEFT); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
507 filterResultCount.setTitleStyle("color: #000"); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
508 |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
509 filterDescription = new TableFilter(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
510 filterDescription.setHeight("30px"); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
511 filterDescription.addFilterHandler(this); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
512 |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
513 filterRange = new RangeTableFilter(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
514 filterRange.setHeight("30px"); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
515 filterRange.addFilterHandler(this); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
516 filterRange.setVisible(false); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
517 |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
518 SelectItem filterCriteria = new SelectItem(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
519 filterCriteria.setShowTitle(false); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
520 filterCriteria.setWidth(100); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
521 filterCriteria.addChangedHandler(new ChangedHandler() { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
522 @Override |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
523 public void onChanged(ChangedEvent e) { |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
524 if(e.getValue().toString().equals("range")) { |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
525 filterRange.setVisible(true); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
526 filterDescription.setVisible(false); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
527 filterDescription.clear(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
528 } |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
529 else { |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
530 filterRange.setVisible(false); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
531 filterRange.clear(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
532 filterDescription.setVisible(true); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
533 } |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
534 } |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
535 }); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
536 |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
537 LinkedHashMap<String, String> filterMap = |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
538 new LinkedHashMap<String, String>(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
539 filterMap.put("description", MSG.description()); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
540 filterMap.put("range", MSG.range()); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
541 filterCriteria.setValueMap(filterMap); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
542 filterCriteria.setValue("description"); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
543 |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
544 DynamicForm form = new DynamicForm(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
545 form.setFields(filterCriteria); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
546 |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
547 DynamicForm form2 = new DynamicForm(); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
548 form2.setFields(filterResultCount); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
549 |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
550 HLayout filterLayout = new HLayout(); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
551 filterLayout.addMember(form); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
552 filterLayout.addMember(filterDescription); |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
553 filterLayout.addMember(filterRange); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
554 filterLayout.setHeight(30); |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
555 tabs.addTabSelectedHandler(new TabSelectedHandler() { |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
556 @Override |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
557 public void onTabSelected(TabSelectedEvent evt) { |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
558 filterDescription.clear(); |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
559 filterRange.clear(); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
560 filterResultCount.setValue(""); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
561 |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
562 Canvas c = evt.getTabPane(); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
563 if(c instanceof ListGrid) { |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
564 currentFiltered = (ListGrid)c; |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
565 } |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
566 } |
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
567 }); |
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
568 |
788
dfbc6693247e
Integrated a stacked panel on the right side of the ParameterList that enables users to see calculation results and the helper panel at the same time.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
569 helperContainer.addMember(tabs); |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
570 helperContainer.addMember(filterLayout); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
571 helperContainer.addMember(form2); |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
572 } |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
573 |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
574 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
575 @Override |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
576 public void onFilterCriteriaChanged(StringFilterEvent event) { |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
577 String search = event.getFilter(); |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
578 |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
579 if (search != null && search.length() > 0) { |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
580 Criteria c = new Criteria("description", search); |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
581 locationsTable.filterData(c); |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
582 distancesTable.filterData(c); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
583 filterResultCount.setValue(currentFiltered.getRecords().length); |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
584 } |
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
585 else { |
893
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
586 locationsTable.clearCriteria(); |
89c01218172b
Clear the table filter on tab selection change and input method change.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
863
diff
changeset
|
587 distancesTable.clearCriteria(); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
588 filterResultCount.setValue(""); |
863
9bb8b7a751ec
Added filter for the "description" row of helper input tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
793
diff
changeset
|
589 } |
781
6653cf54b45d
The distance panel got two tables for locations and ranges. Both do not load any data until now.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
780
diff
changeset
|
590 } |
782
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
591 |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
592 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
2520
diff
changeset
|
593 @Override |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
594 public void onFilterCriteriaChanged(RangeFilterEvent event) { |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
595 Float from = event.getFrom() - 0.001f; |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
596 Float to = event.getTo() + 0.001f; |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
597 |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
598 Criterion combinedFilter = null; |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
599 Criterion locationFilter = null; |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
600 if (from.equals(Float.NaN) && to.equals(Float.NaN)) { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
601 locationsTable.clearCriteria(); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
602 distancesTable.clearCriteria(); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
603 filterResultCount.setValue(""); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
604 return; |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
605 } |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
606 else if (from.equals(Float.NaN)) { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
607 combinedFilter = new Criterion("to", OperatorId.LESS_OR_EQUAL, to); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
608 locationFilter = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
609 new Criterion("from", OperatorId.LESS_OR_EQUAL, to); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
610 locationsTable.filterData(locationFilter); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
611 distancesTable.filterData(combinedFilter); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
612 filterResultCount.setValue(currentFiltered.getRecords().length); |
1538
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
613 return; |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
614 } |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
615 else if (to.equals(Float.NaN)) { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
616 combinedFilter = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
617 new Criterion("from", OperatorId.GREATER_OR_EQUAL, from); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
618 } |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
619 else { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
620 AdvancedCriteria c1 = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
621 new AdvancedCriteria(OperatorId.AND, new Criterion[] { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
622 new Criterion("from", OperatorId.GREATER_OR_EQUAL, from), |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
623 new Criterion("from", OperatorId.LESS_OR_EQUAL, to) |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
624 }); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
625 |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
626 AdvancedCriteria c2 = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
627 new AdvancedCriteria(OperatorId.AND, new Criterion[] { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
628 new Criterion("to", OperatorId.GREATER_OR_EQUAL, from), |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
629 new Criterion("to", OperatorId.LESS_OR_EQUAL, to) |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
630 }); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
631 |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
632 AdvancedCriteria c3 = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
633 new AdvancedCriteria(OperatorId.AND, new Criterion[] { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
634 new Criterion("from", OperatorId.LESS_OR_EQUAL, to), |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
635 new Criterion("to", OperatorId.GREATER_OR_EQUAL, from) |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
636 }); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
637 |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
638 combinedFilter = |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
639 new AdvancedCriteria(OperatorId.OR, new Criterion[] { |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
640 c1, c2, c3 |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
641 }); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
642 } |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
643 locationsTable.filterData(combinedFilter); |
92f81eac034a
Added filter implementation for input helper tables in single location and
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1534
diff
changeset
|
644 distancesTable.filterData(combinedFilter); |
1567
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
645 filterResultCount.setValue(currentFiltered.getRecords().length); |
7e738bc8ed75
Show hit count in filtered input helper tables.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1538
diff
changeset
|
646 |
1534
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
647 } |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
648 |
98123d34529b
Added UI parts and event for filtering distances and locations.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1423
diff
changeset
|
649 |
782
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
650 protected String getRiverName() { |
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
651 ArtifactDescription adescr = artifact.getArtifactDescription(); |
2520
fe67f1345687
Added a MINFOArtifact and improved the DistancePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1567
diff
changeset
|
652 return adescr.getRiver(); |
782
4a7ece57f44c
#159 The tables in the WQ panel for calculation 4 are now filled with data.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
781
diff
changeset
|
653 } |
780
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
654 } |
a39c2f531755
Implemented a new panel to enter kilometer ranges (with no option to insert locations).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
655 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |