gernotbelger@9260: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@9260: * Software engineering by gernotbelger@9260: * Björnsen Beratende Ingenieure GmbH gernotbelger@9260: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@9260: * gernotbelger@9260: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@9260: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@9260: * documentation coming with Dive4Elements River for details. gernotbelger@9260: */ gernotbelger@9260: package org.dive4elements.river.client.client.ui; gernotbelger@9260: gernotbelger@9260: import com.smartgwt.client.widgets.form.validator.IntegerRangeValidator; gernotbelger@9260: import com.smartgwt.client.widgets.grid.ListGridField; gernotbelger@9260: import com.smartgwt.client.widgets.grid.SortNormalizer; gernotbelger@9260: import com.smartgwt.client.widgets.grid.events.CellSavedEvent; gernotbelger@9260: import com.smartgwt.client.widgets.grid.events.CellSavedHandler; gernotbelger@9260: gernotbelger@9260: /** gernotbelger@9260: * @author Domenico Nardi Tironi gernotbelger@9260: * gernotbelger@9260: */ gernotbelger@9260: public class VegZonePanelHelper { gernotbelger@9260: gernotbelger@9260: public VegZonePanelHelper() { gernotbelger@9260: gernotbelger@9260: } gernotbelger@9260: gernotbelger@9260: public static ListGridField createIntTableField(final String key, final String msg, final boolean canSort, final SortNormalizer normalizer, gernotbelger@9260: final IntegerRangeValidator validators) { gernotbelger@9260: final ListGridField intField = PanelHelper.createIntTableField(key, msg, canSort, normalizer, validators); gernotbelger@9260: intField.addCellSavedHandler(new CellSavedHandler() { // wirkungslos, wenn int-validator bereits vorhanden ist.. gernotbelger@9260: @Override gernotbelger@9260: public void onCellSaved(final CellSavedEvent event) { gernotbelger@9260: final Object value = event.getNewValue(); gernotbelger@9260: event.getRecord().setAttribute(key, event.getOldValue()); gernotbelger@9260: try { gernotbelger@9260: final int intValue = Integer.valueOf(String.valueOf(value)); gernotbelger@9260: event.getRecord().setAttribute(key, intValue); gernotbelger@9260: } gernotbelger@9260: catch (final NumberFormatException e) { gernotbelger@9260: e.printStackTrace(); gernotbelger@9260: } gernotbelger@9260: } gernotbelger@9260: }); gernotbelger@9260: return intField; gernotbelger@9260: gernotbelger@9260: } gernotbelger@9260: gernotbelger@9260: }