Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/ui/RangePanel.java @ 1524:487c3ff7e838
Improved the code of IntegerRangePanel: it now returns the inserted values as IntegerRangeData object.
flys-client/trunk@3709 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 18 Jan 2012 15:04:30 +0000 |
parents | 07b532f9e057 |
children | e91f87b2524e |
rev | line source |
---|---|
1523
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client.ui; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import java.util.ArrayList; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
4 import java.util.List; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
5 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
6 import com.smartgwt.client.data.DataSource; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
7 import com.smartgwt.client.data.DataSourceField; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
8 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
|
9 import com.smartgwt.client.types.FieldType; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
10 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
|
11 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
|
12 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
|
13 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
|
14 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
|
15 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
|
16 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
|
17 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
|
18 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
19 import de.intevation.flys.client.shared.model.DataList; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
20 import de.intevation.flys.client.shared.model.Data; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
21 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
22 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
23 /** |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
24 * 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
|
25 * |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
26 * @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
|
27 */ |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
28 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
|
29 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
30 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
|
31 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
|
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 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
|
35 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
|
36 |
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
|
37 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
|
38 |
1523
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
39 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
40 @Override |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
41 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
|
42 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
|
43 |
1523
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
44 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
|
45 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
46 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
|
47 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
|
48 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
|
49 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 return root; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
52 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
53 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 @Override |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
55 public Canvas createOld(DataList data) { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 // TODO IMPLEMENT ME |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
57 return new Canvas(); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
58 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
59 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
60 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
61 @Override |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
62 protected Data[] getData() { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
63 return new Data[0]; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
64 } |
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 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
67 @Override |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
68 public List<String> validate() { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
69 List<String> errors = new ArrayList<String>(); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
70 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
71 if (!lowerForm.validate()) { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
72 errors.add("LOWER ERRORS"); |
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 if (!upperForm.validate()) { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
76 errors.add("UPPER ERRORS"); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
77 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
78 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
79 return errors; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
80 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
81 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
82 |
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
|
83 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
|
84 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
|
85 |
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
|
86 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
|
87 } |
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
|
88 |
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
|
89 |
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
|
90 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
|
91 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
|
92 } |
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
|
93 |
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
|
94 |
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
|
95 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
|
96 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
|
97 } |
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
|
98 |
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
|
99 |
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
|
100 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
|
101 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
|
102 } |
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
|
103 |
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
|
104 |
1523
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
105 protected Canvas createLabel(DataList dataList) { |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
106 Label label = new Label(dataList.getLabel()); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
107 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
108 label.setWidth(100); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
109 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
|
110 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
111 return label; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
112 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
113 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
114 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
115 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
|
116 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
|
117 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
|
118 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
119 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
|
120 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
|
121 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
|
122 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
|
123 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
124 return formLayout; |
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 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
128 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
|
129 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
|
130 form.setTitlePrefix(""); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
131 form.setTitleSuffix(""); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
132 form.setTitle(""); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
133 form.setTitleField(""); |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
134 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
135 return form; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
136 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
137 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
139 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
|
140 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
|
141 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
|
142 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
143 return item; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
144 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
145 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
146 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
147 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
|
148 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
|
149 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
|
150 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
151 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
|
152 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
153 return lowerForm; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
154 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
155 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
156 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
157 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
|
158 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
|
159 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
|
160 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
161 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
|
162 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
163 return upperForm; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
164 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
165 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
166 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
167 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
|
168 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
|
169 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
|
170 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
|
171 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
|
172 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
173 return spacer; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
174 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
175 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
176 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
177 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
|
178 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
|
179 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
180 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
181 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
182 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
|
183 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
|
184 } |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
185 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
186 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
187 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
|
188 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
|
189 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
190 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
|
191 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
|
192 } |
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 field; |
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 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
|
199 return null; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
200 } |
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 |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
203 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
|
204 return null; |
07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
205 } |
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 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |