Mercurial > dive4elements > river
annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/LocationPicker.java @ 9558:709a73badd48
VegetationZone removed from Uinfo-Ü'Dauern Workflow
author | gernotbelger |
---|---|
date | Wed, 24 Oct 2018 12:00:49 +0200 |
parents | d1cfd23e35cd |
children |
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; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
11 import java.util.LinkedHashMap; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
12 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
13 import com.google.gwt.core.client.GWT; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
14 import com.google.gwt.i18n.client.NumberFormat; |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
15 import com.smartgwt.client.data.AdvancedCriteria; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
16 import com.smartgwt.client.data.Criteria; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
17 import com.smartgwt.client.data.Criterion; |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
18 import com.smartgwt.client.types.Alignment; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
19 import com.smartgwt.client.types.ListGridFieldType; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
20 import com.smartgwt.client.types.OperatorId; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
21 import com.smartgwt.client.widgets.form.DynamicForm; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
22 import com.smartgwt.client.widgets.form.fields.SelectItem; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
23 import com.smartgwt.client.widgets.form.fields.StaticTextItem; |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
24 import com.smartgwt.client.widgets.form.fields.events.ChangedEvent; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
25 import com.smartgwt.client.widgets.form.fields.events.ChangedHandler; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
26 import com.smartgwt.client.widgets.grid.CellFormatter; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
27 import com.smartgwt.client.widgets.grid.ListGrid; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
28 import com.smartgwt.client.widgets.grid.ListGridField; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 import com.smartgwt.client.widgets.grid.ListGridRecord; |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
30 import com.smartgwt.client.widgets.grid.events.CellClickHandler; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
31 import com.smartgwt.client.widgets.layout.HLayout; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
32 |
5835
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
33 import org.dive4elements.river.client.client.FLYSConstants; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
34 import org.dive4elements.river.client.client.event.FilterHandler; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
35 import org.dive4elements.river.client.client.event.RangeFilterEvent; |
821a02bbfb4e
Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5834
diff
changeset
|
36 import org.dive4elements.river.client.client.event.StringFilterEvent; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
38 /** |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
39 * Bundle widgets and handler for a lacation input helper. |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 * |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 * Note that the construction is weird and driven by issues that arose due to |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 * reasons not understood. |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 public class LocationPicker |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 implements FilterHandler |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
46 { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
47 /** The message class that provides i18n strings.*/ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
48 protected FLYSConstants MSG = GWT.create(FLYSConstants.class); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
49 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
50 /** The locations table. */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
51 protected ListGrid locationTable; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
52 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
53 protected HLayout filterLayout; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
54 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
55 DynamicForm resultCountForm; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
56 |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
57 CellClickHandler handler; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
58 |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
59 boolean isDistance = false; |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
60 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
61 /** Text to show number of matched items when filtered. */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
62 protected StaticTextItem filterResultCount; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
63 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
64 |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
65 public LocationPicker(CellClickHandler handler) { |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
66 locationTable = new ListGrid(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
67 locationTable.setShowHeaderContextMenu(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
68 this.handler = handler; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
69 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
70 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
71 public void prepareFilter() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
72 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
73 filterResultCount = new StaticTextItem(MSG.resultCount()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
74 filterResultCount.setTitleAlign(Alignment.LEFT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
75 filterResultCount.setTitleStyle("color: #000"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
76 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
77 final TableFilter filter = new TableFilter(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
78 filter.setHeight("30px"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
79 filter.addFilterHandler(this); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
80 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
81 final RangeTableFilter filterRange = new RangeTableFilter(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
82 filterRange.setHeight("30px"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 filterRange.addFilterHandler(this); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 filterRange.setVisible(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
86 SelectItem filterCriteria = new SelectItem(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 filterCriteria.setShowTitle(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 filterCriteria.setWidth(100); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 filterCriteria.addChangedHandler(new ChangedHandler() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
90 public void onChanged(ChangedEvent e) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 if(e.getValue().toString().equals("range")) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
92 filterRange.setVisible(true); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 filter.setVisible(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 filter.clear(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
95 filterResultCount.setValue(""); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
96 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
97 else { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
98 filterRange.setVisible(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
99 filterRange.clear(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
100 filter.setVisible(true); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 filterResultCount.setValue(""); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
103 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
104 }); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
105 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
106 LinkedHashMap<String, String> filterMap = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
107 new LinkedHashMap<String, String>(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
108 filterMap.put("description", MSG.description()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
109 filterMap.put("range", MSG.range()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
110 filterCriteria.setValueMap(filterMap); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
111 filterCriteria.setValue("description"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
113 DynamicForm form = new DynamicForm(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 form.setFields(filterCriteria); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
115 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
116 resultCountForm = new DynamicForm(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
117 resultCountForm.setFields(filterResultCount); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
118 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
119 filterLayout = new HLayout(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
120 filterLayout.addMember(form); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
121 filterLayout.addMember(filter); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
122 filterLayout.addMember(filterRange); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
123 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
124 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
125 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
126 /** Access the main widget, a table in which locations can be chosen. */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
127 public ListGrid getLocationTable() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
128 return locationTable; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
129 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
130 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
131 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
132 /** Access the 'form' that shows the filter result count. */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
133 public DynamicForm getResultCountForm() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
134 return resultCountForm; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
135 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
136 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
137 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
138 /** Access the layout containing filter stuff. */ |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
139 public HLayout getFilterLayout() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
140 return filterLayout; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
141 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
142 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
143 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
144 /** |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
145 * This method creates a table that contains the location values. |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
146 */ |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
147 public void createLocationTable(/*RecordClickHandler handler*/) { |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
148 GWT.log("Create Location Table in LocationPicker"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
149 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
150 String baseUrl = GWT.getHostPageBaseURL(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
151 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
152 locationTable.setWidth100(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
153 locationTable.setShowRecordComponents(true); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
154 locationTable.setShowRecordComponentsByCell(true); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
155 locationTable.setHeight100(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
156 locationTable.setEmptyMessage(MSG.empty_filter()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
157 locationTable.setCanReorderFields(false); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
158 |
7966
d1cfd23e35cd
Set identifier for listgridfields and resized columns.
Raimund Renkert <rrenkert@intevation.de>
parents:
5993
diff
changeset
|
159 ListGridField addLocation = new ListGridField ("addlocation", ""); |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
160 addLocation.setType (ListGridFieldType.ICON); |
7966
d1cfd23e35cd
Set identifier for listgridfields and resized columns.
Raimund Renkert <rrenkert@intevation.de>
parents:
5993
diff
changeset
|
161 addLocation.setWidth (30); |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
162 addLocation.setCellIcon (baseUrl + MSG.markerGreen()); |
7966
d1cfd23e35cd
Set identifier for listgridfields and resized columns.
Raimund Renkert <rrenkert@intevation.de>
parents:
5993
diff
changeset
|
163 ListGridField addTo = new ListGridField ("addto", ""); |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
164 addTo.setType (ListGridFieldType.ICON); |
7966
d1cfd23e35cd
Set identifier for listgridfields and resized columns.
Raimund Renkert <rrenkert@intevation.de>
parents:
5993
diff
changeset
|
165 addTo.setWidth (30); |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
166 addTo.setCellIcon (baseUrl + MSG.markerRed()); |
4736
b195fede1c3b
Remove trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4221
diff
changeset
|
167 |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
168 ListGridField ldescr = new ListGridField("description", |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
169 MSG.description()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
170 ldescr.setType(ListGridFieldType.TEXT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
171 ldescr.setWidth("*"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
172 ListGridField lside = new ListGridField("riverside", |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
173 MSG.riverside()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
174 lside.setType(ListGridFieldType.TEXT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
175 lside.setWidth("10%"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
176 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
177 ListGridField loc = new ListGridField("from", MSG.location()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
178 loc.setCellFormatter(new CellFormatter() { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
179 public String format( |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
180 Object value, |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
181 ListGridRecord record, |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
182 int rowNum, int colNum) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
183 if (value == null) return null; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
184 try { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
185 NumberFormat nf; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
186 double v = Double.parseDouble((String)value); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
187 nf = NumberFormat.getFormat("###0.00##"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
188 return nf.format(v); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
189 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
190 catch (Exception e) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
191 return value.toString(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
192 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
193 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
194 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
195 ); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
196 loc.setType(ListGridFieldType.FLOAT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
197 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
198 loc.setWidth("10%"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
199 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
200 ListGridField bottom = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
201 new ListGridField("bottom", MSG.bottom_edge()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
202 bottom.setType(ListGridFieldType.TEXT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
203 bottom.setWidth("10%"); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
204 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
205 ListGridField top = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
206 new ListGridField("top", MSG.top_edge()); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
207 top.setType(ListGridFieldType.TEXT); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
208 top.setWidth("10%"); |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
209 locationTable.addCellClickHandler(handler); |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
210 if (isDistance) { |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
211 locationTable.setFields( |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
212 addLocation, addTo, ldescr, loc, lside, bottom, top); |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
213 } |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
214 else { |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
215 locationTable.setFields( |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
216 addLocation, ldescr, loc, lside, bottom, top); |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
217 } |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
218 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
219 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
220 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
221 @Override |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
222 public void onFilterCriteriaChanged(StringFilterEvent event) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
223 String search = event.getFilter(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
224 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
225 if (search != null && search.length() > 0) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
226 Criteria c = new Criteria("description", search); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
227 locationTable.filterData(c); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
228 filterResultCount.setValue(locationTable.getRecords().length); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
229 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
230 else { |
2454
99bd77501188
Issue 514.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1590
diff
changeset
|
231 locationTable.clearCriteria(); |
99bd77501188
Issue 514.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1590
diff
changeset
|
232 filterResultCount.setValue(""); |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
233 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
234 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
235 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
236 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
237 @Override |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
238 public void onFilterCriteriaChanged(RangeFilterEvent event) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
239 Float from = event.getFrom() - 0.001f; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
240 Float to = event.getTo() + 0.001f; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
241 |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
242 Criterion combinedFilter = null; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
243 if (from.equals(Float.NaN) && to.equals(Float.NaN)) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
244 locationTable.clearCriteria(); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
245 filterResultCount.setValue(""); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
246 return; |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
247 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
248 else if (from.equals(Float.NaN)) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
249 combinedFilter = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
250 new Criterion("from", OperatorId.LESS_OR_EQUAL, to); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
251 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
252 else if (to.equals(Float.NaN)) { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
253 combinedFilter = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
254 new Criterion("from", OperatorId.GREATER_OR_EQUAL, from); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
255 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
256 else { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
257 combinedFilter = |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
258 new AdvancedCriteria(OperatorId.AND, new Criterion[] { |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
259 new Criterion("from", OperatorId.GREATER_OR_EQUAL, from), |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
260 new Criterion("from", OperatorId.LESS_OR_EQUAL, to) |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
261 }); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
262 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
263 locationTable.filterData(combinedFilter); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
264 filterResultCount.setValue(locationTable.getRecords().length); |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
265 } |
4221
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
266 |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
267 public void setIsDistance(boolean value) { |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
268 this.isDistance = value; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
269 } |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
270 |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
271 public boolean isDistance() { |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
272 return this.isDistance; |
480de0dbca8e
Extended location input helper.
Raimund Renkert <rrenkert@intevation.de>
parents:
2454
diff
changeset
|
273 } |
1590
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
274 } |
4b773cfd11b5
Refactoring to ease code-reuse.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
275 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |