OpenLayers OpenLayers

Ticket #1546: ticket1546.patch

File ticket1546.patch, 1.3 kB (added by bartvde, 8 months ago)

patch implementing geometryType on Format.GML

  • lib/OpenLayers/Format/GML.js

    old new  
    5454     * {String} Name of geometry element.  Defaults to "geometry". 
    5555     */ 
    5656    geometryName: "geometry", 
     57 
     58    /** 
     59     * APIProperty: geometryType 
     60     * {String} Type of geometry element.  Defaults to null. 
     61     *     One of "MultiPolygon", "Polygon", "MultiLineString", "LineString", 
     62     *     "MultiPoint", "Point", "Envelope" 
     63     */ 
     64    geometryType: null, 
    5765     
    5866    /**  
    5967     * APIProperty: collectionName 
     
    136144     * node - {DOMElement} A GML feature node.  
    137145     */ 
    138146    parseFeature: function(node) { 
    139         // only accept on geometry per feature - look for highest "order" 
    140         var order = ["MultiPolygon", "Polygon", 
     147        var order; 
     148        if (this.geometryType) { 
     149            order = [this.geometryType]; 
     150        } else { 
     151            // only accept on geometry per feature - look for highest "order" 
     152            order = ["MultiPolygon", "Polygon", 
    141153                     "MultiLineString", "LineString", 
    142154                     "MultiPoint", "Point", "Envelope"]; 
     155        } 
    143156        var type, nodeList, geometry, parser; 
    144157        for(var i=0; i<order.length; ++i) { 
    145158            type = order[i];