Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java @ 863:9bb8b7a751ec
Added filter for the "description" row of helper input tables.
flys-client/trunk@2670 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Wed, 07 Sep 2011 17:22:21 +0000 |
parents | 4497d19c22fd |
children | 89c01218172b |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java Wed Sep 07 13:57:28 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java Wed Sep 07 17:22:21 2011 +0000 @@ -6,6 +6,7 @@ import com.google.gwt.core.client.GWT; import com.google.gwt.i18n.client.NumberFormat; +import com.smartgwt.client.data.Criteria; import com.smartgwt.client.data.Record; import com.smartgwt.client.util.SC; import com.smartgwt.client.widgets.Canvas; @@ -31,9 +32,12 @@ import de.intevation.flys.client.client.ui.range.DistanceInfoDataSource; import de.intevation.flys.client.client.ui.range.RangeTable; import de.intevation.flys.client.client.ui.range.LocationsTable; +import de.intevation.flys.client.client.event.FilterHandler; +import de.intevation.flys.client.client.event.StringFilterEvent; -public class DistancePanel extends AbstractUIProvider implements BlurHandler { +public class DistancePanel extends AbstractUIProvider implements BlurHandler, FilterHandler +{ public static final int DEFAULT_STEP_WIDTH = 100; @@ -461,7 +465,26 @@ tabs.addTab(locations, 0); tabs.addTab(distances, 1); + TableFilter filter = new TableFilter(); + filter.setHeight("30px"); + filter.addFilterHandler(this); + helperContainer.addMember(tabs); + helperContainer.addMember(filter); + } + + + public void onFilterCriteriaChanged(StringFilterEvent event) { + String search = event.getFilter(); + + if (search != null && search.length() > 0) { + Criteria c = new Criteria("description", search); + locationsTable.filterData(c); + distancesTable.filterData(c); + } + else { + // TODO Remove filter + } }