From da27fafa98f0e61ac3a0115221d9e7766b33d4a0 Mon Sep 17 00:00:00 2001 From: euzuro Date: Fri, 26 May 2006 17:56:46 +0000 Subject: [PATCH] give WFS a featureClass and have it be set in the constructor git-svn-id: http://svn.openlayers.org/trunk/openlayers@406 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf --- lib/OpenLayers/Layer/WFS.js | 14 +++++++++++--- lib/OpenLayers/Tile/WFS.js | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/OpenLayers/Layer/WFS.js b/lib/OpenLayers/Layer/WFS.js index 3a04911393..b7ef90ce49 100644 --- a/lib/OpenLayers/Layer/WFS.js +++ b/lib/OpenLayers/Layer/WFS.js @@ -8,6 +8,9 @@ OpenLayers.Layer.WFS.prototype = Object.extend(new OpenLayers.Layer.Grid(), Object.extend(new OpenLayers.Layer.Markers(), { + /** @type Object */ + featureClass: null, + /** @final @type hash */ DEFAULT_PARAMS: { service: "WFS", version: "1.0.0", @@ -21,10 +24,15 @@ OpenLayers.Layer.WFS.prototype = * @param {str} name * @param {str} url * @param {hash} params + * @param {Object} featureClass */ - initialize: function(name, url, params) { - OpenLayers.Layer.Grid.prototype.initialize.apply(this, arguments); - OpenLayers.Layer.Markers.prototype.initialize.apply(this, arguments); + initialize: function(name, url, params, featureClass) { + this.featureClass = featureClass; + + var newArguments = new Array(name, url, params); + OpenLayers.Layer.Grid.prototype.initialize.apply(this, newArguments); + OpenLayers.Layer.Markers.prototype.initialize.apply(this, newArguments); + OpenLayers.Util.applyDefaults(this.params, this.DEFAULT_PARAMS); }, diff --git a/lib/OpenLayers/Tile/WFS.js b/lib/OpenLayers/Tile/WFS.js index 2c42f0cc57..e8cbffbdac 100644 --- a/lib/OpenLayers/Tile/WFS.js +++ b/lib/OpenLayers/Tile/WFS.js @@ -83,7 +83,7 @@ OpenLayers.Tile.WFS.prototype = for (var i=0; i < resultFeatures.length; i++) { - var feature = new MCFeature(resultFeatures[i]); + var feature = new this.layer.featureClass(resultFeatures[i]); var icon = new OpenLayers.Icon(feature.markerImage, feature.size); var marker = new OpenLayers.Marker(feature.lonlat, icon, feature);