OpenLayers OpenLayers

Ticket #916: 916.2.patch

File 916.2.patch, 2.2 kB (added by crschmidt, 1 year ago)
  • tests/Control/test_SelectFeature.html

    old new  
    3232         
    3333    } 
    3434     
     35    function test_Control_SelectFeature_select(t) { 
     36        t.plan(2); 
     37        var map = new OpenLayers.Map("map"); 
     38        var layer = new OpenLayers.Layer.Vector(); 
     39        map.addLayer(layer); 
     40        var control = new OpenLayers.Control.SelectFeature(layer); 
     41        var feature = new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(0,0)); 
     42        layer.addFeatures(feature); 
     43        layer.drawFeature = function() { } 
     44        control.select(feature); 
     45        t.eq(feature.style.strokeColor, OpenLayers.Feature.Vector.style['select'].strokeColor, "feature style is set to select style"); 
     46        control.unselect(feature); 
     47        t.eq(feature.style.strokeColor, OpenLayers.Feature.Vector.style['default'].strokeColor, "feature style is set back to old style"); 
     48    } 
     49     
    3550    function test_Control_SelectFeature_activate(t) { 
    3651        t.plan(2); 
    3752        var map = new OpenLayers.Map("map"); 
  • lib/OpenLayers/Control/SelectFeature.js

    old new  
    161161            feature.originalStyle = feature.style; 
    162162        } 
    163163        this.layer.selectedFeatures.push(feature); 
    164         this.layer.drawFeature(feature, this.selectStyle); 
     164        feature.style = this.selectStyle; 
     165        this.layer.drawFeature(feature); 
    165166        this.onSelect(feature); 
    166167    }, 
    167168 
     
    175176     */ 
    176177    unselect: function(feature) { 
    177178        // Store feature style for restoration later 
    178         if(feature.originalStyle == null) { 
    179             feature.originalStyle = feature.style; 
     179        if(feature.originalStyle != null) { 
     180            feature.style = feature.originalStyle; 
    180181        } 
    181         this.layer.drawFeature(feature, feature.originalStyle); 
     182        this.layer.drawFeature(feature); 
    182183        OpenLayers.Util.removeItem(this.layer.selectedFeatures, feature); 
    183184        this.onUnselect(feature); 
    184185    },