OpenLayers OpenLayers

Changeset 2803

Show
Ignore:
Timestamp:
03/16/07 08:23:56 (1 year ago)
Author:
crschmidt
Message:

Merge vector-2.4 branch back to trunk.
svn merge sandbox/vector-2.4/@2307 sandbox/vector-2.4/@HEAD trunk/openlayers/

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/build/library.cfg

    r1710 r2803  
    1111 
    1212[exclude] 
    13 OpenLayers/Control/KeyboardDefaults.js 
     13OpenLayers/Format/GeoRSS.js 
     14OpenLayers/Format/GML.js 
     15OpenLayers/Format/JSON.js 
     16OpenLayers/Format/KML.js 
     17OpenLayers/Format/WFS.js 
     18OpenLayers/Format.js 
     19OpenLayers/Handler/Path.js 
     20OpenLayers/Handler/Point.js 
     21OpenLayers/Handler/Polygon.js 
     22OpenLayers/Handler/Select.js 
     23OpenLayers/Geometry/Collection.js 
     24OpenLayers/Geometry/Curve.js 
     25OpenLayers/Geometry/LinearRing.js 
     26OpenLayers/Geometry/LineString.js 
     27OpenLayers/Geometry/MultiLineString.js 
     28OpenLayers/Geometry/MultiPoint.js 
     29OpenLayers/Geometry/MultiPolygon.js 
     30OpenLayers/Geometry/Point.js 
     31OpenLayers/Geometry/Polygon.js 
     32OpenLayers/Geometry/Rectangle.js 
     33OpenLayers/Geometry/Surface.js 
     34OpenLayers/Geometry.js 
     35OpenLayers/Layer/GML.js 
     36OpenLayers/Layer/Vector.js 
     37OpenLayers/Control/DrawFeature.js 
     38OpenLayers/Control/EditingToolbar.js 
     39OpenLayers/Control/SelectFeature.js 
     40OpenLayers/Feature/Vector.js 
     41OpenLayers/Renderer 
     42OpenLayers/Renderer/Elements.js 
     43OpenLayers/Renderer/SVG.js 
     44OpenLayers/Renderer/VML.js 
     45OpenLayers/Renderer.js 
     46 
     47 
  • trunk/openlayers/examples/controls.html

    r2541 r2803  
    2121            map.addControl(new OpenLayers.Control.MousePosition()); 
    2222            map.addControl(new OpenLayers.Control.OverviewMap()); 
     23            map.addControl(new OpenLayers.Control.KeyboardDefaults()); 
     24 
    2325            var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS",  
    2426                "http://labs.metacarta.com/wms/vmap0", 
  • trunk/openlayers/examples/proxy.cgi

    r1484 r2803  
    2121# Designed to prevent Open Proxy type stuff. 
    2222 
    23 allowedHosts = ['www.openlayers.org', 'openlayers.org', 'octo.metacarta.com', 'merrimack.metacarta.com', 'labs.metacarta.com', 'world.freemap.in'] 
     23allowedHosts = ['www.openlayers.org', 'openlayers.org', 'octo.metacarta.com', 'merrimack.metacarta.com', 'labs.metacarta.com', 'world.freemap.in', 
     24                'prototype.openmnnd.org'] 
    2425 
    2526try: 
  • trunk/openlayers/lib/OpenLayers.js

    r2543 r2803  
    6767        "OpenLayers/Tile.js", 
    6868        "OpenLayers/Feature.js", 
     69        "OpenLayers/Feature/Vector.js", 
    6970        "OpenLayers/Feature/WFS.js", 
    7071        "OpenLayers/Tile/Image.js", 
     
    8586        "OpenLayers/Layer/WorldWind.js", 
    8687        "OpenLayers/Layer/WMS.js", 
    87         "OpenLayers/Layer/WFS.js", 
    8888        "OpenLayers/Layer/WMS/Untiled.js", 
    8989        "OpenLayers/Layer/GeoRSS.js", 
     
    9393        "OpenLayers/Popup/Anchored.js", 
    9494        "OpenLayers/Popup/AnchoredBubble.js", 
     95        "OpenLayers/Handler.js", 
     96        "OpenLayers/Handler/Point.js", 
     97        "OpenLayers/Handler/Path.js", 
     98        "OpenLayers/Handler/Polygon.js", 
     99        "OpenLayers/Handler/Select.js", 
     100        "OpenLayers/Handler/Drag.js", 
     101        "OpenLayers/Handler/Box.js", 
     102        "OpenLayers/Handler/MouseWheel.js", 
     103        "OpenLayers/Handler/Keyboard.js", 
    95104        "OpenLayers/Control.js", 
     105        "OpenLayers/Control/ZoomBox.js", 
     106        "OpenLayers/Control/ZoomToMaxExtent.js", 
     107        "OpenLayers/Control/DragPan.js", 
     108        "OpenLayers/Control/Navigation.js", 
    96109        "OpenLayers/Control/MouseDefaults.js", 
    97         "OpenLayers/Control/MouseToolbar.js", 
    98110        "OpenLayers/Control/MousePosition.js", 
    99111        "OpenLayers/Control/OverviewMap.js", 
     
    104116        "OpenLayers/Control/Permalink.js", 
    105117        "OpenLayers/Control/Scale.js", 
    106         "OpenLayers/Control/LayerSwitcher.js" 
     118        "OpenLayers/Control/LayerSwitcher.js", 
     119        "OpenLayers/Control/DrawFeature.js", 
     120        "OpenLayers/Control/Panel.js", 
     121        "OpenLayers/Control/SelectFeature.js", 
     122        "OpenLayers/Geometry.js", 
     123        "OpenLayers/Geometry/Rectangle.js", 
     124        "OpenLayers/Geometry/Collection.js", 
     125        "OpenLayers/Geometry/Point.js", 
     126        "OpenLayers/Geometry/MultiPoint.js", 
     127        "OpenLayers/Geometry/Curve.js", 
     128        "OpenLayers/Geometry/LineString.js", 
     129        "OpenLayers/Geometry/LinearRing.js",         
     130        "OpenLayers/Geometry/Polygon.js", 
     131        "OpenLayers/Geometry/MultiLineString.js", 
     132        "OpenLayers/Geometry/MultiPolygon.js", 
     133        "OpenLayers/Geometry/Surface.js", 
     134        "OpenLayers/Renderer.js", 
     135        "OpenLayers/Renderer/Elements.js", 
     136        "OpenLayers/Renderer/SVG.js", 
     137        "OpenLayers/Renderer/VML.js", 
     138        "OpenLayers/Layer/Vector.js", 
     139        "OpenLayers/Layer/GML.js", 
     140        "OpenLayers/Format.js", 
     141        "OpenLayers/Format/GML.js", 
     142        "OpenLayers/Format/KML.js", 
     143        "OpenLayers/Format/GeoRSS.js", 
     144        "OpenLayers/Format/WFS.js", 
     145        "OpenLayers/Layer/WFS.js", 
     146        "OpenLayers/Control/MouseToolbar.js", 
     147        "OpenLayers/Control/NavToolbar.js", 
     148        "OpenLayers/Control/EditingToolbar.js" 
    107149    ); // etc. 
    108150 
  • trunk/openlayers/lib/OpenLayers/Ajax.js

    r1721 r2803  
    222222       'X-Prototype-Version', 'OpenLayers']; 
    223223 
    224     if (this.options.method == 'post') { 
     224    if (this.options.method == 'post' && !this.options.postBody) { 
    225225      requestHeaders.push('Content-type', 
    226226        'application/x-www-form-urlencoded'); 
     
    307307        : parentnode.getElementsByTagName(nsprefix + ':' + tagname); 
    308308} 
     309 
     310/** 
     311 * Wrapper function around XMLSerializer, which doesn't exist/work in 
     312 * IE/Safari. We need to come up with a way to serialize in those browser: 
     313 * for now, these browsers will just fail. 
     314 * #535, #536 
     315 * 
     316 * @param {XMLNode} xmldom xml dom to serialize 
     317 */ 
     318OpenLayers.Ajax.serializeXMLToString = function(xmldom) { 
     319    var serializer = new XMLSerializer(); 
     320    data = serializer.serializeToString(xmldom); 
     321    return data; 
     322} 
  • trunk/openlayers/lib/OpenLayers/BaseTypes.js

    r2541 r2803  
    389389    * @type String 
    390390    */ 
    391     toString:function()
     391    toString:function()
    392392        return ( "left-bottom=(" + this.left + "," + this.bottom + ")" 
    393393                 + " right-top=(" + this.right + "," + this.top + ")" ); 
     
    465465    * @type OpenLayers.Bounds 
    466466    */ 
    467     add:function(x, y)
     467    add:function(x, y)
    468468        return new OpenLayers.Bounds(this.left + x, this.bottom + y, 
    469469                                     this.right + x, this.top + y); 
     470    }, 
     471     
     472    /** 
     473     * Extend the bounds to include the point, lonlat, or bounds specified. 
     474     *  
     475     * This function assumes that left<right and bottom<top. 
     476     *  
     477     * @param {OpenLayers.Bounds|OpenLayers.LonLat|OpenLayers.Geometry.Point} object 
     478     */ 
     479    extend:function(object) { 
     480        var bounds = null; 
     481        if (object) { 
     482            switch(object.CLASS_NAME) { 
     483                case "OpenLayers.Geometry.Point": 
     484                case "OpenLayers.LonLat":     
     485                    bounds = new OpenLayers.Bounds(object.lon, object.lat, 
     486                                                    object.lon, object.lat); 
     487                    break; 
     488                     
     489                case "OpenLayers.Bounds":     
     490                    bounds = object; 
     491                    break; 
     492            } 
     493     
     494            if (bounds) { 
     495               this.left = (bounds.left < this.left) ? bounds.left  
     496                                                     : this.left; 
     497               this.bottom = (bounds.bottom < this.bottom) ? bounds.bottom  
     498                                                           : this.bottom; 
     499               this.right = (bounds.right > this.right) ? bounds.right  
     500                                                        : this.right; 
     501               this.top = (bounds.top > this.top) ? bounds.top  
     502                                                  : this.top; 
     503            } 
     504        } 
    470505    }, 
    471506 
     
    782817* @type Boolean 
    783818*/ 
    784 String.prototype.startsWith = function(sStart)
     819String.prototype.startsWith = function(sStart)
    785820    return (this.substr(0,sStart.length) == sStart); 
    786821}; 
     
    792827* @type Boolean 
    793828*/ 
    794 String.prototype.contains = function(str)
     829String.prototype.contains = function(str)
    795830    return (this.indexOf(str) != -1); 
    796831}; 
  • trunk/openlayers/lib/OpenLayers/Control.js

    r2726 r2803  
    22 * See http://svn.openlayers.org/trunk/openlayers/repository-license.txt  
    33 * for the full text of the license. */ 
    4  
    54 
    65/** 
     
    87*/ 
    98OpenLayers.Control = OpenLayers.Class.create(); 
     9 
     10OpenLayers.Control.TYPE_BUTTON = 1; 
     11OpenLayers.Control.TYPE_TOGGLE = 2; 
     12OpenLayers.Control.TYPE_TOOL   = 3; 
     13 
    1014OpenLayers.Control.prototype = { 
    1115 
     
    2024    div: null, 
    2125 
    22     /** @type OpenLayers.Pixel */ 
    23     position: null, 
     26    /**  
     27     * Controls can have a 'type'. The type determines the type of interactions 
     28     * which are possible with them when they are placed into a toolbar. 
     29     * @type OpenLayers.Control.TYPES 
     30     */ 
     31    type: null,  
    2432 
    25     /** @type OpenLayers.Pixel */ 
    26     mouseDragStart: null, 
     33    /**  This property is used for CSS related to the drawing of the Control. 
     34     * @type string  
     35     */ 
     36    displayClass: "", 
     37 
     38    /** 
     39     * @type boolean 
     40     */ 
     41    active: null, 
     42 
     43    /** 
     44     * @type OpenLayers.Handler 
     45     */ 
     46    handler: null, 
    2747 
    2848    /** 
     
    3252     */ 
    3353    initialize: function (options) { 
     54        // We do this before the extend so that instances can override 
     55        // className in options. 
     56        this.displayClass = this.CLASS_NAME.replace("OpenLayers.", "ol").replace(".",""); 
     57         
    3458        OpenLayers.Util.extend(this, options); 
    3559         
     
    5377    setMap: function(map) { 
    5478        this.map = map; 
     79        if (this.handler) { 
     80            this.handler.setMap(map); 
     81        } 
    5582    }, 
    5683   
     
    6592            this.div = OpenLayers.Util.createDiv(); 
    6693            this.div.id = this.id; 
    67             this.div.className = 'olControl'
     94            this.div.className = this.displayClass
    6895        } 
    6996        if (px != null) { 
     
    84111    }, 
    85112 
     113    /** 
     114     * @type boolean 
     115     */ 
     116    activate: function () { 
     117        if (this.active) { 
     118            return false; 
     119        } 
     120        if (this.handler) { 
     121            this.handler.activate(); 
     122        } 
     123        this.active = true; 
     124        return true; 
     125    }, 
     126     
     127    /** 
     128     * @type boolean 
     129     */ 
     130    deactivate: function () { 
     131        if (this.active) { 
     132            if (this.handler) { 
     133                this.handler.deactivate(); 
     134            } 
     135            this.active = false; 
     136            return true; 
     137        } 
     138        return false; 
     139    }, 
     140     
    86141    /** @final @type String */ 
    87142    CLASS_NAME: "OpenLayers.Control" 
  • trunk/openlayers/lib/OpenLayers/Control/KeyboardDefaults.js

    r2540