9260
|
1 /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde |
|
2 * Software engineering by |
|
3 * Björnsen Beratende Ingenieure GmbH |
|
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt |
|
5 * |
|
6 * This file is Free Software under the GNU AGPL (>=v3) |
|
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
|
8 * documentation coming with Dive4Elements River for details. |
|
9 */ |
|
10 package org.dive4elements.river.client.client.ui; |
|
11 |
|
12 import com.smartgwt.client.widgets.form.validator.IntegerRangeValidator; |
|
13 import com.smartgwt.client.widgets.grid.ListGridField; |
|
14 import com.smartgwt.client.widgets.grid.SortNormalizer; |
|
15 import com.smartgwt.client.widgets.grid.events.CellSavedEvent; |
|
16 import com.smartgwt.client.widgets.grid.events.CellSavedHandler; |
|
17 |
|
18 /** |
|
19 * @author Domenico Nardi Tironi |
|
20 * |
|
21 */ |
|
22 public class VegZonePanelHelper { |
|
23 |
|
24 public VegZonePanelHelper() { |
|
25 |
|
26 } |
|
27 |
|
28 public static ListGridField createIntTableField(final String key, final String msg, final boolean canSort, final SortNormalizer normalizer, |
|
29 final IntegerRangeValidator validators) { |
|
30 final ListGridField intField = PanelHelper.createIntTableField(key, msg, canSort, normalizer, validators); |
|
31 intField.addCellSavedHandler(new CellSavedHandler() { // wirkungslos, wenn int-validator bereits vorhanden ist.. |
|
32 @Override |
|
33 public void onCellSaved(final CellSavedEvent event) { |
|
34 final Object value = event.getNewValue(); |
|
35 event.getRecord().setAttribute(key, event.getOldValue()); |
|
36 try { |
|
37 final int intValue = Integer.valueOf(String.valueOf(value)); |
|
38 event.getRecord().setAttribute(key, intValue); |
|
39 } |
|
40 catch (final NumberFormatException e) { |
|
41 e.printStackTrace(); |
|
42 } |
|
43 } |
|
44 }); |
|
45 return intField; |
|
46 |
|
47 } |
|
48 |
|
49 } |