annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/ParameterMatrixPanel.java @ 2528:33e2a1e23ae8

Implemented ParameterMatrixPanel.createOld() and added a real 'description' to Data instances in DataFactory. flys-client/trunk@4421 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 16 May 2012 10:45:57 +0000
parents da1d897ed66d
children 261347ea60b8
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;
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21
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 * @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
24 */
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
25 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
26
2525
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
27 private ParameterMatrix matrix;
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
28
2521
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
29 @Override
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
30 protected Data[] getData() {
2525
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
31 Map<String, List<String>> selection = matrix.getSelection();
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
32 Set<Map.Entry<String, List<String>>> entries = selection.entrySet();
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
33
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
34 Data[] list = new Data[selection.size()];
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
35
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
36 int i = 0;
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
37
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
38 for (Map.Entry<String, List<String>> entry: entries) {
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
39 String value = buildValueString(entry.getValue());
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
40
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
41 DataItem item = new DefaultDataItem(
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
42 entry.getKey(),
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
43 null,
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
44 value);
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
45
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
46 list[i++] = new DefaultData(
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
47 entry.getKey(), null, null, new DataItem[] { item });
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
48 }
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 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
51 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52
2525
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
53
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
54 protected String buildValueString(List<String> values) {
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
55 StringBuilder sb = new StringBuilder();
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
56
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
57 boolean first = true;
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
58
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
59 for (String value: values) {
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
60 if (!first) {
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
61 sb.append(";");
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
62 }
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 sb.append(value);
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
65
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
66 first = false;
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
67 }
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 return sb.toString();
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
70 }
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
2521
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 @Override
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 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
75 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
76 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
77
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 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
79 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
80
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 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
82 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
83 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
84
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 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
86 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
87
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 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
89 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
90
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 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
92 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
93
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 for (int j = 0, m = dataList.size(); j < m; 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
95 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
96 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
97
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 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
99 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
100 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
101
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 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
103 }
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 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
106 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
107
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 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
109 }
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 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
112
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 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
114 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
115
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 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
117 }
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 @Override
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
120 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
121 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
122 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
123
2525
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
124 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
125
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126 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
127 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
128 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
129 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
130 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
131
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
132 v.addMember(matrix.create());
2525
da1d897ed66d Implemented ParameterMatrixPanel.getData().
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2524
diff changeset
133 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
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 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
136 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
137
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 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
140 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
141 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
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 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
144 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
145 }
fe177e7f61d1 Added a new UIProvider that renders a matrix of checkboxes for user input.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
146 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org