Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/IntegerRangePanel.java @ 1523:07b532f9e057
Added new panels for inserting ranges, int ranges and time (year) ranges.
flys-client/trunk@3700 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 18 Jan 2012 09:19:36 +0000 |
parents | |
children | 487c3ff7e838 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/IntegerRangePanel.java Wed Jan 18 09:19:36 2012 +0000 @@ -0,0 +1,85 @@ +package de.intevation.flys.client.client.ui; + +import com.smartgwt.client.widgets.form.fields.FormItem; +import com.smartgwt.client.widgets.form.fields.IntegerItem; +import com.smartgwt.client.widgets.form.validator.IntegerRangeValidator; +import com.smartgwt.client.widgets.form.validator.Validator; + +import de.intevation.flys.client.shared.model.DataList; + + +public class IntegerRangePanel extends RangePanel { + + protected Integer maxLower; + protected Integer maxUpper; + + + @Override + protected FormItem newFormItem(String name) { + IntegerItem item = new IntegerItem(name, ""); + item.setShowTitle(false); + + return item; + } + + + @Override + protected Validator[] createLowerValidators(DataList dataList) { + Validator validator = newRangeValidator(); + + if (validator != null) { + return new Validator[] { validator }; + } + + return null; + } + + + @Override + protected Validator[] createUpperValidators(DataList dataList) { + Validator validator = newRangeValidator(); + + if (validator != null) { + return new Validator[] { validator }; + } + + return null; + } + + + protected Validator newRangeValidator() { + Integer maxLower = getMaxLower(); + Integer maxUpper = getMaxUpper(); + + if (maxLower != null && maxUpper != null) { + IntegerRangeValidator validator = new IntegerRangeValidator(); + validator.setMax(maxUpper); + validator.setMin(maxLower); + + return validator; + } + + return null; + } + + + public Integer getMaxLower() { + return maxLower; + } + + + public void setMaxLower(Integer maxLower) { + this.maxLower = maxLower; + } + + + public Integer getMaxUpper() { + return maxUpper; + } + + + public void setMaxUpper(Integer maxUpper) { + this.maxUpper = maxUpper; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :