comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/RangePanel.java @ 1606:a4da53328693

#482 Display i18n messages for validation errors in range panel. flys-client/trunk@3967 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 08 Feb 2012 12:27:40 +0000
parents c408074c6409
children 03de5c424f95
comparison
equal deleted inserted replaced
1605:fe59df5c85cc 1606:a4da53328693
1 package de.intevation.flys.client.client.ui; 1 package de.intevation.flys.client.client.ui;
2 2
3 import java.util.ArrayList; 3 import java.util.ArrayList;
4 import java.util.List; 4 import java.util.List;
5
6 import com.google.gwt.core.client.GWT;
5 7
6 import com.smartgwt.client.types.Alignment; 8 import com.smartgwt.client.types.Alignment;
7 import com.smartgwt.client.widgets.Canvas; 9 import com.smartgwt.client.widgets.Canvas;
8 import com.smartgwt.client.widgets.Label; 10 import com.smartgwt.client.widgets.Label;
9 import com.smartgwt.client.widgets.form.DynamicForm; 11 import com.smartgwt.client.widgets.form.DynamicForm;
11 import com.smartgwt.client.widgets.form.fields.TextItem; 13 import com.smartgwt.client.widgets.form.fields.TextItem;
12 import com.smartgwt.client.widgets.form.validator.Validator; 14 import com.smartgwt.client.widgets.form.validator.Validator;
13 import com.smartgwt.client.widgets.layout.HLayout; 15 import com.smartgwt.client.widgets.layout.HLayout;
14 import com.smartgwt.client.widgets.layout.VLayout; 16 import com.smartgwt.client.widgets.layout.VLayout;
15 17
18 import de.intevation.flys.client.client.FLYSConstants;
16 import de.intevation.flys.client.shared.model.DataList; 19 import de.intevation.flys.client.shared.model.DataList;
17 import de.intevation.flys.client.shared.model.Data; 20 import de.intevation.flys.client.shared.model.Data;
18 import de.intevation.flys.client.shared.model.DataItem; 21 import de.intevation.flys.client.shared.model.DataItem;
19 import de.intevation.flys.client.shared.model.RangeData; 22 import de.intevation.flys.client.shared.model.RangeData;
20 23
28 31
29 public static final String FIELD_LOWER = "field_lower"; 32 public static final String FIELD_LOWER = "field_lower";
30 public static final String FIELD_UPPER = "field_upper"; 33 public static final String FIELD_UPPER = "field_upper";
31 34
32 35
36 protected FLYSConstants MSG = GWT.create(FLYSConstants.class);
37
33 protected DynamicForm lowerForm; 38 protected DynamicForm lowerForm;
34 protected DynamicForm upperForm; 39 protected DynamicForm upperForm;
35 40
36 protected String dataName; 41 protected String dataName;
42
43
44 public abstract Object getMaxLower();
45
46 public abstract Object getMaxUpper();
47
37 48
38 49
39 @Override 50 @Override
40 public Canvas create(DataList data) { 51 public Canvas create(DataList data) {
41 setDataName(data); 52 setDataName(data);
73 return layout; 84 return layout;
74 } 85 }
75 86
76 87
77 @Override 88 @Override
89 public List<String> validate() {
90 List<String> errors = new ArrayList<String>();
91
92 if (!lowerForm.validate()) {
93 String msg = MSG.error_validate_range();
94 msg = msg.replace("$1", getLower());
95 msg = msg.replace("$2", String.valueOf(getMaxLower()));
96 msg = msg.replace("$3", String.valueOf(getMaxLower()));
97 errors.add(msg);
98 }
99
100 if (!upperForm.validate()) {
101 String msg = MSG.error_validate_range();
102 msg = msg.replace("$1", getUpper());
103 msg = msg.replace("$2", String.valueOf(getMaxLower()));
104 msg = msg.replace("$3", String.valueOf(getMaxUpper()));
105 errors.add(msg);
106 }
107
108 return errors;
109 }
110
111
112 @Override
78 protected Data[] getData() { 113 protected Data[] getData() {
79 return new Data[0]; 114 return new Data[0];
80 }
81
82
83 @Override
84 public List<String> validate() {
85 List<String> errors = new ArrayList<String>();
86
87 if (!lowerForm.validate()) {
88 errors.add("LOWER ERRORS");
89 }
90
91 if (!upperForm.validate()) {
92 errors.add("UPPER ERRORS");
93 }
94
95 return errors;
96 } 115 }
97 116
98 117
99 protected void initDefaults(DataList dataList) { 118 protected void initDefaults(DataList dataList) {
100 RangeData data = findRangeData(dataList); 119 RangeData data = findRangeData(dataList);

http://dive4elements.wald.intevation.org