annotate gwt-client/src/main/java/org/dive4elements/river/client/client/ui/RangePanel.java @ 7602:c50dbbe17950

issue1596: Store table (cell) data twice: Once as (formatted) string as coming from server, once transformed into float (or string). The benefit is that now we can sort table data numerically, while keeping the formatted and i18ned display of values.
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Wed, 27 Nov 2013 14:55:25 +0100
parents ea9eef426962
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;
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
1606
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
11 import com.google.gwt.core.client.GWT;
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
12
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
13 import com.smartgwt.client.types.Alignment;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
14 import com.smartgwt.client.widgets.Canvas;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
15 import com.smartgwt.client.widgets.Label;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
16 import com.smartgwt.client.widgets.form.DynamicForm;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
17 import com.smartgwt.client.widgets.form.fields.FormItem;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
18 import com.smartgwt.client.widgets.form.fields.TextItem;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
19 import com.smartgwt.client.widgets.form.validator.Validator;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
20 import com.smartgwt.client.widgets.layout.HLayout;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
21 import com.smartgwt.client.widgets.layout.VLayout;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
22
5835
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
23 import org.dive4elements.river.client.client.FLYSConstants;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
24 import org.dive4elements.river.client.shared.model.Data;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
25 import org.dive4elements.river.client.shared.model.DataItem;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
26 import org.dive4elements.river.client.shared.model.DataList;
821a02bbfb4e Fixed internal java dependencies
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5834
diff changeset
27 import org.dive4elements.river.client.shared.model.RangeData;
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
28
4184
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 1606
diff changeset
29 import java.util.ArrayList;
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 1606
diff changeset
30 import java.util.List;
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 1606
diff changeset
31
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 /**
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 * An UIProvider for inserting ranges.
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
35 *
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
36 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
37 */
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
38 public abstract class RangePanel extends AbstractUIProvider {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
39
4184
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 1606
diff changeset
40 private static final long serialVersionUID = -9213089589150335651L;
03de5c424f95 Fix warnings and minor TODOs in flys-client.
Christian Lins <christian.lins@intevation.de>
parents: 1606
diff changeset
41
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
42 public static final String FIELD_LOWER = "field_lower";
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
43 public static final String FIELD_UPPER = "field_upper";
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
44
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
45
1606
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
46 protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
47
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
48 protected DynamicForm lowerForm;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 protected DynamicForm upperForm;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
50
1524
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
51 protected String dataName;
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
52
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
53
1606
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
54 public abstract Object getMaxLower();
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
55
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
56 public abstract Object getMaxUpper();
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
57
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
58
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
59
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 @Override
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 public Canvas create(DataList data) {
1524
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
62 setDataName(data);
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
63
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 VLayout root = new VLayout();
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66 root.addMember(createLabel(data));
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67 root.addMember(createForm(data));
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 root.addMember(getNextButton());
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
69
1566
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
70 initDefaults(data);
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
71
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 return root;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 @Override
1554
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
77 public Canvas createOld(DataList dataList) {
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
78 Data data = dataList.get(0);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
79 DataItem[] items = data.getItems();
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
80
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
81 HLayout layout = new HLayout();
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
82
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
83 Label label = new Label(dataList.getLabel());
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
84 label.setWidth(200);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
85 label.setHeight(20);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
86
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
87 Label value = new Label(items[0].getLabel());
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
88 value.setHeight(20);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
89
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
90 layout.addMember(label);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
91 layout.addMember(value);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
92 layout.addMember(getBackButton(dataList.getState()));
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
93
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
94 return layout;
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
97
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
98 @Override
1606
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
99 public List<String> validate() {
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
100 List<String> errors = new ArrayList<String>();
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
101
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
102 if (!lowerForm.validate()) {
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
103 String msg = MSG.error_validate_range();
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
104 msg = msg.replace("$1", getLower());
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
105 msg = msg.replace("$2", String.valueOf(getMaxLower()));
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
106 msg = msg.replace("$3", String.valueOf(getMaxLower()));
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
107 errors.add(msg);
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
108 }
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
109
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
110 if (!upperForm.validate()) {
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
111 String msg = MSG.error_validate_range();
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
112 msg = msg.replace("$1", getUpper());
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
113 msg = msg.replace("$2", String.valueOf(getMaxLower()));
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
114 msg = msg.replace("$3", String.valueOf(getMaxUpper()));
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
115 errors.add(msg);
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
116 }
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
117
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
118 return errors;
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
119 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
120
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
121
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
122 @Override
1606
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
123 protected Data[] getData() {
a4da53328693 #482 Display i18n messages for validation errors in range panel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1566
diff changeset
124 return new Data[0];
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
125 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
126
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
127
1566
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
128 protected void initDefaults(DataList dataList) {
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
129 RangeData data = findRangeData(dataList);
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
130
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
131 if (data != null) {
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
132 setLower(String.valueOf(data.getDefaultLower()));
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
133 setUpper(String.valueOf(data.getDefaultUpper()));
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
134 }
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
135 }
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
136
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
137
1554
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
138 protected RangeData findRangeData(DataList dataList) {
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
139 for (int i = 0, n = dataList.size(); i < n; i++) {
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
140 Data tmp = dataList.get(i);
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
141
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
142 if (tmp instanceof RangeData) {
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
143 return (RangeData) tmp;
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
144 }
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
145 }
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
146 return null;
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
147 }
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
148
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
149
1524
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
150 protected void setDataName(DataList dataList) {
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
151 Data data = dataList.get(0);
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
152
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
153 this.dataName = data.getLabel();
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
154 }
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
155
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
156
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
157 public String getDataName() {
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
158 return dataName;
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
159 }
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
160
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
161
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
162 public String getLower() {
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
163 return lowerForm.getValueAsString(FIELD_LOWER);
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
164 }
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
165
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
166
1566
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
167 public void setLower(String lower) {
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
168 lowerForm.setValue(FIELD_LOWER, lower);
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
169 }
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
170
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
171
1524
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
172 public String getUpper() {
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
173 return upperForm.getValueAsString(FIELD_UPPER);
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
174 }
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
175
487c3ff7e838 Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1523
diff changeset
176
1566
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
177 public void setUpper(String upper) {
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
178 upperForm.setValue(FIELD_UPPER, upper);
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
179 }
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
180
c408074c6409 Initialize the min and max fields in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1554
diff changeset
181
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
182 protected Canvas createLabel(DataList dataList) {
1554
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
183 RangeData rangeData = findRangeData(dataList);
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
184
1554
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
185 if (rangeData == null) {
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
186 return new Canvas();
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
187 }
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
188
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
189 Label label = new Label(rangeData.getDescription());
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
190
ae25566ce6f6 Implemented the createOld() method in RangePanel.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 1529
diff changeset
191 label.setWidth100();
1523
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
192 label.setHeight(25);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
193
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
194 return label;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
195 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
196
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
197
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
198 protected Canvas createForm(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
199 lowerForm = createLowerForm(dataList);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
200 upperForm = createUpperForm(dataList);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
201
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
202 HLayout formLayout = new HLayout();
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
203 formLayout.addMember(lowerForm);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
204 formLayout.addMember(createSpacer());
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
205 formLayout.addMember(upperForm);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
206
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
207 return formLayout;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
208 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
209
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
210
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
211 protected DynamicForm newForm() {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
212 DynamicForm form = new DynamicForm();
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
213 form.setTitlePrefix("");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
214 form.setTitleSuffix("");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
215 form.setTitle("");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
216 form.setTitleField("");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
217
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
218 return form;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
219 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
220
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
221
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
222 protected FormItem newFormItem(String name) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
223 TextItem item = new TextItem(name, "");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
224 item.setShowTitle(false);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
225
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
226 return item;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
227 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
228
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
229
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
230 protected DynamicForm createLowerForm(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
231 DynamicForm lowerForm = newForm();
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
232 FormItem lower = createLowerField(dataList);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
233
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
234 lowerForm.setFields(lower);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
235
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
236 return lowerForm;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
237 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
238
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
239
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
240 protected DynamicForm createUpperForm(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
241 DynamicForm upperForm = newForm();
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
242 FormItem upper = createUpperField(dataList);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
243
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
244 upperForm.setFields(upper);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
245
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
246 return upperForm;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
247 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
248
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
249
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
250 protected Canvas createSpacer() {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
251 Label spacer = new Label("-");
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
252 spacer.setWidth(25);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
253 spacer.setHeight(25);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
254 spacer.setAlign(Alignment.CENTER);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
255
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
256 return spacer;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
257 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
258
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
259
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
260 protected FormItem createLowerField(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
261 return createField(FIELD_LOWER, createLowerValidators(dataList));
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
262 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
263
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
264
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
265 protected FormItem createUpperField(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
266 return createField(FIELD_UPPER, createUpperValidators(dataList));
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
267 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
268
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
269
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
270 protected FormItem createField(String name, Validator[] validators) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
271 FormItem field = newFormItem(name);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
272
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
273 if (validators != null && validators.length > 0) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
274 field.setValidators(validators);
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
275 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
276
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
277 return field;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
278 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
279
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
280
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
281 protected Validator[] createLowerValidators(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
282 return null;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
283 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
284
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
285
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
286 protected Validator[] createUpperValidators(DataList dataList) {
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
287 return null;
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
288 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
289 }
07b532f9e057 Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
290 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org