[OpenLayers-Commits] r4232 - in trunk/openlayers: lib/OpenLayers/Control tests/Control
commits at openlayers.org
commits at openlayers.org
Wed Sep 12 01:12:04 EDT 2007
Author: crschmidt
Date: 2007-09-12 01:12:00 -0400 (Wed, 12 Sep 2007)
New Revision: 4232
Modified:
trunk/openlayers/lib/OpenLayers/Control/SelectFeature.js
trunk/openlayers/tests/Control/test_SelectFeature.html
Log:
Erik helps me fix tests. I threaten to kill him for criticizing my lack
of semicolons. All is well. Fix for "keep selected features drawn with
the right style". (Closes #916)
Modified: trunk/openlayers/lib/OpenLayers/Control/SelectFeature.js
===================================================================
--- trunk/openlayers/lib/OpenLayers/Control/SelectFeature.js 2007-09-12 04:37:45 UTC (rev 4231)
+++ trunk/openlayers/lib/OpenLayers/Control/SelectFeature.js 2007-09-12 05:12:00 UTC (rev 4232)
@@ -161,7 +161,8 @@
feature.originalStyle = feature.style;
}
this.layer.selectedFeatures.push(feature);
- this.layer.drawFeature(feature, this.selectStyle);
+ feature.style = this.selectStyle;
+ this.layer.drawFeature(feature);
this.onSelect(feature);
},
@@ -175,10 +176,10 @@
*/
unselect: function(feature) {
// Store feature style for restoration later
- if(feature.originalStyle == null) {
- feature.originalStyle = feature.style;
+ if(feature.originalStyle != null) {
+ feature.style = feature.originalStyle;
}
- this.layer.drawFeature(feature, feature.originalStyle);
+ this.layer.drawFeature(feature);
OpenLayers.Util.removeItem(this.layer.selectedFeatures, feature);
this.onUnselect(feature);
},
Modified: trunk/openlayers/tests/Control/test_SelectFeature.html
===================================================================
--- trunk/openlayers/tests/Control/test_SelectFeature.html 2007-09-12 04:37:45 UTC (rev 4231)
+++ trunk/openlayers/tests/Control/test_SelectFeature.html 2007-09-12 05:12:00 UTC (rev 4232)
@@ -32,6 +32,21 @@
}
+ function test_Control_SelectFeature_select(t) {
+ t.plan(2);
+ var map = new OpenLayers.Map("map");
+ var layer = new OpenLayers.Layer.Vector();
+ map.addLayer(layer);
+ var control = new OpenLayers.Control.SelectFeature(layer);
+ var feature = new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(0,0));
+ layer.addFeatures(feature);
+ layer.drawFeature = function() { }
+ control.select(feature);
+ t.eq(feature.style.strokeColor, OpenLayers.Feature.Vector.style['select'].strokeColor, "feature style is set to select style");
+ control.unselect(feature);
+ t.eq(feature.style.strokeColor, OpenLayers.Feature.Vector.style['default'].strokeColor, "feature style is set back to old style");
+ }
+
function test_Control_SelectFeature_activate(t) {
t.plan(2);
var map = new OpenLayers.Map("map");
More information about the Commits
mailing list