diff flys-client/src/main/java/de/intevation/flys/client/client/ui/stationinfo/MeasurementStationListGrid.java @ 5503:b660090b417d

Create a new sq relation project on measurement station record click. * Added new methods to artifact service. * Added new client-side artifact. * Updated UI to have a new row in 'Messstellen-Info'.
author Raimund Renkert <rrenkert@intevation.de>
date Thu, 28 Mar 2013 15:21:15 +0100
parents 6f6461e07854
children
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/client/ui/stationinfo/MeasurementStationListGrid.java	Thu Mar 28 15:17:52 2013 +0100
+++ b/flys-client/src/main/java/de/intevation/flys/client/client/ui/stationinfo/MeasurementStationListGrid.java	Thu Mar 28 15:21:15 2013 +0100
@@ -7,6 +7,8 @@
 import com.smartgwt.client.widgets.WidgetCanvas;
 import com.smartgwt.client.widgets.grid.ListGridField;
 import com.smartgwt.client.widgets.grid.ListGridRecord;
+import com.smartgwt.client.widgets.grid.events.RecordClickEvent;
+import com.smartgwt.client.widgets.grid.events.RecordClickHandler;
 
 import de.intevation.flys.client.client.FLYS;
 import de.intevation.flys.client.shared.model.MeasurementStation;
@@ -18,7 +20,9 @@
 /**
  * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a>
  */
-public class MeasurementStationListGrid extends InfoListGrid {
+public class MeasurementStationListGrid
+extends InfoListGrid
+implements RecordClickHandler {
 
     public MeasurementStationListGrid(FLYS flys) {
         super(flys);
@@ -28,7 +32,9 @@
         ListGridField stfield = new ListGridField("station", "Station [km]");
         ListGridField lfield = new ListGridField("link", "Link");
         lfield.setType(ListGridFieldType.LINK);
-        this.setFields(nfield, sfield, efield, stfield, lfield);
+        ListGridField cfield = new ListGridField("curvelink", "SQ");
+        cfield.addRecordClickHandler(this);
+        this.setFields(nfield, sfield, efield, stfield, lfield, cfield);
     }
 
     /**
@@ -88,4 +94,12 @@
         MeasurementStationRecord station = (MeasurementStationRecord)record;
         return new WidgetCanvas(new MeasurementStationInfoPanel(station));
     }
+
+    @Override
+    public void onRecordClick(RecordClickEvent event) {
+        MeasurementStationRecord station =
+            (MeasurementStationRecord)event.getRecord();
+        flys.newSQRelation(station.getRiverName(), station.getID());
+    }
+
 }

http://dive4elements.wald.intevation.org