Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java @ 4691:62091b0ef789
Fix filtering of Collections/Projects in the gui
The filter was reseted after each reloading of the users collections.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Mon, 17 Dec 2012 16:13:42 +0100 |
parents | 360e22afb98b |
children |
rev | line source |
---|---|
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
3 import com.smartgwt.client.types.FieldType; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import com.smartgwt.client.widgets.Canvas; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 import com.smartgwt.client.widgets.Label; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 import com.smartgwt.client.widgets.layout.VLayout; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 import de.intevation.flys.client.shared.model.Data; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 import de.intevation.flys.client.shared.model.DataItem; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import de.intevation.flys.client.shared.model.DataList; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
12 /** |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 */ |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
15 public class BooleanPanel extends TextProvider { |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 |
4131
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
815
diff
changeset
|
17 private static final long serialVersionUID = -8448442865635399232L; |
360e22afb98b
Cosmetics, warnings and minor TODOs.
Christian Lins <christian.lins@intevation.de>
parents:
815
diff
changeset
|
18 |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
19 public static final String FIELD_NAME = "boolean_field"; |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
20 public static final int TITLE_WIDTH = 0; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 protected String dataName; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 @Override |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 public Canvas create(DataList dataList) { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 Data data = dataList.get(0); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 DataItem[] items = data.getItems(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
29 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 this.dataName = data.getLabel(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
32 VLayout layout = new VLayout(); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
33 Label label = new Label(data.getDescription()); |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
34 Canvas form = createForm(getTitle(items[0])); |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
35 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
36 layout.setMembersMargin(10); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
37 layout.setHeight(35); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
38 label.setHeight(35); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 layout.addMember(label); |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
41 layout.addMember(form); |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
42 layout.addMember(getNextButton()); |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
43 layout.setMembersMargin(10); |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 |
794
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
45 initDefaultValues(dataList); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
46 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
47 return layout; |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
48 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
51 protected String getTitle(DataItem item) { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
52 return item.getLabel(); |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 @Override |
794
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
57 protected void initDefaultValues(DataList dataList) { |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
58 Data data = dataList.get(0); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
59 DataItem item = data.getDefault(); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
60 |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
61 String value = item.getStringValue(); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
62 Boolean bool = Boolean.valueOf(value); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
63 |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
64 if (bool) { |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
65 form.setValue(getFieldName(), bool); |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
66 } |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
67 } |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
68 |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
69 |
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
70 @Override |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
71 protected FieldType getFieldType() { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
72 return FieldType.BOOLEAN; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
73 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 @Override |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
77 protected String getFieldName() { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
78 return FIELD_NAME; |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
79 } |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
80 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
81 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
82 @Override |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
83 protected String getDataName() { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
84 return dataName; |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
85 } |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
86 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
87 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
88 @Override |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
89 protected String getValueAsString() { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
90 Boolean aBool = (Boolean) form.getValue(getFieldName()); |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
91 |
794
40269a176cd2
Set default values in the BooleanPanel, TextProvider and AutoIntegerPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
792
diff
changeset
|
92 return aBool != null ? aBool.toString() : "false"; |
792
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
93 } |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
94 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
95 |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
96 @Override |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
97 protected int getTitleWidth() { |
696e3404e991
Finished the panel to activate/deactivate optional parameters.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
98 return TITLE_WIDTH; |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
99 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
100 } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
101 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |