comparison flys-client/src/main/java/de/intevation/flys/client/client/ui/chart/ChartPropertiesEditor.java @ 1500:2a8b5dcbe8ca

Issue 358. Validate integer and double values in chart properties editor. flys-client/trunk@3625 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Raimund Renkert <raimund.renkert@intevation.de>
date Mon, 09 Jan 2012 09:17:52 +0000
parents cd8a146d29cd
children d12cb71965cf
comparison
equal deleted inserted replaced
1499:0372797fc9cf 1500:2a8b5dcbe8ca
22 22
23 import com.smartgwt.client.widgets.events.ClickEvent; 23 import com.smartgwt.client.widgets.events.ClickEvent;
24 import com.smartgwt.client.widgets.events.ClickHandler; 24 import com.smartgwt.client.widgets.events.ClickHandler;
25 import com.smartgwt.client.widgets.form.fields.events.ChangedHandler; 25 import com.smartgwt.client.widgets.form.fields.events.ChangedHandler;
26 import com.smartgwt.client.widgets.form.fields.events.ChangedEvent; 26 import com.smartgwt.client.widgets.form.fields.events.ChangedEvent;
27
27 import com.smartgwt.client.types.Alignment; 28 import com.smartgwt.client.types.Alignment;
28 29
29 import de.intevation.flys.client.client.Config; 30 import de.intevation.flys.client.client.Config;
30 import de.intevation.flys.client.client.FLYSConstants; 31 import de.intevation.flys.client.client.FLYSConstants;
31 import de.intevation.flys.client.client.ui.OutputTab;
32 import de.intevation.flys.client.shared.model.Property; 32 import de.intevation.flys.client.shared.model.Property;
33 import de.intevation.flys.client.shared.model.PropertyGroup; 33 import de.intevation.flys.client.shared.model.PropertyGroup;
34 import de.intevation.flys.client.shared.model.PropertySetting; 34 import de.intevation.flys.client.shared.model.PropertySetting;
35 import de.intevation.flys.client.shared.model.BooleanProperty; 35 import de.intevation.flys.client.shared.model.BooleanProperty;
36 import de.intevation.flys.client.shared.model.DoubleProperty; 36 import de.intevation.flys.client.shared.model.DoubleProperty;
37 import de.intevation.flys.client.shared.model.IntegerProperty; 37 import de.intevation.flys.client.shared.model.IntegerProperty;
38 import de.intevation.flys.client.shared.model.StringProperty; 38 import de.intevation.flys.client.shared.model.StringProperty;
39 import de.intevation.flys.client.shared.model.Settings;
40 import de.intevation.flys.client.shared.model.OutputSettings; 39 import de.intevation.flys.client.shared.model.OutputSettings;
41 import de.intevation.flys.client.shared.model.Collection; 40 import de.intevation.flys.client.shared.model.Collection;
41 import de.intevation.flys.client.client.utils.Validator;
42 42
43 import de.intevation.flys.client.client.services.CollectionAttributeService; 43 import de.intevation.flys.client.client.services.CollectionAttributeService;
44 import de.intevation.flys.client.client.services.CollectionAttributeServiceAsync; 44 import de.intevation.flys.client.client.services.CollectionAttributeServiceAsync;
45 45
46 /** 46 /**
86 protected void init() { 86 protected void init() {
87 setTitle(MSG.properties()); 87 setTitle(MSG.properties());
88 setCanDragReposition(true); 88 setCanDragReposition(true);
89 setCanDragResize(true); 89 setCanDragResize(true);
90 90
91 91 Config config = Config.getInstance();
92 collection = tab.getCollectionView().getCollection(); 92 collection = tab.getCollectionView().getCollection();
93 String outputName = tab.getOutputName(); 93 String outputName = tab.getOutputName();
94 settings = (OutputSettings)collection.getSettings(outputName); 94 settings = (OutputSettings)collection.getSettings(outputName);
95 95
96 if (settings == null) { 96 if (settings == null) {
133 buttons.setAlign(Alignment.CENTER); 133 buttons.setAlign(Alignment.CENTER);
134 buttons.setHeight(30); 134 buttons.setHeight(30);
135 135
136 addItem(tabs); 136 addItem(tabs);
137 addItem(buttons); 137 addItem(buttons);
138 setWidth(340); 138 setWidth(380);
139 setHeight(470); 139 setHeight(470);
140 centerInPage(); 140 centerInPage();
141 } 141 }
142 142
143 /** 143 /**
170 FormItem title = createStringProperty(label); 170 FormItem title = createStringProperty(label);
171 171
172 IntegerProperty fontsize = 172 IntegerProperty fontsize =
173 (IntegerProperty)pg.getPropertyByName("font-size"); 173 (IntegerProperty)pg.getPropertyByName("font-size");
174 FormItem fs = createIntegerProperty(fontsize); 174 FormItem fs = createIntegerProperty(fontsize);
175 fs.setAttribute("internalType", "integer");
176 fs.addChangedHandler(new Validator());
175 177
176 DoubleProperty upper = 178 DoubleProperty upper =
177 (DoubleProperty)pg.getPropertyByName("upper"); 179 (DoubleProperty)pg.getPropertyByName("upper");
178 final FormItem range1 = createDoubleProperty(upper); 180 final FormItem range1 = createDoubleProperty(upper);
179 range1.setWidth(50); 181 range1.setAttribute("internalType", "double");
182 range1.addChangedHandler(new Validator());
183 range1.setWidth(70);
180 184
181 DoubleProperty lower = 185 DoubleProperty lower =
182 (DoubleProperty)pg.getPropertyByName("lower"); 186 (DoubleProperty)pg.getPropertyByName("lower");
183 final FormItem range2 = createDoubleProperty(lower); 187 final FormItem range2 = createDoubleProperty(lower);
184 range2.setWidth(50); 188 range2.setAttribute("internalType", "double");
189 range2.addChangedHandler(new Validator());
190 range2.setWidth(70);
185 191
186 BooleanProperty fixation = 192 BooleanProperty fixation =
187 (BooleanProperty)pg.getPropertyByName("fixation"); 193 (BooleanProperty)pg.getPropertyByName("fixation");
188 FormItem fix = createBooleanProperty(fixation); 194 FormItem fix = createBooleanProperty(fixation);
189 fix.addChangedHandler(new ChangedHandler() { 195 fix.addChangedHandler(new ChangedHandler() {
229 235
230 /** 236 /**
231 * 237 *
232 */ 238 */
233 protected DynamicForm generatePropertySetting(Property setting) { 239 protected DynamicForm generatePropertySetting(Property setting) {
234 final PropertySetting s = (PropertySetting)setting; 240 PropertySetting s = (PropertySetting)setting;
235 DynamicForm form = new DynamicForm(); 241 DynamicForm form = new DynamicForm();
236 FormItem item = new FormItem(); 242 FormItem item = new FormItem();
237 if (setting instanceof BooleanProperty) { 243 if (setting instanceof BooleanProperty) {
238 item = createBooleanProperty((BooleanProperty)setting); 244 item = createBooleanProperty((BooleanProperty)setting);
239 } 245 }
240 else if (setting instanceof DoubleProperty) { 246 else if (setting instanceof DoubleProperty) {
241 item = createDoubleProperty((DoubleProperty)setting); 247 item = createDoubleProperty((DoubleProperty)setting);
248 item.setAttribute("internalType", "double");
249 item.addChangedHandler(new Validator());
242 } 250 }
243 else if (setting instanceof IntegerProperty) { 251 else if (setting instanceof IntegerProperty) {
244 item = createIntegerProperty((IntegerProperty)setting); 252 item = createIntegerProperty((IntegerProperty)setting);
253 item.setAttribute("internalType", "integer");
254 item.addChangedHandler(new Validator());
245 } 255 }
246 else if (setting instanceof StringProperty) { 256 else if (setting instanceof StringProperty) {
247 item = createStringProperty((StringProperty)setting); 257 item = createStringProperty((StringProperty)setting);
248 } 258 }
249 form.setFields(item); 259 form.setFields(item);

http://dive4elements.wald.intevation.org