UNPKG

@deephaven/golden-layout

Version:

A multi-screen javascript Layout manager

49 lines 2.41 kB
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } import $ from 'jquery'; import { DragListener } from "../utils/index.js"; export default class Splitter { constructor(isVertical, size, grabSize) { _defineProperty(this, "_isVertical", void 0); _defineProperty(this, "_size", void 0); _defineProperty(this, "_grabSize", void 0); _defineProperty(this, "_dragListener", void 0); _defineProperty(this, "element", void 0); this._isVertical = isVertical; this._size = size; this._grabSize = grabSize < size ? size : grabSize; this.element = this._createElement(); this._dragListener = new DragListener(this.element); } on(event, callback, context) { var _this$_dragListener; (_this$_dragListener = this._dragListener) === null || _this$_dragListener === void 0 || _this$_dragListener.on(event, callback, context); } _$destroy() { var _this$_dragListener2; (_this$_dragListener2 = this._dragListener) === null || _this$_dragListener2 === void 0 || _this$_dragListener2.destroy(); this._dragListener = null; this.element.remove(); } _createElement() { var dragHandle = $('<div class="lm_drag_handle"></div>'); var element = $('<div class="lm_splitter"></div>'); element.append(dragHandle); var handleExcessSize = this._grabSize - this._size; var handleExcessPos = handleExcessSize / 2; if (this._isVertical) { dragHandle.css('top', -handleExcessPos); dragHandle.css('height', this._size + handleExcessSize); element.addClass('lm_vertical'); element['height'](this._size); } else { dragHandle.css('left', -handleExcessPos); dragHandle.css('width', this._size + handleExcessSize); element.addClass('lm_horizontal'); element['width'](this._size); } return element; } } //# sourceMappingURL=Splitter.js.map