From a783edc76f797a684ec894f580e5f940207007ca Mon Sep 17 00:00:00 2001 From: Robert Saric Date: Tue, 6 Jun 2017 18:21:14 +0200 Subject: [PATCH] fix for #1210 (Dinamically show ReferenceStrip) --- src/viewer.js | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/src/viewer.js b/src/viewer.js index 1fb5027e..5f693d1f 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -2132,6 +2132,58 @@ $.extend( $.Viewer.prototype, $.EventSource.prototype, $.ControlDock.prototype, */ _cancelPendingImages: function() { this._loadQueue = []; + }, + + /** + * Remove the reference strip. + * @function + * @return {OpenSeadragon.Viewer} Chainable. + */ + removeReferenceStrip: function() { + this.showReferenceStrip = false; + + if (this.sequenceMode) { + if (this.referenceStrip) { + this.referenceStrip.destroy(); + this.referenceStrip = null; + } + } + + return this; + }, + + /** + * Display the reference strip based on the currently set tileSources. + * @function + * @return {OpenSeadragon.Viewer} Chainable. + */ + addReferenceStrip: function() { + this.showReferenceStrip = true; + + if (this.sequenceMode) { + if (this.referenceStrip) { + this.referenceStrip.destroy(); + this.referenceStrip = null; + } + + if (this.tileSources.length && this.tileSources.length > 1) { + this.referenceStrip = new $.ReferenceStrip({ + id: this.referenceStripElement, + position: this.referenceStripPosition, + sizeRatio: this.referenceStripSizeRatio, + scroll: this.referenceStripScroll, + height: this.referenceStripHeight, + width: this.referenceStripWidth, + tileSources: this.tileSources, + prefixUrl: this.prefixUrl, + viewer: this + }); + + this.referenceStrip.setFocus( this._sequenceIndex ); + } + } + + return this; } });