From 269bd9387ed6a92af4cb8be9c483c0ca6d64c671 Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Sun, 22 Jul 2012 22:24:04 +0200 Subject: [PATCH] Rename freeze/thaw to freezeRendering/unfreezeRendering --- src/ol/base/map.js | 57 ++++++++++++++++---------------- src/ol/control/dblclickzoom.js | 2 +- src/ol/control/mousewheelzoom.js | 2 +- 3 files changed, 30 insertions(+), 31 deletions(-) diff --git a/src/ol/base/map.js b/src/ol/base/map.js index 3075fc2ad5..a92df9a1c4 100644 --- a/src/ol/base/map.js +++ b/src/ol/base/map.js @@ -1,4 +1,3 @@ -// FIXME rename freeze/thaw to freezeRendering/unfreezeRendering // FIXME add change resolution by zoom step function // FIXME recheck layer/map projection compatability when projection changes // FIXME layer renderers should skip when they can't reproject @@ -135,7 +134,7 @@ ol.Map = function(target, opt_values, opt_viewportSizeMonitor) { * @private * @type {number} */ - this.freezeCount_ = 0; + this.freezeRenderingCount_ = 0; /** * @private @@ -219,13 +218,6 @@ ol.Map.prototype.animate_ = function() { ol.Map.prototype.createLayerRenderer = goog.abstractMethod; -/** - */ -ol.Map.prototype.freeze = function() { - ++this.freezeCount_; -}; - - /** * @inheritDoc */ @@ -241,7 +233,7 @@ ol.Map.prototype.disposeInternal = function() { * @param {ol.Extent} extent Extent. */ ol.Map.prototype.fitExtent = function(extent) { - this.whileFrozen(function() { + this.withFrozenRendering(function() { this.setCenter(extent.getCenter()); this.setResolution(this.getResolutionForExtent(extent)); }, this); @@ -272,6 +264,13 @@ ol.Map.prototype.forEachVisibleLayer = function(f, opt_obj) { }; +/** + */ +ol.Map.prototype.freezeRendering = function() { + ++this.freezeRenderingCount_; +}; + + /** * @return {ol.Color|undefined} Background color. */ @@ -640,7 +639,7 @@ ol.Map.prototype.recalculateTransforms_ = function() { */ ol.Map.prototype.render = function() { if (!this.animating_) { - if (this.freezeCount_ === 0) { + if (this.freezeRenderingCount_ === 0) { if (this.renderInternal()) { this.animate_(); } @@ -776,25 +775,10 @@ ol.Map.prototype.setUserProjection = function(userProjection) { /** - * @param {function(this: T)} f Function. - * @param {T=} opt_obj Object. - * @template T */ -ol.Map.prototype.whileFrozen = function(f, opt_obj) { - this.freeze(); - try { - f.call(opt_obj); - } finally { - this.thaw(); - } -}; - - -/** - */ -ol.Map.prototype.thaw = function() { - goog.asserts.assert(this.freezeCount_ > 0); - if (--this.freezeCount_ === 0) { +ol.Map.prototype.unfreezeRendering = function() { + goog.asserts.assert(this.freezeRenderingCount_ > 0); + if (--this.freezeRenderingCount_ === 0) { if (!this.animating_ && this.dirty_) { if (this.renderInternal()) { this.animate_(); @@ -804,6 +788,21 @@ ol.Map.prototype.thaw = function() { }; +/** + * @param {function(this: T)} f Function. + * @param {T=} opt_obj Object. + * @template T + */ +ol.Map.prototype.withFrozenRendering = function(f, opt_obj) { + this.freezeRendering(); + try { + f.call(opt_obj); + } finally { + this.unfreezeRendering(); + } +}; + + /** * @constructor diff --git a/src/ol/control/dblclickzoom.js b/src/ol/control/dblclickzoom.js index 2398d46c25..96520119b3 100644 --- a/src/ol/control/dblclickzoom.js +++ b/src/ol/control/dblclickzoom.js @@ -23,7 +23,7 @@ ol.control.DblClickZoom.prototype.handleMapBrowserEvent = function(mapBrowserEvent) { if (mapBrowserEvent.type == goog.events.EventType.DBLCLICK) { var map = mapBrowserEvent.map; - map.whileFrozen(function() { + map.withFrozenRendering(function() { // FIXME compute correct center for zoom map.setCenter(mapBrowserEvent.getCoordinate()); var browserEvent = mapBrowserEvent.browserEvent; diff --git a/src/ol/control/mousewheelzoom.js b/src/ol/control/mousewheelzoom.js index e9faeacfeb..541fc858fa 100644 --- a/src/ol/control/mousewheelzoom.js +++ b/src/ol/control/mousewheelzoom.js @@ -28,7 +28,7 @@ ol.control.MouseWheelZoom.prototype.handleMapBrowserEvent = mapBrowserEvent.browserEvent; goog.asserts.assert(mouseWheelEvent instanceof goog.events.MouseWheelEvent); if (mouseWheelEvent.deltaY !== 0) { - map.whileFrozen(function() { + map.withFrozenRendering(function() { // FIXME compute correct center for zoom map.setCenter(mapBrowserEvent.getCoordinate()); var scale = mouseWheelEvent.deltaY < 0 ? 0.5 : 2;