mirror of
https://github.com/wu736139669/ASHEBShop-h5.git
synced 2026-10-07 19:26:23 +00:00
70 lines
2.1 KiB
JavaScript
70 lines
2.1 KiB
JavaScript
'use strict';
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
|
|
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
|
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
|
|
/**
|
|
* A section of the Window.
|
|
* Window Sections are used to group nearby cells.
|
|
* This enables us to more quickly determine which cells to display in a given region of the Window.
|
|
* Sections have a fixed size and contain 0 to many cells (tracked by their indices).
|
|
*/
|
|
var Section = function () {
|
|
function Section(_ref) {
|
|
var height = _ref.height,
|
|
width = _ref.width,
|
|
x = _ref.x,
|
|
y = _ref.y;
|
|
|
|
_classCallCheck(this, Section);
|
|
|
|
this.height = height;
|
|
this.width = width;
|
|
this.x = x;
|
|
this.y = y;
|
|
|
|
this._indexMap = {};
|
|
this._indices = [];
|
|
}
|
|
|
|
/** Add a cell to this section. */
|
|
|
|
|
|
_createClass(Section, [{
|
|
key: 'addCellIndex',
|
|
value: function addCellIndex(_ref2) {
|
|
var index = _ref2.index;
|
|
|
|
if (!this._indexMap[index]) {
|
|
this._indexMap[index] = true;
|
|
this._indices.push(index);
|
|
}
|
|
}
|
|
|
|
/** Get all cell indices that have been added to this section. */
|
|
|
|
}, {
|
|
key: 'getCellIndices',
|
|
value: function getCellIndices() {
|
|
return this._indices;
|
|
}
|
|
|
|
/** Intended for debugger/test purposes only */
|
|
|
|
}, {
|
|
key: 'toString',
|
|
value: function toString() {
|
|
return this.x + ',' + this.y + ' ' + this.width + 'x' + this.height;
|
|
}
|
|
}]);
|
|
|
|
return Section;
|
|
}(); /** @rlow */
|
|
|
|
|
|
exports.default = Section; |