OpenLayers OpenLayers

Ticket #359: permalink.patch

File permalink.patch, 2.6 kB (added by crschmidt, 1 year ago)
  • tests/Control/test_Permalink.html

    old new  
    1111        t.eq( control.displayClass,  "olControlPermalink", "displayClass is correct" ); 
    1212    } 
    1313    function test_02_Control_Permalink_updateLinks (t) { 
    14         t.plan( 2 ); 
     14        t.plan( 3 ); 
    1515     
    1616        control = new OpenLayers.Control.Permalink('permalink'); 
    1717        t.ok( control instanceof OpenLayers.Control.Permalink, "new OpenLayers.Control returns object" ); 
    1818        map = new OpenLayers.Map('map'); 
    1919        layer = new OpenLayers.Layer.WMS('Test Layer', "http://octo.metacarta.com/cgi-bin/mapserv", {map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'}); 
    2020        map.addLayer(layer); 
     21        layer = new OpenLayers.Layer.WMS('Test Layer', "http://octo.metacarta.com/cgi-bin/mapserv", {map: '/mapdata/vmap_wms.map', layers: 'basic', format: 'image/jpeg'}, {'isBaseLayer': false}); 
     22        map.addLayer(layer); 
     23        layer.setVisibility(true); 
    2124        if (!map.getCenter())  map.zoomToMaxExtent(); 
    2225        map.addControl(control); 
    2326        map.pan(5, 0); 
    24         if (/MSIE/.test(navigator.userAgent)) { 
    25             t.eq(OpenLayers.Util.getElement('permalink').href, "?lat=0&lon=1.75781&zoom=2&layers=B", "Panning sets permalink"); 
    26         } else { 
    27             t.eq(OpenLayers.Util.getElement('permalink').href, location+"?lat=0&lon=1.75781&zoom=2&layers=B", "Panning sets permalink"); 
    28         } 
     27        t.ok(OpenLayers.Util.isEquivalentUrl(OpenLayers.Util.getElement('permalink').href, location+"?lat=0&lon=1.75781&zoom=2&layers=BT"), 'pan sets permalink'); 
     28         
     29        map.layers[1].setVisibility(false); 
     30         
     31        t.ok(OpenLayers.Util.isEquivalentUrl(OpenLayers.Util.getElement('permalink').href, location+"?lat=0&lon=1.75781&zoom=2&layers=BF"), 'setVisibility sets permalink'); 
    2932    } 
    3033    function test_03_Control_Permalink_updateLinksBase (t) { 
    3134        t.plan( 2 ); 
  • lib/OpenLayers/Control/Permalink.js

    old new  
    9696            this.div.appendChild(this.element); 
    9797        } 
    9898        this.map.events.register('moveend', this, this.updateLink); 
     99        this.map.events.register('changelayer', this, this.updateLink); 
     100        this.map.events.register('changebaselayer', this, this.updateLink); 
    99101        return this.div; 
    100102    }, 
    101103