mirror of
https://github.com/openseadragon/openseadragon.git
synced 2024-11-22 05:06:09 +03:00
Merge pull request #680 from LarissaSmith/master
Adds collectionColumns as a configuration parameter
This commit is contained in:
commit
35c7a30dc2
@ -559,6 +559,10 @@
|
|||||||
* If collectionMode is true, specifies how many rows the grid should have. Use 1 to make a line.
|
* If collectionMode is true, specifies how many rows the grid should have. Use 1 to make a line.
|
||||||
* If collectionLayout is 'vertical', specifies how many columns instead.
|
* If collectionLayout is 'vertical', specifies how many columns instead.
|
||||||
*
|
*
|
||||||
|
* @property {Number} [collectionColumns=0]
|
||||||
|
* If collectionMode is true, specifies how many columns the grid should have. Use 1 to make a line.
|
||||||
|
* If collectionLayout is 'vertical', specifies how many rows instead. Ignored if collectionRows is not set to a falsy value.
|
||||||
|
*
|
||||||
* @property {String} [collectionLayout='horizontal']
|
* @property {String} [collectionLayout='horizontal']
|
||||||
* If collectionMode is true, specifies whether to arrange vertically or horizontally.
|
* If collectionMode is true, specifies whether to arrange vertically or horizontally.
|
||||||
*
|
*
|
||||||
@ -1039,6 +1043,7 @@ window.OpenSeadragon = window.OpenSeadragon || function( options ){
|
|||||||
|
|
||||||
//COLLECTION VISUALIZATION SETTINGS
|
//COLLECTION VISUALIZATION SETTINGS
|
||||||
collectionRows: 3, //or columns depending on layout
|
collectionRows: 3, //or columns depending on layout
|
||||||
|
collectionColumns: 0, //columns in horizontal layout, rows in vertical layout
|
||||||
collectionLayout: 'horizontal', //vertical
|
collectionLayout: 'horizontal', //vertical
|
||||||
collectionMode: false,
|
collectionMode: false,
|
||||||
collectionTileSize: 800,
|
collectionTileSize: 800,
|
||||||
|
@ -1318,6 +1318,7 @@ $.extend( $.Viewer.prototype, $.EventSource.prototype, $.ControlDock.prototype,
|
|||||||
_this.world.arrange({
|
_this.world.arrange({
|
||||||
immediately: queueItem.options.collectionImmediately,
|
immediately: queueItem.options.collectionImmediately,
|
||||||
rows: _this.collectionRows,
|
rows: _this.collectionRows,
|
||||||
|
columns: _this.collectionColumns,
|
||||||
layout: _this.collectionLayout,
|
layout: _this.collectionLayout,
|
||||||
tileSize: _this.collectionTileSize,
|
tileSize: _this.collectionTileSize,
|
||||||
tileMargin: _this.collectionTileMargin
|
tileMargin: _this.collectionTileMargin
|
||||||
|
@ -281,6 +281,7 @@ $.extend( $.World.prototype, $.EventSource.prototype, /** @lends OpenSeadragon.W
|
|||||||
* @param {Boolean} [options.immediately=false] - Whether to animate to the new arrangement.
|
* @param {Boolean} [options.immediately=false] - Whether to animate to the new arrangement.
|
||||||
* @param {String} [options.layout] - See collectionLayout in {@link OpenSeadragon.Options}.
|
* @param {String} [options.layout] - See collectionLayout in {@link OpenSeadragon.Options}.
|
||||||
* @param {Number} [options.rows] - See collectionRows in {@link OpenSeadragon.Options}.
|
* @param {Number} [options.rows] - See collectionRows in {@link OpenSeadragon.Options}.
|
||||||
|
* @param {Number} [options.columns] - See collectionColumns in {@link OpenSeadragon.Options}.
|
||||||
* @param {Number} [options.tileSize] - See collectionTileSize in {@link OpenSeadragon.Options}.
|
* @param {Number} [options.tileSize] - See collectionTileSize in {@link OpenSeadragon.Options}.
|
||||||
* @param {Number} [options.tileMargin] - See collectionTileMargin in {@link OpenSeadragon.Options}.
|
* @param {Number} [options.tileMargin] - See collectionTileMargin in {@link OpenSeadragon.Options}.
|
||||||
* @fires OpenSeadragon.World.event:metrics-change
|
* @fires OpenSeadragon.World.event:metrics-change
|
||||||
@ -290,10 +291,16 @@ $.extend( $.World.prototype, $.EventSource.prototype, /** @lends OpenSeadragon.W
|
|||||||
var immediately = options.immediately || false;
|
var immediately = options.immediately || false;
|
||||||
var layout = options.layout || $.DEFAULT_SETTINGS.collectionLayout;
|
var layout = options.layout || $.DEFAULT_SETTINGS.collectionLayout;
|
||||||
var rows = options.rows || $.DEFAULT_SETTINGS.collectionRows;
|
var rows = options.rows || $.DEFAULT_SETTINGS.collectionRows;
|
||||||
|
var columns = options.columns || $.DEFAULT_SETTINGS.collectionColumns;
|
||||||
var tileSize = options.tileSize || $.DEFAULT_SETTINGS.collectionTileSize;
|
var tileSize = options.tileSize || $.DEFAULT_SETTINGS.collectionTileSize;
|
||||||
var tileMargin = options.tileMargin || $.DEFAULT_SETTINGS.collectionTileMargin;
|
var tileMargin = options.tileMargin || $.DEFAULT_SETTINGS.collectionTileMargin;
|
||||||
var increment = tileSize + tileMargin;
|
var increment = tileSize + tileMargin;
|
||||||
var wrap = Math.ceil(this._items.length / rows);
|
var wrap;
|
||||||
|
if (!options.rows && columns) {
|
||||||
|
wrap = columns;
|
||||||
|
} else {
|
||||||
|
wrap = Math.ceil(this._items.length / rows);
|
||||||
|
}
|
||||||
var x = 0;
|
var x = 0;
|
||||||
var y = 0;
|
var y = 0;
|
||||||
var item, box, width, height, position;
|
var item, box, width, height, position;
|
||||||
|
@ -213,6 +213,26 @@
|
|||||||
|
|
||||||
checkBounds(new OpenSeadragon.Rect(0, 0, 1, 4), 'one vertical column');
|
checkBounds(new OpenSeadragon.Rect(0, 0, 1, 4), 'one vertical column');
|
||||||
|
|
||||||
|
viewer.world.arrange({
|
||||||
|
layout: 'horizontal',
|
||||||
|
rows: false,
|
||||||
|
columns: 3,
|
||||||
|
tileSize: 1,
|
||||||
|
tileMargin: 0.5
|
||||||
|
});
|
||||||
|
|
||||||
|
checkBounds(new OpenSeadragon.Rect(0, 0, 4, 1), 'three horizontal columns (one horizontal row)');
|
||||||
|
|
||||||
|
viewer.world.arrange({
|
||||||
|
layout: 'vertical',
|
||||||
|
rows: false,
|
||||||
|
columns: 3,
|
||||||
|
tileSize: 1,
|
||||||
|
tileMargin: 0.5
|
||||||
|
});
|
||||||
|
|
||||||
|
checkBounds(new OpenSeadragon.Rect(0, 0, 1, 4), 'three vertical rows (one vertical column)');
|
||||||
|
|
||||||
start();
|
start();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user