[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