Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/ParameterMatrixPanel.java @ 2532:261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
flys-client/trunk@4428 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 16 May 2012 14:52:39 +0000 |
parents | 33e2a1e23ae8 |
children | a9cdd62aa73e |
rev | line source |
---|---|
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
3 import java.util.List; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
4 import java.util.Map; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
5 import java.util.Set; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
6 |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import com.google.gwt.core.client.GWT; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
9 import com.smartgwt.client.types.FieldType; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 import com.smartgwt.client.widgets.Canvas; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
11 import com.smartgwt.client.widgets.Label; |
2528
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
12 import com.smartgwt.client.widgets.layout.HLayout; |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
13 import com.smartgwt.client.widgets.layout.VLayout; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
14 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
15 import de.intevation.flys.client.shared.model.Data; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
16 import de.intevation.flys.client.shared.model.DataItem; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
17 import de.intevation.flys.client.shared.model.DataList; |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
18 import de.intevation.flys.client.shared.model.DefaultData; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
19 import de.intevation.flys.client.shared.model.DefaultDataItem; |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 import de.intevation.flys.client.shared.model.IntegerOptionsData; |
2532
261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2528
diff
changeset
|
21 import de.intevation.flys.client.shared.model.StringOptionsData; |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 /** |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
25 */ |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 public class ParameterMatrixPanel extends AbstractUIProvider { |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
27 |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
28 private ParameterMatrix matrix; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
29 |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 @Override |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
31 protected Data[] getData() { |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
32 Map<String, List<String>> selection = matrix.getSelection(); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
33 Set<Map.Entry<String, List<String>>> entries = selection.entrySet(); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
34 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
35 Data[] list = new Data[selection.size()]; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
36 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
37 int i = 0; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
38 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
39 for (Map.Entry<String, List<String>> entry: entries) { |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
40 String value = buildValueString(entry.getValue()); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
41 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
42 DataItem item = new DefaultDataItem( |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
43 entry.getKey(), |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
44 null, |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
45 value); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
46 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
47 list[i++] = new DefaultData( |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
48 entry.getKey(), null, null, new DataItem[] { item }); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
49 } |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
50 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
51 return list; |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
54 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
55 protected String buildValueString(List<String> values) { |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
56 StringBuilder sb = new StringBuilder(); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
57 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
58 boolean first = true; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
59 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
60 for (String value: values) { |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
61 if (!first) { |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
62 sb.append(";"); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
63 } |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
64 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
65 sb.append(value); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
66 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
67 first = false; |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
68 } |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
69 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
70 return sb.toString(); |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
71 } |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
72 |
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
73 |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
74 @Override |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
75 public Canvas createOld(DataList dataList) { |
2528
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
76 HLayout layout = new HLayout(); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
77 VLayout vLayout = new VLayout(); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
78 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
79 layout.setWidth(300); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
80 vLayout.setWidth(280); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
81 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
82 for (int i = 0, n = dataList.size(); i < n; i++) { |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
83 HLayout row = new HLayout(); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
84 VLayout cols = new VLayout(); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
85 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
86 row.setWidth(300); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
87 cols.setWidth(100); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
88 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
89 Data data = dataList.get(i); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
90 DataItem[] items = data.getItems(); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
91 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
92 Label parameter = new Label(data.getDescription()); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
93 parameter.setWidth(200); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
94 |
2532
261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2528
diff
changeset
|
95 for (int j = 0, m = items.length; j < m; j++) { |
2528
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
96 DataItem item = items[j]; |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
97 Label value = new Label(item.getLabel()); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
98 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
99 value.setValign(com.smartgwt.client.types.VerticalAlignment.TOP); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
100 value.setWidth(130); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
101 value.setHeight(20); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
102 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
103 cols.addMember(value); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
104 } |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
105 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
106 row.addMember(parameter); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
107 row.addMember(cols); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
108 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
109 vLayout.addMember(row); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
110 } |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
111 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
112 Canvas back = getBackButton(dataList.getState()); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
113 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
114 layout.addMember(vLayout); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
115 layout.addMember(back); |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
116 |
33e2a1e23ae8
Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2525
diff
changeset
|
117 return layout; |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
118 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
120 @Override |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
121 public Canvas create(DataList dataList) { |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
122 VLayout v = new VLayout(); |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
123 v.addMember(createTitle(dataList)); |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
125 matrix = new ParameterMatrix(); |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
126 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 for (Data data: dataList.getAll()) { |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 if (data instanceof IntegerOptionsData) { |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
129 matrix.addColumn((IntegerOptionsData) data); |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
130 } |
2532
261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2528
diff
changeset
|
131 else if (data instanceof StringOptionsData) { |
261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2528
diff
changeset
|
132 matrix.addColumn((StringOptionsData) data); |
261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2528
diff
changeset
|
133 } |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 v.addMember(matrix.create()); |
2525
da1d897ed66d
Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2524
diff
changeset
|
137 v.addMember(getNextButton()); |
2521
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 return v; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
140 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
141 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
142 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 protected Canvas createTitle(DataList dataList) { |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 Label label = new Label(dataList.getState()); |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 label.setHeight(35); |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 return label; |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
148 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
149 } |
fe177e7f61d1
Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
150 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |