comparison gwt-client/src/main/java/org/dive4elements/river/client/client/ui/DemDatacagePanel.java @ 9220:e3c2ae1887e8

Allow to filter contents of datacage on client side. Allow to override column label of datacage Some code cleanup
author gernotbelger
date Wed, 04 Jul 2018 12:00:51 +0200
parents 5dfb3ff98bc6
children
comparison
equal deleted inserted replaced
9219:8642a76f22be 9220:e3c2ae1887e8
6 * documentation coming with Dive4Elements River for details. 6 * documentation coming with Dive4Elements River for details.
7 */ 7 */
8 8
9 package org.dive4elements.river.client.client.ui; 9 package org.dive4elements.river.client.client.ui;
10 10
11 import java.util.ArrayList;
12 import java.util.List;
13
11 import org.dive4elements.river.client.shared.model.Data; 14 import org.dive4elements.river.client.shared.model.Data;
12 import org.dive4elements.river.client.shared.model.DataItem; 15 import org.dive4elements.river.client.shared.model.DataItem;
13 import org.dive4elements.river.client.shared.model.DefaultData; 16 import org.dive4elements.river.client.shared.model.DefaultData;
14 import org.dive4elements.river.client.shared.model.DefaultDataItem; 17 import org.dive4elements.river.client.shared.model.DefaultDataItem;
15 import org.dive4elements.river.client.shared.model.Recommendation; 18 import org.dive4elements.river.client.shared.model.Recommendation;
16 import org.dive4elements.river.client.shared.model.ToLoad; 19 import org.dive4elements.river.client.shared.model.ToLoad;
17 import org.dive4elements.river.client.shared.model.User; 20 import org.dive4elements.river.client.shared.model.User;
18 21
19 import java.util.ArrayList;
20 import java.util.List;
21
22
23 public class DemDatacagePanel extends DatacagePanel { 22 public class DemDatacagePanel extends DatacagePanel {
24 23
25 private static final long serialVersionUID = -2301633938080411687L; 24 private static final long serialVersionUID = -2301633938080411687L;
26 25
27 public static final String OUT = "floodmap_dem_panel"; 26 private static final String OUT = "floodmap_dem_panel";
28 public static final String PARAMETERS = "dem:true";
29 27
28 private static final String PARAMETERS = "dem:true";
30 29
31 public DemDatacagePanel() { 30 public DemDatacagePanel(final User user) {
32 super(); 31 super(user, OUT, PARAMETERS, false);
33 } 32 }
34
35
36 public DemDatacagePanel(User user) {
37 super(user);
38 }
39
40
41 @Override
42 protected void createWidget() {
43 super.createWidget();
44 widget.setIsMutliSelectable(false);
45 }
46
47
48 @Override
49 public String getOuts() {
50 return OUT;
51 }
52
53
54 @Override
55 public String getParameters() {
56 return PARAMETERS;
57 }
58
59 33
60 @Override 34 @Override
61 public List<String> validate() { 35 public List<String> validate() {
62 List<String> errors = new ArrayList<String>(); 36 final List<String> errors = new ArrayList<String>();
63 37
64 Recommendation r = getSelectedRecommendation(); 38 final Recommendation r = getSelectedRecommendation();
65 if (r == null) { 39 if (r == null)
66 errors.add(MSG.requireDGM()); 40 errors.add(MSG.requireDGM());
67 }
68 41
69 return errors; 42 return errors;
70 } 43 }
71 44
72
73 @Override 45 @Override
74 protected Data[] getData() { 46 protected Data[] getData() {
75 Recommendation r = getSelectedRecommendation(); 47 final Recommendation r = getSelectedRecommendation();
76 48
77 DataItem item = new DefaultDataItem(dataName, dataName, r.getIDs()); 49 final String dataName = getMyDataName();
78 return new Data[] { new DefaultData( 50
79 dataName, null, null, new DataItem[] { item }) }; 51 final DataItem item = new DefaultDataItem(dataName, dataName, r.getIDs());
52 return new Data[] { new DefaultData(dataName, null, null, new DataItem[] { item }) };
80 } 53 }
81 54
82
83 protected Recommendation getSelectedRecommendation() { 55 protected Recommendation getSelectedRecommendation() {
84 ToLoad toLoad = widget.getSelection(); 56 final ToLoad toLoad = getSelection();
85 List<Recommendation> recoms = toLoad.toRecommendations(); 57 final List<Recommendation> recoms = toLoad.toRecommendations();
86 58
87 return recoms != null && recoms.size() >= 1 ? recoms.get(0) : null; 59 return recoms != null && recoms.size() >= 1 ? recoms.get(0) : null;
88 } 60 }
89 } 61 }
90 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org