OpenLayers OpenLayers

Ticket #688: wfs_wait_cursor.diff

File wfs_wait_cursor.diff, 2.3 kB (added by fvanderbiest, 2 years ago)

patch to get a waiting mouse cursor on wfs loading

  • lib/OpenLayers/Tile/WFS.js

    old new  
    5959     */ 
    6060    draw:function() { 
    6161        if (OpenLayers.Tile.prototype.draw.apply(this, arguments)) { 
    62             this.loadFeaturesForRegion(this.requestSuccess); 
     62            this.loadFeaturesForRegion(this.requestSuccess, this.requestFailure); 
    6363        } 
    6464    }, 
    6565 
     
    7272    * @param {function} failure 
    7373    */ 
    7474    loadFeaturesForRegion:function(success, failure) { 
    75         OpenLayers.loadURL(this.url, null, this, success); 
     75        this.layer.map.setCursor('wait'); 
     76        OpenLayers.loadURL(this.url, null, this, success, failure); 
    7677    }, 
    7778     
    7879    /** Return from AJAX request 
     
    9293            var resultFeatures = OpenLayers.Ajax.getElementsByTagNameNS(doc, "http://www.opengis.net/gml","gml", "featureMember"); 
    9394            this.addResults(resultFeatures); 
    9495        } 
     96        this.layer.map.setCursor('auto'); 
    9597    }, 
    9698 
     99 
     100    /** Error in AJAX request 
     101    * 
     102    */ 
     103    requestFailure:function() { 
     104        this.layer.map.setCursor('auto'); 
     105        alert('Error in WFS request. Check your proxy !'); 
     106    }, 
     107 
     108 
    97109    /** 
    98110     * @param {Object} results 
    99111     */ 
  • lib/OpenLayers/Map.js

    old new  
    610610        popup.map = null; 
    611611    }, 
    612612 
     613    setCursor: function (cursor) { 
     614        switch (cursor) { 
     615            case 'move': 
     616                cursor = 'move'; 
     617                break; 
     618            case 'wait': 
     619                cursor = 'wait'; 
     620                break; 
     621            case 'crosshair': 
     622                cursor = 'crosshair'; 
     623                break; 
     624            default: 
     625                cursor = 'default'; 
     626                break; 
     627        } 
     628        this.div.style.cursor = cursor; 
     629    }, 
     630 
    613631  /********************************************************/ 
    614632  /*                                                      */ 
    615633  /*              Container Div Functions                 */ 
     
    773791 
    774792   }, 
    775793 
     794 
    776795    /** 
    777796    * @param {OpenLayers.LonLat} lonlat 
    778797    * @param {int} zoom