don't fire changelayer events without a property, and do a more solid changelayer event check before changing the layer zIndex. r=tschaub (closes #3377)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@12121 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
ahocevar
2011-06-22 06:04:10 +00:00
parent 9b1aca53fa
commit 336f82b771
5 changed files with 29 additions and 9 deletions

View File

@@ -404,7 +404,7 @@ OpenLayers.Handler.Feature = OpenLayers.Class(OpenLayers.Handler, {
* evt - {Object}
*/
handleMapEvents: function(evt) {
if (!evt.property || evt.property == "order") {
if (evt.type == "removelayer" || evt.property == "order") {
this.moveLayerToTop();
}
},

View File

@@ -214,7 +214,10 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, {
logo: metadata.brandLogoUri,
copyrights: copyrights
});
this.map && this.map.events.triggerEvent("changelayer", {layer: this});
this.map && this.map.events.triggerEvent("changelayer", {
layer: this,
property: "attribution"
});
},
/**

View File

@@ -205,7 +205,10 @@ OpenLayers.Layer.GoogleNG = OpenLayers.Class(OpenLayers.Layer.XYZ, {
mapType: this.type,
mapData: mapData
});
this.map && this.map.events.triggerEvent("changelayer", {layer: this});
this.map && this.map.events.triggerEvent("changelayer", {
layer: this,
property: "attribution"
});
},
/**

View File

@@ -65,12 +65,12 @@ OpenLayers.Map = OpenLayers.Class({
* object will include a *layer* property that references the removed
* layer.
* - *changelayer* triggered after a layer name change, order change,
* opacity change, params change or visibility change
* (due to resolution thresholds). Listeners will receive an event
* object with *layer* and *property* properties. The *layer*
* property will be a reference to the changed layer.
* The *property* property will be a key to the
* changed property (name, order, opacity, params or visibility).
* opacity change, params change, visibility change (due to resolution
* thresholds) or attribution change (due to extent change). Listeners
* will receive an event object with *layer* and *property* properties.
* The *layer* property will be a reference to the changed layer. The
* *property* property will be a key to the changed property (name,
* order, opacity, params, visibility or attribution).
* - *movestart* triggered after the start of a drag, pan, or zoom
* - *move* triggered after each drag, pan, or zoom
* - *moveend* triggered after a drag, pan, or zoom completes