Merge pull request #2722 from elemoine/nullview
Make ol.Map#setView do not accept undefined
This commit is contained in:
@@ -130,7 +130,11 @@ ol.control.Rotate.prototype.handlePointerUp_ = function(pointerEvent) {
|
|||||||
ol.control.Rotate.prototype.resetNorth_ = function() {
|
ol.control.Rotate.prototype.resetNorth_ = function() {
|
||||||
var map = this.getMap();
|
var map = this.getMap();
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
if (goog.isNull(view)) {
|
||||||
|
// the map does not have a view, so we can't act
|
||||||
|
// upon it
|
||||||
|
return;
|
||||||
|
}
|
||||||
var currentRotation = view.getRotation();
|
var currentRotation = view.getRotation();
|
||||||
while (currentRotation < -Math.PI) {
|
while (currentRotation < -Math.PI) {
|
||||||
currentRotation += 2 * Math.PI;
|
currentRotation += 2 * Math.PI;
|
||||||
|
|||||||
@@ -140,6 +140,11 @@ ol.control.Zoom.prototype.handlePointerUp_ = function(delta, pointerEvent) {
|
|||||||
ol.control.Zoom.prototype.zoomByDelta_ = function(delta) {
|
ol.control.Zoom.prototype.zoomByDelta_ = function(delta) {
|
||||||
var map = this.getMap();
|
var map = this.getMap();
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
|
if (goog.isNull(view)) {
|
||||||
|
// the map does not have a view, so we can't act
|
||||||
|
// upon it
|
||||||
|
return;
|
||||||
|
}
|
||||||
var currentResolution = view.getResolution();
|
var currentResolution = view.getResolution();
|
||||||
if (goog.isDef(currentResolution)) {
|
if (goog.isDef(currentResolution)) {
|
||||||
if (this.duration_ > 0) {
|
if (this.duration_ > 0) {
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ ol.interaction.DoubleClickZoom.prototype.handleMapBrowserEvent =
|
|||||||
var anchor = mapBrowserEvent.coordinate;
|
var anchor = mapBrowserEvent.coordinate;
|
||||||
var delta = browserEvent.shiftKey ? -this.delta_ : this.delta_;
|
var delta = browserEvent.shiftKey ? -this.delta_ : this.delta_;
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
ol.interaction.Interaction.zoomByDelta(
|
ol.interaction.Interaction.zoomByDelta(
|
||||||
map, view, delta, anchor, this.duration_);
|
map, view, delta, anchor, this.duration_);
|
||||||
mapBrowserEvent.preventDefault();
|
mapBrowserEvent.preventDefault();
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ ol.interaction.DragAndDrop.prototype.handleResult_ = function(file, result) {
|
|||||||
var projection = this.reprojectTo_;
|
var projection = this.reprojectTo_;
|
||||||
if (goog.isNull(projection)) {
|
if (goog.isNull(projection)) {
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
projection = view.getProjection();
|
projection = view.getProjection();
|
||||||
goog.asserts.assert(goog.isDef(projection));
|
goog.asserts.assert(goog.isDef(projection));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ goog.inherits(ol.interaction.DragZoom, ol.interaction.DragBox);
|
|||||||
ol.interaction.DragZoom.prototype.onBoxEnd = function() {
|
ol.interaction.DragZoom.prototype.onBoxEnd = function() {
|
||||||
var map = this.getMap();
|
var map = this.getMap();
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
var extent = this.getGeometry().getExtent();
|
var extent = this.getGeometry().getExtent();
|
||||||
var center = ol.extent.getCenter(extent);
|
var center = ol.extent.getCenter(extent);
|
||||||
var size = map.getSize();
|
var size = map.getSize();
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ ol.interaction.KeyboardPan.prototype.handleMapBrowserEvent =
|
|||||||
keyCode == goog.events.KeyCodes.UP)) {
|
keyCode == goog.events.KeyCodes.UP)) {
|
||||||
var map = mapBrowserEvent.map;
|
var map = mapBrowserEvent.map;
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
var viewState = view.getState();
|
var viewState = view.getState();
|
||||||
var mapUnitsDelta = viewState.resolution * this.pixelDelta_;
|
var mapUnitsDelta = viewState.resolution * this.pixelDelta_;
|
||||||
var deltaX = 0, deltaY = 0;
|
var deltaX = 0, deltaY = 0;
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ ol.interaction.KeyboardZoom.prototype.handleMapBrowserEvent =
|
|||||||
var delta = (charCode == '+'.charCodeAt(0)) ? this.delta_ : -this.delta_;
|
var delta = (charCode == '+'.charCodeAt(0)) ? this.delta_ : -this.delta_;
|
||||||
map.render();
|
map.render();
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
ol.interaction.Interaction.zoomByDelta(
|
ol.interaction.Interaction.zoomByDelta(
|
||||||
map, view, delta, undefined, this.duration_);
|
map, view, delta, undefined, this.duration_);
|
||||||
mapBrowserEvent.preventDefault();
|
mapBrowserEvent.preventDefault();
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ ol.interaction.MouseWheelZoom.prototype.doZoom_ = function(map) {
|
|||||||
var delta = goog.math.clamp(this.delta_, -maxDelta, maxDelta);
|
var delta = goog.math.clamp(this.delta_, -maxDelta, maxDelta);
|
||||||
|
|
||||||
var view = map.getView();
|
var view = map.getView();
|
||||||
goog.asserts.assert(goog.isDef(view));
|
goog.asserts.assert(!goog.isNull(view));
|
||||||
|
|
||||||
map.render();
|
map.render();
|
||||||
ol.interaction.Interaction.zoomByDelta(map, view, -delta, this.lastAnchor_,
|
ol.interaction.Interaction.zoomByDelta(map, view, -delta, this.lastAnchor_,
|
||||||
|
|||||||
@@ -753,7 +753,7 @@ goog.exportProperty(
|
|||||||
/**
|
/**
|
||||||
* Get the view associated with this map. A view manages properties such as
|
* Get the view associated with this map. A view manages properties such as
|
||||||
* center and resolution.
|
* center and resolution.
|
||||||
* @return {ol.View|undefined} The view that controls this map.
|
* @return {ol.View} The view that controls this map.
|
||||||
* @observable
|
* @observable
|
||||||
* @api stable
|
* @api stable
|
||||||
*/
|
*/
|
||||||
@@ -988,7 +988,7 @@ ol.Map.prototype.handleViewChanged_ = function() {
|
|||||||
this.viewPropertyListenerKey_ = null;
|
this.viewPropertyListenerKey_ = null;
|
||||||
}
|
}
|
||||||
var view = this.getView();
|
var view = this.getView();
|
||||||
if (goog.isDefAndNotNull(view)) {
|
if (!goog.isNull(view)) {
|
||||||
this.viewPropertyListenerKey_ = goog.events.listen(
|
this.viewPropertyListenerKey_ = goog.events.listen(
|
||||||
view, ol.ObjectEventType.PROPERTYCHANGE,
|
view, ol.ObjectEventType.PROPERTYCHANGE,
|
||||||
this.handleViewPropertyChanged_, false, this);
|
this.handleViewPropertyChanged_, false, this);
|
||||||
@@ -1061,7 +1061,7 @@ ol.Map.prototype.isDef = function() {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
var view = this.getView();
|
var view = this.getView();
|
||||||
if (!goog.isDef(view) || !view.isDef()) {
|
if (goog.isNull(view) || !view.isDef()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@@ -1189,7 +1189,7 @@ ol.Map.prototype.renderFrame_ = function(time) {
|
|||||||
/** @type {?olx.FrameState} */
|
/** @type {?olx.FrameState} */
|
||||||
var frameState = null;
|
var frameState = null;
|
||||||
if (goog.isDef(size) && hasArea(size) &&
|
if (goog.isDef(size) && hasArea(size) &&
|
||||||
goog.isDef(view) && view.isDef()) {
|
!goog.isNull(view) && view.isDef()) {
|
||||||
var viewHints = view.getHints();
|
var viewHints = view.getHints();
|
||||||
var layerStatesArray = this.getLayerGroup().getLayerStatesArray();
|
var layerStatesArray = this.getLayerGroup().getLayerStatesArray();
|
||||||
var layerStates = {};
|
var layerStates = {};
|
||||||
@@ -1221,17 +1221,17 @@ ol.Map.prototype.renderFrame_ = function(time) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
var preRenderFunctions = this.preRenderFunctions_;
|
|
||||||
var n = 0, preRenderFunction;
|
|
||||||
for (i = 0, ii = preRenderFunctions.length; i < ii; ++i) {
|
|
||||||
preRenderFunction = preRenderFunctions[i];
|
|
||||||
if (preRenderFunction(this, frameState)) {
|
|
||||||
preRenderFunctions[n++] = preRenderFunction;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
preRenderFunctions.length = n;
|
|
||||||
|
|
||||||
if (!goog.isNull(frameState)) {
|
if (!goog.isNull(frameState)) {
|
||||||
|
var preRenderFunctions = this.preRenderFunctions_;
|
||||||
|
var n = 0, preRenderFunction;
|
||||||
|
for (i = 0, ii = preRenderFunctions.length; i < ii; ++i) {
|
||||||
|
preRenderFunction = preRenderFunctions[i];
|
||||||
|
if (preRenderFunction(this, frameState)) {
|
||||||
|
preRenderFunctions[n++] = preRenderFunction;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
preRenderFunctions.length = n;
|
||||||
|
|
||||||
frameState.extent = ol.extent.getForViewAndSize(viewState.center,
|
frameState.extent = ol.extent.getForViewAndSize(viewState.center,
|
||||||
viewState.resolution, viewState.rotation, frameState.size);
|
viewState.resolution, viewState.rotation, frameState.size);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user