@refinitiv-ui/efx-grid 6.0.91 → 6.0.93
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/column-dragging/es6/ColumnDragging.d.ts +1 -1
- package/lib/column-dragging/es6/ColumnDragging.js +144 -34
- package/lib/core/dist/core.js +2410 -2621
- package/lib/core/dist/core.min.js +1 -1
- package/lib/core/es6/data/ColumnStats.js +14 -14
- package/lib/core/es6/data/DataCache.js +118 -118
- package/lib/core/es6/data/DataTable.d.ts +3 -1
- package/lib/core/es6/data/DataTable.js +208 -190
- package/lib/core/es6/data/DataView.d.ts +1 -1
- package/lib/core/es6/data/DataView.js +291 -291
- package/lib/core/es6/data/Segment.js +79 -79
- package/lib/core/es6/data/SegmentCollection.js +81 -81
- package/lib/core/es6/data/WrappedView.js +41 -41
- package/lib/core/es6/grid/Core.js +635 -635
- package/lib/core/es6/grid/ILayoutGrid.js +1 -1
- package/lib/core/es6/grid/LayoutGrid.js +183 -183
- package/lib/core/es6/grid/VirtualizedLayoutGrid.js +91 -91
- package/lib/core/es6/grid/components/Cell.js +29 -29
- package/lib/core/es6/grid/components/CellFloatingPanel.js +11 -11
- package/lib/core/es6/grid/components/CellSpan.js +7 -7
- package/lib/core/es6/grid/components/CellSpans.js +36 -34
- package/lib/core/es6/grid/components/Column.js +40 -40
- package/lib/core/es6/grid/components/ElementWrapper.js +17 -17
- package/lib/core/es6/grid/components/HScrollbar.js +31 -31
- package/lib/core/es6/grid/components/Scrollbar.js +77 -77
- package/lib/core/es6/grid/components/StretchedCells.js +49 -49
- package/lib/core/es6/grid/components/VScrollbar.js +11 -11
- package/lib/core/es6/grid/components/VirtualItems.js +3 -3
- package/lib/core/es6/grid/event/EventDispatcher.js +9 -9
- package/lib/core/es6/grid/event/EventListeners.js +4 -4
- package/lib/core/es6/grid/plugins/SortableTitlePlugin.js +186 -186
- package/lib/core/es6/grid/util/Conflator.js +4 -4
- package/lib/core/es6/grid/util/Reverter.js +1 -1
- package/lib/core/es6/grid/util/SectionSettings.js +20 -20
- package/lib/core/es6/grid/util/SelectionList.js +23 -23
- package/lib/core/es6/grid/util/TrackLayout.js +74 -74
- package/lib/core/es6/grid/util/Virtualizer.js +15 -15
- package/lib/core/es6/grid/util/util.js +20 -20
- package/lib/core/es6/index.d.ts +0 -2
- package/lib/core/es6/index.js +0 -3
- package/lib/filter-dialog/lib/filter-dialog.js +1 -0
- package/lib/grid/index.js +1 -1
- package/lib/rt-grid/dist/rt-grid.js +193 -70
- package/lib/rt-grid/dist/rt-grid.min.js +1 -1
- package/lib/rt-grid/es6/Grid.js +46 -30
- package/lib/rt-grid/es6/RowDefinition.d.ts +2 -1
- package/lib/rt-grid/es6/RowDefinition.js +74 -16
- package/lib/tr-grid-cell-selection/es6/CellSelection.js +56 -1
- package/lib/tr-grid-checkbox/es6/Checkbox.js +268 -268
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.d.ts +3 -2
- package/lib/tr-grid-column-grouping/es6/ColumnGrouping.js +60 -32
- package/lib/tr-grid-column-stack/es6/ColumnStack.js +279 -279
- package/lib/tr-grid-conditional-coloring/es6/ConditionalColoring.js +227 -207
- package/lib/tr-grid-in-cell-editing/es6/InCellEditing.js +11 -11
- package/lib/tr-grid-row-dragging/es6/RowDragging.d.ts +1 -2
- package/lib/tr-grid-row-dragging/es6/RowDragging.js +120 -121
- package/lib/tr-grid-util/es6/CellPainter.js +94 -104
- package/lib/tr-grid-util/es6/Conflator.js +4 -4
- package/lib/tr-grid-util/es6/CoralItems.js +6 -6
- package/lib/tr-grid-util/es6/DateTime.js +41 -41
- package/lib/tr-grid-util/es6/Deferred.js +5 -5
- package/lib/tr-grid-util/es6/Delay.d.ts +3 -3
- package/lib/tr-grid-util/es6/Delay.js +14 -3
- package/lib/tr-grid-util/es6/Dom.js +26 -26
- package/lib/tr-grid-util/es6/DragUI.js +17 -17
- package/lib/tr-grid-util/es6/ElementObserver.js +12 -12
- package/lib/tr-grid-util/es6/ElementWrapper.js +2 -2
- package/lib/tr-grid-util/es6/ElfDate.js +4 -4
- package/lib/tr-grid-util/es6/ElfUtil.js +37 -37
- package/lib/tr-grid-util/es6/EventDispatcher.js +12 -12
- package/lib/tr-grid-util/es6/ExpanderIcon.js +6 -6
- package/lib/tr-grid-util/es6/ExpressionParser.js +43 -43
- package/lib/tr-grid-util/es6/Ext.js +6 -6
- package/lib/tr-grid-util/es6/FieldFormatter.js +17 -17
- package/lib/tr-grid-util/es6/FilterBuilder.js +57 -58
- package/lib/tr-grid-util/es6/FilterOperators.d.ts +12 -1
- package/lib/tr-grid-util/es6/FilterOperators.js +13 -2
- package/lib/tr-grid-util/es6/GridPlugin.js +86 -87
- package/lib/tr-grid-util/es6/GroupDefinitions.js +90 -90
- package/lib/tr-grid-util/es6/Icon.js +4 -4
- package/lib/tr-grid-util/es6/MouseDownTrait.js +6 -6
- package/lib/tr-grid-util/es6/MultiTableManager.js +71 -80
- package/lib/tr-grid-util/es6/NumberFormatter.js +23 -23
- package/lib/tr-grid-util/es6/PercentBar.js +17 -17
- package/lib/tr-grid-util/es6/Perf.js +5 -5
- package/lib/tr-grid-util/es6/Popup.js +42 -42
- package/lib/tr-grid-util/es6/RangeBar.js +5 -5
- package/lib/tr-grid-util/es6/RequestQueue.js +5 -5
- package/lib/tr-grid-util/es6/RowPainter.js +23 -23
- package/lib/tr-grid-util/es6/SubTable.js +94 -94
- package/lib/tr-grid-util/es6/Table.js +51 -51
- package/lib/tr-grid-util/es6/TextHighlighter.js +52 -52
- package/lib/tr-grid-util/es6/TickCodes.js +2 -2
- package/lib/tr-grid-util/es6/Timer.js +2 -2
- package/lib/tr-grid-util/es6/TouchProxy.js +7 -7
- package/lib/tr-grid-util/es6/Util.js +50 -50
- package/lib/tr-grid-util/es6/formula/ADCService.js +2 -2
- package/lib/tr-grid-util/es6/formula/ADCSubscription.js +19 -19
- package/lib/tr-grid-util/es6/formula/AdFinService.js +2 -2
- package/lib/tr-grid-util/es6/formula/AdFinSubscription.js +19 -19
- package/lib/tr-grid-util/es6/formula/Engine.js +56 -56
- package/lib/tr-grid-util/es6/formula/Formula.js +62 -62
- package/lib/tr-grid-util/es6/formula/IntervalSubscription.js +3 -3
- package/lib/tr-grid-util/es6/formula/Realtime.js +15 -15
- package/lib/tr-grid-util/es6/formula/RealtimeService.js +15 -15
- package/lib/tr-grid-util/es6/formula/TSIService.js +2 -2
- package/lib/tr-grid-util/es6/formula/TSISubscription.js +104 -104
- package/lib/tr-grid-util/es6/formula/VariableToken.js +20 -20
- package/lib/tr-grid-util/es6/formula/functions/AdFin.js +10 -10
- package/lib/tr-grid-util/es6/formula/functions/Excel.js +1 -1
- package/lib/tr-grid-util/es6/formula/functions/Info.js +2 -2
- package/lib/tr-grid-util/es6/formula/functions/Internal.js +5 -5
- package/lib/tr-grid-util/es6/formula/functions/Logic.js +5 -5
- package/lib/tr-grid-util/es6/formula/functions/Math.js +46 -46
- package/lib/tr-grid-util/es6/formula/functions/Statistics.js +27 -27
- package/lib/tr-grid-util/es6/formula/functions/Text.js +19 -19
- package/lib/tr-grid-util/es6/index.js +1 -1
- package/lib/tr-grid-util/es6/jet/Adc.js +36 -36
- package/lib/tr-grid-util/es6/jet/CollectionDict.js +11 -11
- package/lib/tr-grid-util/es6/jet/DataGenerator.js +95 -95
- package/lib/tr-grid-util/es6/jet/DataSet.js +1 -1
- package/lib/tr-grid-util/es6/jet/MockArchive.js +5 -5
- package/lib/tr-grid-util/es6/jet/MockJET.js +1 -1
- package/lib/tr-grid-util/es6/jet/MockQuotes.js +13 -13
- package/lib/tr-grid-util/es6/jet/MockQuotes2.js +100 -100
- package/lib/tr-grid-util/es6/jet/MockRTK.js +4 -4
- package/lib/tr-grid-util/es6/jet/MockUtil.js +2 -2
- package/lib/tr-grid-util/es6/jet/index.js +1 -1
- package/lib/tr-grid-util/es6/jet/mockDataAPI.js +15 -15
- package/lib/tr-grid-util/es6/locale/translation-de.js +1 -1
- package/lib/tr-grid-util/es6/locale/translation-en.js +1 -1
- package/lib/tr-grid-util/es6/locale/translation-ja.js +1 -1
- package/lib/tr-grid-util/es6/locale/translation-zh-hant.js +1 -1
- package/lib/tr-grid-util/es6/locale/translation-zh.js +1 -1
- package/lib/tr-grid-util/es6/locale/translation.js +1 -1
- package/lib/types/es6/ColumnDragging.d.ts +1 -1
- package/lib/types/es6/ColumnGrouping.d.ts +3 -1
- package/lib/types/es6/Core/data/DataTable.d.ts +4 -0
- package/lib/types/es6/Core/data/DataView.d.ts +2 -0
- package/lib/types/es6/Core/data/SegmentCollection.d.ts +2 -0
- package/lib/types/es6/Core/index.d.ts +0 -2
- package/lib/types/es6/RealtimeGrid/RowDefinition.d.ts +2 -1
- package/lib/types/es6/RowDragging.d.ts +1 -2
- package/lib/versions.json +12 -12
- package/package.json +1 -1
- package/lib/core/es6/grid/util/ElementFrameWork.d.ts +0 -18
- package/lib/core/es6/grid/util/ElementFrameWork.js +0 -227
- package/lib/core/es6/grid/util/HttpRequest.d.ts +0 -53
- package/lib/core/es6/grid/util/HttpRequest.js +0 -371
- package/lib/core/es6/grid/util/PercentBar.d.ts +0 -43
- package/lib/core/es6/grid/util/PercentBar.js +0 -390
- package/lib/core/es6/grid/util/PercentBarRenderer.d.ts +0 -41
- package/lib/core/es6/grid/util/PercentBarRenderer.js +0 -316
- package/lib/core/es6/grid/util/RangeBar.d.ts +0 -25
- package/lib/core/es6/grid/util/RangeBar.js +0 -255
- package/lib/types/es6/Core/grid/util/ElementFrameWork.d.ts +0 -18
- package/lib/types/es6/Core/grid/util/HttpRequest.d.ts +0 -53
- package/lib/types/es6/Core/grid/util/PercentBar.d.ts +0 -43
- package/lib/types/es6/Core/grid/util/PercentBarRenderer.d.ts +0 -41
- package/lib/types/es6/Core/grid/util/RangeBar.d.ts +0 -25
|
@@ -36,8 +36,8 @@ import HScrollbar from "./components/HScrollbar.js";
|
|
|
36
36
|
* @param {Object=} options
|
|
37
37
|
* @extends {ElementWrapper}
|
|
38
38
|
*/
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
let LayoutGrid = function (options) {
|
|
40
|
+
let _t = this;
|
|
41
41
|
|
|
42
42
|
_t._onMouseMove = _t._onMouseMove.bind(_t);
|
|
43
43
|
_t._onMouseOut = _t._onMouseOut.bind(_t);
|
|
@@ -290,7 +290,7 @@ LayoutGrid.prototype.dispose = function () {
|
|
|
290
290
|
|
|
291
291
|
this._ctxRows.dispose();
|
|
292
292
|
this._stretchedCells.dispose();
|
|
293
|
-
for (
|
|
293
|
+
for (let i = this._columns.length; --i >= 0; ) {
|
|
294
294
|
this._columns[i].dispose();
|
|
295
295
|
}
|
|
296
296
|
|
|
@@ -327,7 +327,7 @@ LayoutGrid.prototype.setWidth = function (px) {
|
|
|
327
327
|
return false;
|
|
328
328
|
}
|
|
329
329
|
|
|
330
|
-
|
|
330
|
+
let changes = this._trackX.setTrackSize(px - this._rightSpaceSize); // WARNING: Perform scalling instead of setting width directly
|
|
331
331
|
|
|
332
332
|
if (changes == null) {
|
|
333
333
|
return false;
|
|
@@ -359,7 +359,7 @@ LayoutGrid.prototype.setHeight = function (px) {
|
|
|
359
359
|
return false;
|
|
360
360
|
}
|
|
361
361
|
|
|
362
|
-
|
|
362
|
+
let changes = this._trackY.setTrackSize(px); // WARNING: Perform scalling instead of setting height directly
|
|
363
363
|
|
|
364
364
|
if (changes == null) {
|
|
365
365
|
return true;
|
|
@@ -403,24 +403,24 @@ LayoutGrid.prototype.hitTest = function (x, y, opt_omitSpan) {
|
|
|
403
403
|
return null;
|
|
404
404
|
}
|
|
405
405
|
|
|
406
|
-
|
|
406
|
+
let hitX = this._trackX.hitTest(x);
|
|
407
407
|
|
|
408
408
|
if (hitX < 0) {
|
|
409
409
|
return null;
|
|
410
410
|
}
|
|
411
411
|
|
|
412
|
-
|
|
412
|
+
let hitY = this._trackY.hitTest(y);
|
|
413
413
|
|
|
414
414
|
if (hitY < 0) {
|
|
415
415
|
return null;
|
|
416
416
|
}
|
|
417
417
|
|
|
418
|
-
|
|
418
|
+
let result = {};
|
|
419
419
|
result["colIndex"] = hitX;
|
|
420
420
|
result["rowIndex"] = hitY;
|
|
421
421
|
|
|
422
422
|
if (opt_omitSpan !== true) {
|
|
423
|
-
|
|
423
|
+
let cellSpan = this._cellSpans.getOccupyingSpan(hitX, hitY);
|
|
424
424
|
|
|
425
425
|
if (cellSpan) {
|
|
426
426
|
result["colIndex"] = cellSpan.indexX;
|
|
@@ -495,12 +495,12 @@ LayoutGrid.prototype.getDefaultRowHeight = function () {
|
|
|
495
495
|
* @inheritDoc
|
|
496
496
|
*/
|
|
497
497
|
LayoutGrid.prototype.setDefaultRowHeight = function (val) {
|
|
498
|
-
|
|
498
|
+
let defaultH = this._trackY.getDefaultLaneSize();
|
|
499
499
|
|
|
500
500
|
if (defaultH !== val) {
|
|
501
501
|
this._trackY.setDefaultLaneSize(val);
|
|
502
502
|
|
|
503
|
-
for (
|
|
503
|
+
for (let i = 0; i < this._colCount; ++i) {
|
|
504
504
|
this._columns[i].setHeight(val);
|
|
505
505
|
}
|
|
506
506
|
|
|
@@ -577,7 +577,7 @@ LayoutGrid.prototype.setRowHeight = function (rowIndex, val) {
|
|
|
577
577
|
return false;
|
|
578
578
|
}
|
|
579
579
|
|
|
580
|
-
|
|
580
|
+
let dirty = this._trackY.setLaneSize(rowIndex, val);
|
|
581
581
|
|
|
582
582
|
this._syncLayoutToRows(rowIndex, rowIndex + 1); // Update UI. WARNING: Very slow
|
|
583
583
|
|
|
@@ -599,10 +599,10 @@ LayoutGrid.prototype.setRowHeight = function (rowIndex, val) {
|
|
|
599
599
|
* @returns {boolean}
|
|
600
600
|
*/
|
|
601
601
|
LayoutGrid.prototype._updateRowHeights = function (track, start) {
|
|
602
|
-
|
|
602
|
+
let dirty = 0;
|
|
603
603
|
|
|
604
|
-
for (
|
|
605
|
-
|
|
604
|
+
for (let i = 0; i < this._rowCount; ++i) {
|
|
605
|
+
let val = track.getLaneSize(start);
|
|
606
606
|
|
|
607
607
|
dirty |= this._trackY.setLaneSize(i, val);
|
|
608
608
|
++start;
|
|
@@ -726,11 +726,11 @@ LayoutGrid.prototype.getCellTop = function (indexY) {
|
|
|
726
726
|
* @inheritDoc
|
|
727
727
|
*/
|
|
728
728
|
LayoutGrid.prototype.getCellWidth = function (indexX, indexY) {
|
|
729
|
-
|
|
729
|
+
let cellSpan = this._cellSpans.getOccupyingSpan(indexX, indexY);
|
|
730
730
|
|
|
731
731
|
if (cellSpan) {
|
|
732
|
-
|
|
733
|
-
|
|
732
|
+
let spanStart = this._trackX.getLaneStart(cellSpan.indexX);
|
|
733
|
+
let spanEnd = this._trackX.getLaneEnd(cellSpan.indexX + cellSpan.colSpan - 1);
|
|
734
734
|
|
|
735
735
|
return spanEnd - spanStart;
|
|
736
736
|
}
|
|
@@ -743,11 +743,11 @@ LayoutGrid.prototype.getCellWidth = function (indexX, indexY) {
|
|
|
743
743
|
* @inheritDoc
|
|
744
744
|
*/
|
|
745
745
|
LayoutGrid.prototype.getCellHeight = function (indexX, indexY) {
|
|
746
|
-
|
|
746
|
+
let cellSpan = this._cellSpans.getOccupyingSpan(indexX, indexY);
|
|
747
747
|
|
|
748
748
|
if (cellSpan) {
|
|
749
|
-
|
|
750
|
-
|
|
749
|
+
let spanStart = this._trackY.getLaneStart(cellSpan.indexY);
|
|
750
|
+
let spanEnd = this._trackY.getLaneEnd(cellSpan.indexY + cellSpan.rowSpan - 1);
|
|
751
751
|
|
|
752
752
|
return spanEnd - spanStart;
|
|
753
753
|
}
|
|
@@ -776,7 +776,7 @@ LayoutGrid.prototype.getCellRowSpan = function (indexX, indexY) {
|
|
|
776
776
|
* @inheritDoc
|
|
777
777
|
*/
|
|
778
778
|
LayoutGrid.prototype.setCellRowSpan = function (indexX, indexY, spanVal) {
|
|
779
|
-
|
|
779
|
+
let cellSpan = this._cellSpans.setRowSpan(indexX, indexY, spanVal);
|
|
780
780
|
|
|
781
781
|
this._updateCellSpanSize(indexX, indexY, cellSpan);
|
|
782
782
|
|
|
@@ -795,7 +795,7 @@ LayoutGrid.prototype.setCellRowSpan = function (indexX, indexY, spanVal) {
|
|
|
795
795
|
return cellSpan.retVal !== 0;
|
|
796
796
|
}
|
|
797
797
|
|
|
798
|
-
|
|
798
|
+
let cell = this._getCell(indexX, indexY);
|
|
799
799
|
|
|
800
800
|
if (cell && cell._rowSpan > 1) {
|
|
801
801
|
this._updateCellSpanClass(indexX, indexY, cell._colSpan, cell._rowSpan, false);
|
|
@@ -817,7 +817,7 @@ LayoutGrid.prototype.getCellColSpan = function (indexX, indexY) {
|
|
|
817
817
|
* @inheritDoc
|
|
818
818
|
*/
|
|
819
819
|
LayoutGrid.prototype.setCellColSpan = function (indexX, indexY, spanVal) {
|
|
820
|
-
|
|
820
|
+
let cellSpan = this._cellSpans.setColSpan(indexX, indexY, spanVal);
|
|
821
821
|
|
|
822
822
|
this._updateCellSpanSize(indexX, indexY, cellSpan);
|
|
823
823
|
|
|
@@ -836,7 +836,7 @@ LayoutGrid.prototype.setCellColSpan = function (indexX, indexY, spanVal) {
|
|
|
836
836
|
return cellSpan.retVal !== 0;
|
|
837
837
|
}
|
|
838
838
|
|
|
839
|
-
|
|
839
|
+
let cell = this._getCell(indexX, indexY);
|
|
840
840
|
|
|
841
841
|
if (cell && cell._colSpan > 1) {
|
|
842
842
|
this._updateCellSpanClass(indexX, indexY, cell._colSpan, cell._rowSpan, false);
|
|
@@ -850,14 +850,14 @@ LayoutGrid.prototype.setCellColSpan = function (indexX, indexY, spanVal) {
|
|
|
850
850
|
* @inheritDoc
|
|
851
851
|
*/
|
|
852
852
|
LayoutGrid.prototype.clearCellSpans = function () {
|
|
853
|
-
|
|
853
|
+
let cellSpans = this._cellSpans.clearAllSpans();
|
|
854
854
|
|
|
855
855
|
if (cellSpans == null) {
|
|
856
856
|
return false;
|
|
857
857
|
}
|
|
858
858
|
|
|
859
|
-
for (
|
|
860
|
-
|
|
859
|
+
for (let i = cellSpans.length; --i >= 0; ) {
|
|
860
|
+
let cellSpan = cellSpans[i];
|
|
861
861
|
|
|
862
862
|
this._updateCellSpan(cellSpan.indexX, cellSpan.indexY, cellSpan, false);
|
|
863
863
|
}
|
|
@@ -870,14 +870,14 @@ LayoutGrid.prototype.clearCellSpans = function () {
|
|
|
870
870
|
* @inheritDoc
|
|
871
871
|
*/
|
|
872
872
|
LayoutGrid.prototype.clearColumnSpans = function (indexX) {
|
|
873
|
-
|
|
873
|
+
let cellSpans = this._cellSpans.removeSpanByColIndex(indexX);
|
|
874
874
|
|
|
875
875
|
if (cellSpans == null) {
|
|
876
876
|
return false;
|
|
877
877
|
}
|
|
878
878
|
|
|
879
|
-
for (
|
|
880
|
-
|
|
879
|
+
for (let i = cellSpans.length; --i >= 0; ) {
|
|
880
|
+
let cellSpan = cellSpans[i];
|
|
881
881
|
|
|
882
882
|
this._updateCellSpan(cellSpan.indexX, cellSpan.indexY, cellSpan, false);
|
|
883
883
|
}
|
|
@@ -941,8 +941,8 @@ LayoutGrid.prototype.setRowScalability = function (indexY, val) {
|
|
|
941
941
|
*/
|
|
942
942
|
LayoutGrid.prototype.getCell = function (indexX, indexY, opt_includeSpan) {
|
|
943
943
|
if (opt_includeSpan && this._cellSpans.hasSpan()) {
|
|
944
|
-
|
|
945
|
-
|
|
944
|
+
let colSpan = this._cellSpans.getColSpan(indexX, indexY);
|
|
945
|
+
let rowSpan = this._cellSpans.getRowSpan(indexX, indexY);
|
|
946
946
|
|
|
947
947
|
if (colSpan < 0) {
|
|
948
948
|
indexX += colSpan;
|
|
@@ -961,7 +961,7 @@ LayoutGrid.prototype.getCell = function (indexX, indexY, opt_includeSpan) {
|
|
|
961
961
|
* @inheritDoc
|
|
962
962
|
*/
|
|
963
963
|
LayoutGrid.prototype.getCellContent = function (indexX, indexY) {
|
|
964
|
-
|
|
964
|
+
let cell = this.getCell(indexX, indexY);
|
|
965
965
|
|
|
966
966
|
if (cell !== null) {
|
|
967
967
|
return cell.getContent();
|
|
@@ -975,7 +975,7 @@ LayoutGrid.prototype.getCellContent = function (indexX, indexY) {
|
|
|
975
975
|
* @inheritDoc
|
|
976
976
|
*/
|
|
977
977
|
LayoutGrid.prototype.setCellContent = function (indexX, indexY, data) {
|
|
978
|
-
|
|
978
|
+
let cell = this.getCell(indexX, indexY);
|
|
979
979
|
|
|
980
980
|
if (cell == null) {
|
|
981
981
|
window.console.log("Error: Accessing nonexistent cell in Grid's Table");
|
|
@@ -1007,13 +1007,13 @@ LayoutGrid.prototype.setColumnCount = function (val) {
|
|
|
1007
1007
|
return;
|
|
1008
1008
|
}
|
|
1009
1009
|
|
|
1010
|
-
|
|
1010
|
+
let oldColCount = this._colCount;
|
|
1011
1011
|
|
|
1012
1012
|
this._trackX.setLaneCount(val); // Need to be set before syncing layout
|
|
1013
1013
|
this._colCount = this._trackX.getLaneCount();
|
|
1014
1014
|
|
|
1015
|
-
|
|
1016
|
-
|
|
1015
|
+
let i = 0;
|
|
1016
|
+
let column = null;
|
|
1017
1017
|
|
|
1018
1018
|
if (oldColCount > val) {
|
|
1019
1019
|
for (i = oldColCount; --i >= val; ) {
|
|
@@ -1070,8 +1070,8 @@ LayoutGrid.prototype.setRowCount = function (val, noBinding) {
|
|
|
1070
1070
|
return;
|
|
1071
1071
|
}
|
|
1072
1072
|
|
|
1073
|
-
|
|
1074
|
-
|
|
1073
|
+
let c;
|
|
1074
|
+
let oldRowCount = this._rowCount;
|
|
1075
1075
|
|
|
1076
1076
|
this._trackY.setLaneCount(val); // Need to be set before syncing layout
|
|
1077
1077
|
this._rowCount = this._trackY.getLaneCount();
|
|
@@ -1100,7 +1100,7 @@ LayoutGrid.prototype.setRowCount = function (val, noBinding) {
|
|
|
1100
1100
|
|
|
1101
1101
|
// Clear selection of the removed rows
|
|
1102
1102
|
if (val > 0) {
|
|
1103
|
-
for (
|
|
1103
|
+
for (let i = val; i < oldRowCount; ++i) {
|
|
1104
1104
|
this._selectionList.deselect(i); // No UI change
|
|
1105
1105
|
}
|
|
1106
1106
|
} else {
|
|
@@ -1110,7 +1110,7 @@ LayoutGrid.prototype.setRowCount = function (val, noBinding) {
|
|
|
1110
1110
|
this._syncLayoutToRows(oldRowCount, val);
|
|
1111
1111
|
}
|
|
1112
1112
|
|
|
1113
|
-
|
|
1113
|
+
let e = {};
|
|
1114
1114
|
|
|
1115
1115
|
e["prevCount"] = oldRowCount;
|
|
1116
1116
|
e["rowCount"] = this._rowCount;
|
|
@@ -1176,7 +1176,7 @@ LayoutGrid.prototype.setBorders = function (lft, top, rgt, btm) {
|
|
|
1176
1176
|
* @inheritDoc
|
|
1177
1177
|
*/
|
|
1178
1178
|
LayoutGrid.prototype.getColumnStyle = function (colIndex, styleName) {
|
|
1179
|
-
|
|
1179
|
+
let column = this._columns[colIndex];
|
|
1180
1180
|
|
|
1181
1181
|
if (column) {
|
|
1182
1182
|
return column.getStyle(styleName);
|
|
@@ -1190,7 +1190,7 @@ LayoutGrid.prototype.getColumnStyle = function (colIndex, styleName) {
|
|
|
1190
1190
|
* @inheritDoc
|
|
1191
1191
|
*/
|
|
1192
1192
|
LayoutGrid.prototype.setColumnStyle = function (colIndex, styleName, value) {
|
|
1193
|
-
|
|
1193
|
+
let column = this._columns[colIndex];
|
|
1194
1194
|
if (column) {
|
|
1195
1195
|
column.setStyle(styleName, value);
|
|
1196
1196
|
}
|
|
@@ -1201,7 +1201,7 @@ LayoutGrid.prototype.setColumnStyle = function (colIndex, styleName, value) {
|
|
|
1201
1201
|
* @inheritDoc
|
|
1202
1202
|
*/
|
|
1203
1203
|
LayoutGrid.prototype.enableColumnClass = function (colIndex, className, enabled) {
|
|
1204
|
-
|
|
1204
|
+
let column = this._columns[colIndex];
|
|
1205
1205
|
|
|
1206
1206
|
if (column) {
|
|
1207
1207
|
column.enableClass(className, enabled);
|
|
@@ -1213,7 +1213,7 @@ LayoutGrid.prototype.enableColumnClass = function (colIndex, className, enabled)
|
|
|
1213
1213
|
* @inheritDoc
|
|
1214
1214
|
*/
|
|
1215
1215
|
LayoutGrid.prototype.hasColumnClass = function (colIndex, className) {
|
|
1216
|
-
|
|
1216
|
+
let column = this._columns[colIndex];
|
|
1217
1217
|
|
|
1218
1218
|
return (column) ? column.hasClass(className) : false;
|
|
1219
1219
|
};
|
|
@@ -1224,7 +1224,7 @@ LayoutGrid.prototype.hasColumnClass = function (colIndex, className) {
|
|
|
1224
1224
|
*/
|
|
1225
1225
|
LayoutGrid.prototype.enableRowClass = function (rowIndex, className, enabled) {
|
|
1226
1226
|
if (rowIndex >= 0 && rowIndex < this._rowCount) {
|
|
1227
|
-
for (
|
|
1227
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
1228
1228
|
this._columns[c].getCell(rowIndex).enableClass(className, enabled);
|
|
1229
1229
|
}
|
|
1230
1230
|
}
|
|
@@ -1240,7 +1240,7 @@ LayoutGrid.prototype.setRowStyle = function (rowIndex, styleName, value, enabled
|
|
|
1240
1240
|
value = "";
|
|
1241
1241
|
}
|
|
1242
1242
|
|
|
1243
|
-
for (
|
|
1243
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
1244
1244
|
this._columns[c].getCell(rowIndex).setStyle(styleName, value);
|
|
1245
1245
|
}
|
|
1246
1246
|
}
|
|
@@ -1267,13 +1267,13 @@ LayoutGrid.prototype.getContentWidth = function () {
|
|
|
1267
1267
|
* @inheritDoc
|
|
1268
1268
|
*/
|
|
1269
1269
|
LayoutGrid.prototype.getContentHeight = function () {
|
|
1270
|
-
|
|
1270
|
+
let layoutSize = this._trackY.getTrackSize();
|
|
1271
1271
|
|
|
1272
1272
|
if (layoutSize <= 0) { // All of the cell has default size of zero
|
|
1273
1273
|
if (this._colCount * this.getVisibleRowCount() > 0) {
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1274
|
+
let column = this._columns[0];
|
|
1275
|
+
let bottomCell = column.getCell(this._rowCount - 1);
|
|
1276
|
+
let bottom = bottomCell.getTop() + bottomCell.getHeight();
|
|
1277
1277
|
|
|
1278
1278
|
return bottom - column.getCell(0).getTop();
|
|
1279
1279
|
}
|
|
@@ -1291,9 +1291,9 @@ LayoutGrid.prototype.getCellsByRowIndex = function (rowIndex) {
|
|
|
1291
1291
|
return null;
|
|
1292
1292
|
}
|
|
1293
1293
|
|
|
1294
|
-
|
|
1294
|
+
let ary = new Array(this._colCount);
|
|
1295
1295
|
|
|
1296
|
-
for (
|
|
1296
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
1297
1297
|
ary[c] = this._columns[c].getCell(rowIndex);
|
|
1298
1298
|
}
|
|
1299
1299
|
|
|
@@ -1383,24 +1383,24 @@ LayoutGrid.prototype.setRowHighlight = function (rowIndex) {
|
|
|
1383
1383
|
return;
|
|
1384
1384
|
}
|
|
1385
1385
|
|
|
1386
|
-
|
|
1386
|
+
let prevIndex = this._rowHighlightIndex;
|
|
1387
1387
|
|
|
1388
1388
|
this._rowHighlightIndex = rowIndex;
|
|
1389
1389
|
|
|
1390
|
-
for (
|
|
1390
|
+
for (let i = this._highlightedCells.length; --i >= 0;) {
|
|
1391
1391
|
this._highlightedCells[i].removeClass("highlighted-row"); // This will guarantee that there is no left over highlighted cell
|
|
1392
1392
|
}
|
|
1393
1393
|
|
|
1394
1394
|
if (rowIndex >= 0 && rowIndex < this._rowCount) {
|
|
1395
1395
|
this._highlightedCells.length = this._colCount;
|
|
1396
1396
|
|
|
1397
|
-
for (
|
|
1398
|
-
|
|
1397
|
+
for (let c = this._colCount; --c >= 0;) {
|
|
1398
|
+
let cell = this._columns[c].getCell(rowIndex);
|
|
1399
1399
|
|
|
1400
1400
|
this._highlightedCells[c] = cell;
|
|
1401
1401
|
cell.addClass("highlighted-row");
|
|
1402
1402
|
}
|
|
1403
|
-
|
|
1403
|
+
let stretchEl = this.getStretchedCell(rowIndex); // check stretched cell
|
|
1404
1404
|
if(stretchEl) {
|
|
1405
1405
|
this._highlightedCells.push(stretchEl);
|
|
1406
1406
|
stretchEl.addClass("highlighted-row");
|
|
@@ -1410,7 +1410,7 @@ LayoutGrid.prototype.setRowHighlight = function (rowIndex) {
|
|
|
1410
1410
|
}
|
|
1411
1411
|
|
|
1412
1412
|
if (this._hasListener("rowHighlighted")) {
|
|
1413
|
-
|
|
1413
|
+
let e = {};
|
|
1414
1414
|
|
|
1415
1415
|
e["prevRowIndex"] = prevIndex;
|
|
1416
1416
|
e["rowIndex"] = rowIndex;
|
|
@@ -1488,7 +1488,7 @@ LayoutGrid.prototype.selectRowRange = function (rowIndex, len) {
|
|
|
1488
1488
|
|
|
1489
1489
|
this._selectionList.selectRange(rowIndex, len);
|
|
1490
1490
|
|
|
1491
|
-
for (
|
|
1491
|
+
for (let r = 0; r < len; ++r) {
|
|
1492
1492
|
this._addSelectionUI(r + rowIndex);
|
|
1493
1493
|
}
|
|
1494
1494
|
};
|
|
@@ -1498,14 +1498,14 @@ LayoutGrid.prototype.selectRowRange = function (rowIndex, len) {
|
|
|
1498
1498
|
* @inheritDoc
|
|
1499
1499
|
*/
|
|
1500
1500
|
LayoutGrid.prototype.clearSelectedRows = function () {
|
|
1501
|
-
|
|
1501
|
+
let count = this._selectionList.getSelectionCount();
|
|
1502
1502
|
|
|
1503
1503
|
if (count) {
|
|
1504
|
-
|
|
1504
|
+
let sels = this._selectionList.getAllSelections(); // Slow
|
|
1505
1505
|
|
|
1506
1506
|
this._selectionList.clearAllSelections();
|
|
1507
1507
|
|
|
1508
|
-
for (
|
|
1508
|
+
for (let i = 0; i < count; ++i) {
|
|
1509
1509
|
this._removeSelectionUI(sels[i]);
|
|
1510
1510
|
}
|
|
1511
1511
|
|
|
@@ -1551,12 +1551,12 @@ LayoutGrid.prototype.setRowAnchor = function (at) {
|
|
|
1551
1551
|
* @inheritDoc
|
|
1552
1552
|
*/
|
|
1553
1553
|
LayoutGrid.prototype.activateColumn = function (colIndex, opt_bool) {
|
|
1554
|
-
|
|
1554
|
+
let column = this._columns[colIndex];
|
|
1555
1555
|
|
|
1556
1556
|
if (column) {
|
|
1557
|
-
|
|
1557
|
+
let dirty = column.activate(opt_bool);
|
|
1558
1558
|
if (opt_bool && dirty && this._rightSpace) {
|
|
1559
|
-
|
|
1559
|
+
let pn = this._rightSpace.parentNode;
|
|
1560
1560
|
if (pn) {
|
|
1561
1561
|
pn.appendChild(this._rightSpace);
|
|
1562
1562
|
}
|
|
@@ -1578,7 +1578,7 @@ LayoutGrid.prototype.activateRows = function () {
|
|
|
1578
1578
|
LayoutGrid.prototype.moveRowsToTop = function (numRows) {
|
|
1579
1579
|
this._ctxRows.moveItemsToTop(numRows);
|
|
1580
1580
|
this._stretchedCells.moveCellsToTop(numRows);
|
|
1581
|
-
for (
|
|
1581
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
1582
1582
|
this._columns[c].moveCellsToTop(numRows);
|
|
1583
1583
|
}
|
|
1584
1584
|
};
|
|
@@ -1658,14 +1658,14 @@ LayoutGrid.prototype.insertColumn = function (index, opt_json) {
|
|
|
1658
1658
|
index = this._colCount;
|
|
1659
1659
|
}
|
|
1660
1660
|
|
|
1661
|
-
|
|
1662
|
-
|
|
1661
|
+
let atTheMiddle = index < this._colCount;
|
|
1662
|
+
let cellSpans = this._cellSpans.getAllSpans();
|
|
1663
1663
|
|
|
1664
1664
|
this._updateCellSpans(cellSpans, false); // Clear all styling
|
|
1665
1665
|
this._trackX.insertLane(index, opt_json);
|
|
1666
1666
|
this._colCount = this._trackX.getLaneCount();
|
|
1667
1667
|
|
|
1668
|
-
|
|
1668
|
+
let column = this._newColumn(index);
|
|
1669
1669
|
|
|
1670
1670
|
this._updateColumnIndices();
|
|
1671
1671
|
|
|
@@ -1679,13 +1679,13 @@ LayoutGrid.prototype.insertColumn = function (index, opt_json) {
|
|
|
1679
1679
|
// this._syncLayoutToColumns(index); // Core grid will guarantee updating width to each section
|
|
1680
1680
|
|
|
1681
1681
|
// Select the newly added cell, if there is a row selection
|
|
1682
|
-
|
|
1682
|
+
let count = this._selectionList.getSelectionCount();
|
|
1683
1683
|
|
|
1684
1684
|
if (count) {
|
|
1685
|
-
|
|
1685
|
+
let sels = this._selectionList.getAllSelections(); // Slow
|
|
1686
1686
|
|
|
1687
|
-
for (
|
|
1688
|
-
|
|
1687
|
+
for (let i = sels.length; --i >= 0;) {
|
|
1688
|
+
let cell = column.getCell(sels[i]);
|
|
1689
1689
|
|
|
1690
1690
|
if (cell) {
|
|
1691
1691
|
cell.addClass("selected-row");
|
|
@@ -1705,18 +1705,18 @@ LayoutGrid.prototype.insertColumn = function (index, opt_json) {
|
|
|
1705
1705
|
* @inheritDoc
|
|
1706
1706
|
*/
|
|
1707
1707
|
LayoutGrid.prototype.removeColumnAt = function (index) {
|
|
1708
|
-
|
|
1708
|
+
let definition = this._trackX.removeLaneAt(index);
|
|
1709
1709
|
|
|
1710
1710
|
if (definition == null) {
|
|
1711
1711
|
return null;
|
|
1712
1712
|
}
|
|
1713
1713
|
|
|
1714
|
-
|
|
1714
|
+
let cellSpans = this._cellSpans.getAllSpans();
|
|
1715
1715
|
|
|
1716
1716
|
this._updateCellSpans(cellSpans, false); // Clear all styling
|
|
1717
1717
|
this._colCount = this._trackX.getLaneCount();
|
|
1718
1718
|
|
|
1719
|
-
|
|
1719
|
+
let column = this._columns.splice(index, 1)[0];
|
|
1720
1720
|
|
|
1721
1721
|
column.dispose();
|
|
1722
1722
|
definition["control"] = column;
|
|
@@ -1758,18 +1758,18 @@ LayoutGrid.prototype.moveColumn = function (from, to) {
|
|
|
1758
1758
|
return;
|
|
1759
1759
|
}
|
|
1760
1760
|
|
|
1761
|
-
|
|
1761
|
+
let cellSpans = this._cellSpans.getAllSpans();
|
|
1762
1762
|
|
|
1763
1763
|
this._updateCellSpans(cellSpans, false); // Clear all styling
|
|
1764
1764
|
this._trackX.moveLane(from, to);
|
|
1765
1765
|
|
|
1766
|
-
|
|
1766
|
+
let movedColumn = this._columns[from];
|
|
1767
1767
|
|
|
1768
1768
|
Util.moveArrayItem(this._columns, from, to);
|
|
1769
1769
|
|
|
1770
1770
|
if(movedColumn.getElement().offsetParent) {
|
|
1771
|
-
|
|
1772
|
-
|
|
1771
|
+
let siblingIndex = to + 1;
|
|
1772
|
+
let nextSibling = this._columns[siblingIndex] || null;
|
|
1773
1773
|
while (nextSibling && !nextSibling.getElement().offsetParent) {
|
|
1774
1774
|
nextSibling = this._columns[++siblingIndex];
|
|
1775
1775
|
}
|
|
@@ -1779,7 +1779,7 @@ LayoutGrid.prototype.moveColumn = function (from, to) {
|
|
|
1779
1779
|
this._updateColumnIndices();
|
|
1780
1780
|
this._updateCellSpans(cellSpans, true); // Restore all styling
|
|
1781
1781
|
|
|
1782
|
-
|
|
1782
|
+
let minIndex = (from < to) ? from : to;
|
|
1783
1783
|
|
|
1784
1784
|
this._syncLayoutToColumns(minIndex);
|
|
1785
1785
|
};
|
|
@@ -1812,9 +1812,9 @@ LayoutGrid.prototype.getColumnIndex = function (colElem) {
|
|
|
1812
1812
|
if(colElem["stretched"]) {
|
|
1813
1813
|
return this._stretchedCells.getColumnIndex(colElem);
|
|
1814
1814
|
}
|
|
1815
|
-
|
|
1815
|
+
let len = this._columns.length;
|
|
1816
1816
|
|
|
1817
|
-
for (
|
|
1817
|
+
for (let i = 0; i < len; ++i) {
|
|
1818
1818
|
if (this._columns[i].getElement() === colElem) {
|
|
1819
1819
|
return i;
|
|
1820
1820
|
}
|
|
@@ -1835,7 +1835,7 @@ LayoutGrid.prototype.getCellIndex = function (colIndex, cellElem) {
|
|
|
1835
1835
|
return this._stretchedCells.getRowIndex(cellElem);
|
|
1836
1836
|
}
|
|
1837
1837
|
|
|
1838
|
-
|
|
1838
|
+
let column = this._columns[colIndex];
|
|
1839
1839
|
if(column) {
|
|
1840
1840
|
return column.getCellIndex(cellElem);
|
|
1841
1841
|
}
|
|
@@ -1893,7 +1893,7 @@ LayoutGrid.prototype.updateLayout = function () {
|
|
|
1893
1893
|
* @inheritDoc
|
|
1894
1894
|
*/
|
|
1895
1895
|
LayoutGrid.prototype.stretchCell = function (cellRef, rowIndex, opt_stretching, onlyToTheRight) {
|
|
1896
|
-
|
|
1896
|
+
let colIndex = -1;
|
|
1897
1897
|
if (typeof cellRef === "number") {
|
|
1898
1898
|
colIndex = cellRef;
|
|
1899
1899
|
if(rowIndex == null) {
|
|
@@ -1913,11 +1913,11 @@ LayoutGrid.prototype.stretchCell = function (cellRef, rowIndex, opt_stretching,
|
|
|
1913
1913
|
return null;
|
|
1914
1914
|
}
|
|
1915
1915
|
|
|
1916
|
-
|
|
1917
|
-
|
|
1916
|
+
let stretching = (opt_stretching !== false);
|
|
1917
|
+
let cell = null;
|
|
1918
1918
|
|
|
1919
1919
|
if (stretching) {
|
|
1920
|
-
|
|
1920
|
+
let coverLayer = this._coverLayer;
|
|
1921
1921
|
if(!coverLayer) {
|
|
1922
1922
|
coverLayer = this._coverLayer = document.createElement("div");
|
|
1923
1923
|
coverLayer.className = "cover-layer";
|
|
@@ -1931,7 +1931,7 @@ LayoutGrid.prototype.stretchCell = function (cellRef, rowIndex, opt_stretching,
|
|
|
1931
1931
|
cell = this._stretchedCells.unstretchCell(rowIndex);
|
|
1932
1932
|
}
|
|
1933
1933
|
if(cell) {
|
|
1934
|
-
|
|
1934
|
+
let selected = this._selectionList.getSelection(rowIndex);
|
|
1935
1935
|
cell.enableClass("selected-row", selected); // It's can enable class without get stretch cell again.
|
|
1936
1936
|
}
|
|
1937
1937
|
return cell;
|
|
@@ -1979,7 +1979,7 @@ LayoutGrid.prototype.getStretchedCells = function () { // TODO: Deprecate this m
|
|
|
1979
1979
|
* @inheritDoc */
|
|
1980
1980
|
LayoutGrid.prototype.updateStretchedCells = function () {
|
|
1981
1981
|
this._updateLayers();
|
|
1982
|
-
|
|
1982
|
+
let childCount = this._coverLayer ? this._coverLayer.children.length : 0; // TODO: Currently assume only stretched cells exists
|
|
1983
1983
|
if (childCount <= 0) {
|
|
1984
1984
|
return false;
|
|
1985
1985
|
}
|
|
@@ -1998,11 +1998,11 @@ LayoutGrid.prototype._calculateViewSize = function (forceRecal) {
|
|
|
1998
1998
|
return this._stretchedCells.getStretchSize();
|
|
1999
1999
|
}
|
|
2000
2000
|
|
|
2001
|
-
|
|
2002
|
-
|
|
2001
|
+
let ctx = this._ctx;
|
|
2002
|
+
let stretchSize = forceRecal ? 0 : this._stretchedCells.getStretchSize();
|
|
2003
2003
|
if(!stretchSize && ctx) {
|
|
2004
2004
|
if(ctx["getWidth"]) {
|
|
2005
|
-
|
|
2005
|
+
let contentWidth = this.getContentWidth();
|
|
2006
2006
|
stretchSize = ctx["getWidth"]();
|
|
2007
2007
|
if(stretchSize) { // Grid may not be in the document
|
|
2008
2008
|
if(contentWidth < stretchSize) { // If view width is larger than actual content
|
|
@@ -2025,7 +2025,7 @@ LayoutGrid.prototype._calculateViewSize = function (forceRecal) {
|
|
|
2025
2025
|
* @param {boolean} enabled
|
|
2026
2026
|
*/
|
|
2027
2027
|
LayoutGrid.prototype._enableStretchCellClass = function (rowIndex, className, enabled ) {
|
|
2028
|
-
|
|
2028
|
+
let stretchEl = this.getStretchedCell(rowIndex); // check stretched cell
|
|
2029
2029
|
if(stretchEl) {
|
|
2030
2030
|
stretchEl.enableClass(className, enabled);
|
|
2031
2031
|
}
|
|
@@ -2092,7 +2092,7 @@ LayoutGrid.prototype.getRowLayout = function () {
|
|
|
2092
2092
|
LayoutGrid.prototype.reserveRightSpace = function (size) {
|
|
2093
2093
|
if (size && size > 0) {
|
|
2094
2094
|
if (!this._rightSpace) {
|
|
2095
|
-
|
|
2095
|
+
let rs = this._rightSpace = document.createElement("div");
|
|
2096
2096
|
rs.className = "tr-reserved-space";
|
|
2097
2097
|
rs.style.height = this.getContentHeight() + "px";
|
|
2098
2098
|
|
|
@@ -2106,7 +2106,7 @@ LayoutGrid.prototype.reserveRightSpace = function (size) {
|
|
|
2106
2106
|
|
|
2107
2107
|
this._updateCssWidth();
|
|
2108
2108
|
} else if (this._rightSpace) {
|
|
2109
|
-
|
|
2109
|
+
let pn = this._rightSpace.parentNode;
|
|
2110
2110
|
|
|
2111
2111
|
if (pn) {
|
|
2112
2112
|
pn.removeChild(this._rightSpace);
|
|
@@ -2125,17 +2125,17 @@ LayoutGrid.prototype.reserveRightSpace = function (size) {
|
|
|
2125
2125
|
* @ignore
|
|
2126
2126
|
*/
|
|
2127
2127
|
LayoutGrid.prototype._updateRightSpaceStyle = function() {
|
|
2128
|
-
|
|
2128
|
+
let rs = this._rightSpace;
|
|
2129
2129
|
if(!rs) {
|
|
2130
2130
|
return;
|
|
2131
2131
|
}
|
|
2132
|
-
|
|
2133
|
-
|
|
2132
|
+
let isScrollbarActive = false;
|
|
2133
|
+
let pinnedRgtCount = 0;
|
|
2134
2134
|
if(this._hscrollbar) {
|
|
2135
2135
|
isScrollbarActive = this._hscrollbar.isActive();
|
|
2136
2136
|
pinnedRgtCount = this._hscrollbar.getPinnedRightColumnCount();
|
|
2137
2137
|
}
|
|
2138
|
-
|
|
2138
|
+
let absolutePos = isScrollbarActive && !pinnedRgtCount; // if true, the right space element will be positioned absolutely
|
|
2139
2139
|
|
|
2140
2140
|
if (absolutePos) {
|
|
2141
2141
|
rs.style.top = this._trackY.getLaneStart(this._activeRow) + "px";
|
|
@@ -2153,7 +2153,7 @@ LayoutGrid.prototype._updateRightSpaceStyle = function() {
|
|
|
2153
2153
|
*/
|
|
2154
2154
|
LayoutGrid.prototype._updateLayers = function() {
|
|
2155
2155
|
if(this._rightSpace) {
|
|
2156
|
-
|
|
2156
|
+
let pn = this._rightSpace.parentNode; // rightSpace can be located in two places: layout grid and pane slider
|
|
2157
2157
|
if(pn) {
|
|
2158
2158
|
pn.appendChild(this._rightSpace);
|
|
2159
2159
|
} else {
|
|
@@ -2181,7 +2181,7 @@ LayoutGrid.prototype.getReservedSpace = function () {
|
|
|
2181
2181
|
* @inheritDoc
|
|
2182
2182
|
*/
|
|
2183
2183
|
LayoutGrid.prototype.getComputedStyle = function () {
|
|
2184
|
-
|
|
2184
|
+
let elem = this._element;
|
|
2185
2185
|
|
|
2186
2186
|
return elem.offsetParent ? getComputedStyle(elem) : null;
|
|
2187
2187
|
};
|
|
@@ -2191,7 +2191,7 @@ LayoutGrid.prototype.getComputedStyle = function () {
|
|
|
2191
2191
|
* @inheritDoc
|
|
2192
2192
|
*/
|
|
2193
2193
|
LayoutGrid.prototype.isColumnActive = function (colIndex) {
|
|
2194
|
-
|
|
2194
|
+
let column = this._columns[colIndex];
|
|
2195
2195
|
|
|
2196
2196
|
return column ? column.isActive() : false;
|
|
2197
2197
|
};
|
|
@@ -2205,11 +2205,11 @@ LayoutGrid.prototype.setRowAttributes = function (rowIndex, func) {
|
|
|
2205
2205
|
return;
|
|
2206
2206
|
}
|
|
2207
2207
|
|
|
2208
|
-
for (
|
|
2209
|
-
|
|
2210
|
-
for (
|
|
2211
|
-
|
|
2212
|
-
|
|
2208
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
2209
|
+
let result = func(c);
|
|
2210
|
+
for (let i = result.length; --i >= 0;) {
|
|
2211
|
+
let entry = result[i];
|
|
2212
|
+
let cell = this._columns[c].getCell(rowIndex);
|
|
2213
2213
|
|
|
2214
2214
|
if (!cell) {
|
|
2215
2215
|
continue;
|
|
@@ -2241,7 +2241,7 @@ LayoutGrid.prototype.selectColumn = function (colIndex, selected) {
|
|
|
2241
2241
|
if(selected) {
|
|
2242
2242
|
this._colSelDirty = true;
|
|
2243
2243
|
|
|
2244
|
-
|
|
2244
|
+
let boundLayer = this._boundLayer;
|
|
2245
2245
|
if(!boundLayer) {
|
|
2246
2246
|
this._initBoundLayer();
|
|
2247
2247
|
this._updateLayers();
|
|
@@ -2261,7 +2261,7 @@ LayoutGrid.prototype.isSelectedColumn = function (colIndex) {
|
|
|
2261
2261
|
* @param {boolean=} selected
|
|
2262
2262
|
*/
|
|
2263
2263
|
LayoutGrid.prototype.selectCell = function (colIndex, rowIndex, selected) {
|
|
2264
|
-
|
|
2264
|
+
let cell = this._getCell(colIndex, rowIndex);
|
|
2265
2265
|
if(cell) {
|
|
2266
2266
|
cell.enableClass("selection", selected);
|
|
2267
2267
|
}
|
|
@@ -2288,21 +2288,21 @@ LayoutGrid.prototype.getHorizontalLayout = function () {
|
|
|
2288
2288
|
* @param {!Array.<boolean>} outNoBorders
|
|
2289
2289
|
*/
|
|
2290
2290
|
LayoutGrid.prototype.calculateColumnBounds = function (lftIdx, rgtIdx, outPositions, outNoBorders) {
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2291
|
+
let lftPx = 0;
|
|
2292
|
+
let rgtPx = 0;
|
|
2293
|
+
let noLftBorder = false;
|
|
2294
|
+
let noRgtBorder = false;
|
|
2295
|
+
let pinnedRgtIdx = this._trackX.getLaneCount();
|
|
2296
2296
|
if(lftIdx >= 0) {
|
|
2297
2297
|
lftPx = this._trackX.getLaneStart(lftIdx);
|
|
2298
2298
|
rgtPx = this._trackX.getLaneEnd(rgtIdx);
|
|
2299
2299
|
}
|
|
2300
2300
|
if(lftPx < rgtPx) {
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2301
|
+
let lftView = 0;
|
|
2302
|
+
let rgtView, rgtLimit;
|
|
2303
|
+
let scrollLeft = 0;
|
|
2304
|
+
let pinnedLftCount = 0;
|
|
2305
|
+
let pinnedRgtCount = 0;
|
|
2306
2306
|
if(this._hscrollbar) {
|
|
2307
2307
|
scrollLeft = this._hscrollbar.getScrollLeft();
|
|
2308
2308
|
pinnedLftCount = this._hscrollbar.getPinnedLeftColumnCount();
|
|
@@ -2357,8 +2357,8 @@ LayoutGrid.prototype.updateColumnBounds = function (posAry, noBorderAry, topPx)
|
|
|
2357
2357
|
return;
|
|
2358
2358
|
}
|
|
2359
2359
|
|
|
2360
|
-
|
|
2361
|
-
|
|
2360
|
+
let cbs = this._colBounds;
|
|
2361
|
+
let cbc = this._colBoundCache;
|
|
2362
2362
|
if(!cbs) {
|
|
2363
2363
|
cbs = this._colBounds = [];
|
|
2364
2364
|
}
|
|
@@ -2366,13 +2366,13 @@ LayoutGrid.prototype.updateColumnBounds = function (posAry, noBorderAry, topPx)
|
|
|
2366
2366
|
cbc = this._colBoundCache = [];
|
|
2367
2367
|
}
|
|
2368
2368
|
|
|
2369
|
-
|
|
2370
|
-
|
|
2371
|
-
|
|
2372
|
-
|
|
2369
|
+
let rangeCount = posAry.length;
|
|
2370
|
+
let i;
|
|
2371
|
+
let pn = null; // parentNode
|
|
2372
|
+
let columnBound = null;
|
|
2373
2373
|
|
|
2374
2374
|
// Remove unused bounds from document
|
|
2375
|
-
|
|
2375
|
+
let activeCount = cbs.length;
|
|
2376
2376
|
for(i = rangeCount; i < activeCount; ++i) {
|
|
2377
2377
|
columnBound = cbs[i];
|
|
2378
2378
|
pn = columnBound.parentNode;
|
|
@@ -2388,10 +2388,10 @@ LayoutGrid.prototype.updateColumnBounds = function (posAry, noBorderAry, topPx)
|
|
|
2388
2388
|
}
|
|
2389
2389
|
|
|
2390
2390
|
for(i = 0; i < rangeCount; ++i) {
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2391
|
+
let positions = posAry[i];
|
|
2392
|
+
let noBorders = noBorderAry[i];
|
|
2393
|
+
let lftPx = /** @type{number} */(positions[0]);
|
|
2394
|
+
let rgtPx = /** @type{number} */(positions[1]);
|
|
2395
2395
|
|
|
2396
2396
|
columnBound = cbc[i];
|
|
2397
2397
|
if(!columnBound) {
|
|
@@ -2418,20 +2418,20 @@ LayoutGrid.prototype.updateColumnBounds = function (posAry, noBorderAry, topPx)
|
|
|
2418
2418
|
/** @public
|
|
2419
2419
|
*/
|
|
2420
2420
|
LayoutGrid.prototype.updateColumnSeparators = function () {
|
|
2421
|
-
|
|
2422
|
-
|
|
2421
|
+
let pinnedLeftCount = this._hscrollbar.getPinnedLeftColumnCount();
|
|
2422
|
+
let pinnedRightCount = this._hscrollbar.getPinnedRightColumnCount();
|
|
2423
2423
|
if ((pinnedLeftCount || pinnedRightCount) && !this._boundLayer) {
|
|
2424
2424
|
this._initBoundLayer();
|
|
2425
2425
|
}
|
|
2426
2426
|
|
|
2427
|
-
|
|
2427
|
+
let isScrollbarActive = false;
|
|
2428
2428
|
if(this._hscrollbar) {
|
|
2429
2429
|
isScrollbarActive = this._hscrollbar.isActive();
|
|
2430
2430
|
}
|
|
2431
2431
|
|
|
2432
|
-
|
|
2432
|
+
let boundLayer = this._boundLayer;
|
|
2433
2433
|
|
|
2434
|
-
|
|
2434
|
+
let colSeparator = this._leftColumnSeparator;
|
|
2435
2435
|
if (isScrollbarActive && pinnedLeftCount) {
|
|
2436
2436
|
if (!colSeparator) {
|
|
2437
2437
|
colSeparator = this._leftColumnSeparator = this._createColumnSeparator();
|
|
@@ -2444,7 +2444,7 @@ LayoutGrid.prototype.updateColumnSeparators = function () {
|
|
|
2444
2444
|
}
|
|
2445
2445
|
}
|
|
2446
2446
|
|
|
2447
|
-
|
|
2447
|
+
let rightPos = this._trackX.getLaneStart(pinnedLeftCount);
|
|
2448
2448
|
colSeparator.style.left = (rightPos - 1) + "px";
|
|
2449
2449
|
colSeparator.style.height = this._trackY.getTrackSize() + "px";
|
|
2450
2450
|
} else {
|
|
@@ -2466,9 +2466,9 @@ LayoutGrid.prototype.updateColumnSeparators = function () {
|
|
|
2466
2466
|
boundLayer.appendChild(colSeparator);
|
|
2467
2467
|
}
|
|
2468
2468
|
}
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2469
|
+
let colCount = this.getColumnCount();
|
|
2470
|
+
let colWidth = this._trackX.getLaneEnd(colCount - 1) - this._trackX.getLaneStart(colCount - pinnedRightCount);
|
|
2471
|
+
let viewSize = this._getViewSize();
|
|
2472
2472
|
|
|
2473
2473
|
colSeparator.style.left = (viewSize - colWidth - this._rightSpaceSize) + "px";
|
|
2474
2474
|
colSeparator.style.height = this._trackY.getTrackSize() + "px";
|
|
@@ -2482,7 +2482,7 @@ LayoutGrid.prototype.updateColumnSeparators = function () {
|
|
|
2482
2482
|
* @return {Element}
|
|
2483
2483
|
*/
|
|
2484
2484
|
LayoutGrid.prototype._createColumnSeparator = function() {
|
|
2485
|
-
|
|
2485
|
+
let colSeparator = document.createElement("div");
|
|
2486
2486
|
colSeparator.classList.add("column-separator");
|
|
2487
2487
|
return colSeparator;
|
|
2488
2488
|
};
|
|
@@ -2491,7 +2491,7 @@ LayoutGrid.prototype._createColumnSeparator = function() {
|
|
|
2491
2491
|
* @return {Element}
|
|
2492
2492
|
*/
|
|
2493
2493
|
LayoutGrid.prototype._initBoundLayer = function () {
|
|
2494
|
-
|
|
2494
|
+
let boundLayer = this._boundLayer;
|
|
2495
2495
|
if(!boundLayer) {
|
|
2496
2496
|
boundLayer = this._boundLayer = document.createElement("div");
|
|
2497
2497
|
boundLayer.className = "cover-layer";
|
|
@@ -2507,7 +2507,7 @@ LayoutGrid.prototype._initBoundLayer = function () {
|
|
|
2507
2507
|
* @return {Cell}
|
|
2508
2508
|
*/
|
|
2509
2509
|
LayoutGrid.prototype._getCell = function (indexX, indexY) {
|
|
2510
|
-
|
|
2510
|
+
let column = this._columns[indexX];
|
|
2511
2511
|
|
|
2512
2512
|
return (column) ? column.getCell(indexY) : null;
|
|
2513
2513
|
};
|
|
@@ -2521,10 +2521,10 @@ LayoutGrid.prototype._insertCells = function (from, to) {
|
|
|
2521
2521
|
this._activeRow = from;
|
|
2522
2522
|
this._activeRowEnd = to;
|
|
2523
2523
|
|
|
2524
|
-
|
|
2524
|
+
let top = this._trackY.getLaneStart(from);
|
|
2525
2525
|
|
|
2526
|
-
for (
|
|
2527
|
-
|
|
2526
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
2527
|
+
let column = this._columns[c];
|
|
2528
2528
|
|
|
2529
2529
|
if (!column.hasCollapsedCells()) {
|
|
2530
2530
|
column.setTop(top);
|
|
@@ -2538,7 +2538,7 @@ LayoutGrid.prototype._insertCells = function (from, to) {
|
|
|
2538
2538
|
}
|
|
2539
2539
|
|
|
2540
2540
|
if (to > this._availableRowCount) {
|
|
2541
|
-
|
|
2541
|
+
let e = {};
|
|
2542
2542
|
|
|
2543
2543
|
e["prevRowIndex"] = this._availableRowCount;
|
|
2544
2544
|
e["rowIndex"] = to;
|
|
@@ -2554,14 +2554,14 @@ LayoutGrid.prototype._insertCells = function (from, to) {
|
|
|
2554
2554
|
* @return {!ElementWrapper}
|
|
2555
2555
|
*/
|
|
2556
2556
|
LayoutGrid.prototype._newColumn = function (indexX) {
|
|
2557
|
-
|
|
2557
|
+
let column = new Column(this._virOwner || this);
|
|
2558
2558
|
|
|
2559
2559
|
column.setHeight(this._trackY.getDefaultLaneSize());
|
|
2560
2560
|
column.setCellCount(this._rowCount);
|
|
2561
2561
|
column.setTop(this._trackY.getLaneStart(this._activeRow));
|
|
2562
2562
|
column.activateCells(this._activeRow, this._activeRowEnd);
|
|
2563
2563
|
|
|
2564
|
-
for (
|
|
2564
|
+
for (let r = 0; r < this._rowCount; ++r) {
|
|
2565
2565
|
if (!this._trackY.isAtDefaultSize(r)) {
|
|
2566
2566
|
column.getCell(r).setHeight(this._trackY.getLaneSize(r));
|
|
2567
2567
|
}
|
|
@@ -2574,7 +2574,7 @@ LayoutGrid.prototype._newColumn = function (indexX) {
|
|
|
2574
2574
|
} else {
|
|
2575
2575
|
this._columns.splice(indexX, 0, column);
|
|
2576
2576
|
|
|
2577
|
-
|
|
2577
|
+
let nextColumn = this._columns[indexX + 1];
|
|
2578
2578
|
|
|
2579
2579
|
column.insertBefore(nextColumn);
|
|
2580
2580
|
}
|
|
@@ -2602,7 +2602,7 @@ LayoutGrid.prototype._updateViewHeight = function () {
|
|
|
2602
2602
|
return;
|
|
2603
2603
|
}
|
|
2604
2604
|
|
|
2605
|
-
|
|
2605
|
+
let contentHeight = this.getContentHeight();
|
|
2606
2606
|
|
|
2607
2607
|
this._element.style.height = contentHeight + "px"; // View is kept in sync with content size
|
|
2608
2608
|
|
|
@@ -2614,8 +2614,8 @@ LayoutGrid.prototype._updateViewHeight = function () {
|
|
|
2614
2614
|
/** @private
|
|
2615
2615
|
*/
|
|
2616
2616
|
LayoutGrid.prototype._updateColumnIndices = function () {
|
|
2617
|
-
|
|
2618
|
-
|
|
2617
|
+
let columnCount = this._columns.length;
|
|
2618
|
+
let first = this._columns[0];
|
|
2619
2619
|
|
|
2620
2620
|
if (first !== this._firstColumn) {
|
|
2621
2621
|
if (this._firstColumn) {
|
|
@@ -2629,7 +2629,7 @@ LayoutGrid.prototype._updateColumnIndices = function () {
|
|
|
2629
2629
|
}
|
|
2630
2630
|
}
|
|
2631
2631
|
|
|
2632
|
-
|
|
2632
|
+
let last = this._columns[columnCount - 1];
|
|
2633
2633
|
|
|
2634
2634
|
if (last !== this._lastColumn) {
|
|
2635
2635
|
if (this._lastColumn) {
|
|
@@ -2641,10 +2641,10 @@ LayoutGrid.prototype._updateColumnIndices = function () {
|
|
|
2641
2641
|
if (this._lastColumn) { this._lastColumn.addClass("last"); }
|
|
2642
2642
|
}
|
|
2643
2643
|
|
|
2644
|
-
|
|
2644
|
+
let sibling = null;
|
|
2645
2645
|
|
|
2646
|
-
for (
|
|
2647
|
-
|
|
2646
|
+
for (let i = this._columns.length; --i >= 0;) {
|
|
2647
|
+
let column = this._columns[i];
|
|
2648
2648
|
|
|
2649
2649
|
column.setNextSibling(sibling);
|
|
2650
2650
|
sibling = column;
|
|
@@ -2669,8 +2669,8 @@ LayoutGrid.prototype._syncLayoutToColumns = function (from) {
|
|
|
2669
2669
|
return false;
|
|
2670
2670
|
}
|
|
2671
2671
|
|
|
2672
|
-
for (
|
|
2673
|
-
|
|
2672
|
+
for (let c = from; c < this._colCount; ++c) {
|
|
2673
|
+
let column = this._columns[c];
|
|
2674
2674
|
|
|
2675
2675
|
column.setLeft(this._trackX.getLaneStart(c));
|
|
2676
2676
|
column.setWidth(this._trackX.getLaneSize(c));
|
|
@@ -2691,10 +2691,10 @@ LayoutGrid.prototype._syncLayoutToRows = function (indexY, toY) {
|
|
|
2691
2691
|
return;
|
|
2692
2692
|
}
|
|
2693
2693
|
|
|
2694
|
-
for (
|
|
2695
|
-
|
|
2694
|
+
for (let r = indexY; r < toY; ++r) {
|
|
2695
|
+
let height = (this._trackY.isAtDefaultSize(r)) ? -1 : this._trackY.getLaneSize(r);
|
|
2696
2696
|
|
|
2697
|
-
for (
|
|
2697
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
2698
2698
|
this._columns[c].getCell(r).setHeight(height);
|
|
2699
2699
|
}
|
|
2700
2700
|
}
|
|
@@ -2722,7 +2722,7 @@ LayoutGrid.prototype._dispatchRowHeightChangedEvent = function (from, to) {
|
|
|
2722
2722
|
return;
|
|
2723
2723
|
}
|
|
2724
2724
|
|
|
2725
|
-
|
|
2725
|
+
let e = {};
|
|
2726
2726
|
|
|
2727
2727
|
e["rowIndex"] = from;
|
|
2728
2728
|
e["changeLength"] = to - from;
|
|
@@ -2736,7 +2736,7 @@ LayoutGrid.prototype._dispatchRowHeightChangedEvent = function (from, to) {
|
|
|
2736
2736
|
* @param {CellSpan} cellSpan
|
|
2737
2737
|
*/
|
|
2738
2738
|
LayoutGrid.prototype._updateCellSpanSize = function (indexX, indexY, cellSpan) {
|
|
2739
|
-
|
|
2739
|
+
let cell = this._getCell(indexX, indexY);
|
|
2740
2740
|
|
|
2741
2741
|
if (cell == null) {
|
|
2742
2742
|
return;
|
|
@@ -2752,7 +2752,7 @@ LayoutGrid.prototype._updateCellSpanSize = function (indexX, indexY, cellSpan) {
|
|
|
2752
2752
|
if (cellSpan && cellSpan.rowSpan > 1) {
|
|
2753
2753
|
cell.setHeight(this.getCellHeight(indexX, indexY)); /////
|
|
2754
2754
|
} else {
|
|
2755
|
-
|
|
2755
|
+
let height = this._trackY.isAtDefaultSize(indexY) ? -1 : this._trackY.getLaneSize(indexY);
|
|
2756
2756
|
|
|
2757
2757
|
cell.setHeight(height);
|
|
2758
2758
|
}
|
|
@@ -2765,8 +2765,8 @@ LayoutGrid.prototype._updateCellSpanSize = function (indexX, indexY, cellSpan) {
|
|
|
2765
2765
|
LayoutGrid.prototype._updateCellSpanLayout = function (cellSpans) {
|
|
2766
2766
|
if (cellSpans == null) { return; }
|
|
2767
2767
|
|
|
2768
|
-
for (
|
|
2769
|
-
|
|
2768
|
+
for (let i = cellSpans.length; --i >= 0; ) {
|
|
2769
|
+
let cellSpan = cellSpans[i];
|
|
2770
2770
|
|
|
2771
2771
|
this._updateCellSpanSize(cellSpan.indexX, cellSpan.indexY, cellSpan);
|
|
2772
2772
|
}
|
|
@@ -2793,9 +2793,9 @@ LayoutGrid.prototype._updateCellSpan = function (indexX, indexY, cellSpan, addin
|
|
|
2793
2793
|
* @param {boolean} adding
|
|
2794
2794
|
*/
|
|
2795
2795
|
LayoutGrid.prototype._updateCellSpanClass = function (indexX, indexY, colSpan, rowSpan, adding) {
|
|
2796
|
-
|
|
2796
|
+
let column;
|
|
2797
2797
|
|
|
2798
|
-
for (
|
|
2798
|
+
for (let c = 0; c < colSpan; ++c) {
|
|
2799
2799
|
column = this._columns[indexX + c];
|
|
2800
2800
|
|
|
2801
2801
|
if (!column) {
|
|
@@ -2805,7 +2805,7 @@ LayoutGrid.prototype._updateCellSpanClass = function (indexX, indexY, colSpan, r
|
|
|
2805
2805
|
column.collapseCells(indexY, rowSpan, adding, (c === 0), (c > 0));
|
|
2806
2806
|
}
|
|
2807
2807
|
|
|
2808
|
-
|
|
2808
|
+
let cell = this._getCell(indexX, indexY);
|
|
2809
2809
|
|
|
2810
2810
|
if (cell) {
|
|
2811
2811
|
cell._colSpan = (adding) ? colSpan : 1;
|
|
@@ -2821,8 +2821,8 @@ LayoutGrid.prototype._updateCellSpanClass = function (indexX, indexY, colSpan, r
|
|
|
2821
2821
|
LayoutGrid.prototype._updateCellSpans = function (cellSpans, adding) {
|
|
2822
2822
|
if (cellSpans == null) { return; }
|
|
2823
2823
|
|
|
2824
|
-
for (
|
|
2825
|
-
|
|
2824
|
+
for (let i = cellSpans.length; --i >= 0; ) {
|
|
2825
|
+
let cellSpan = cellSpans[i];
|
|
2826
2826
|
|
|
2827
2827
|
this._updateCellSpan(cellSpan.indexX, cellSpan.indexY, cellSpan, adding);
|
|
2828
2828
|
}
|
|
@@ -2833,15 +2833,15 @@ LayoutGrid.prototype._updateCellSpans = function (cellSpans, adding) {
|
|
|
2833
2833
|
* @param {Object} e
|
|
2834
2834
|
*/
|
|
2835
2835
|
LayoutGrid.prototype._onMouseMove = function (e) {
|
|
2836
|
-
|
|
2836
|
+
let target = e["target"];
|
|
2837
2837
|
|
|
2838
|
-
|
|
2839
|
-
|
|
2838
|
+
let cellElement = Util.closestElement(target, "cell");
|
|
2839
|
+
let colIndex = this._stretchedCells.getColumnIndex(cellElement);
|
|
2840
2840
|
if(colIndex < 0) { // Not found colIndex in stretching cell, then get from normal row
|
|
2841
|
-
|
|
2841
|
+
let colElement = Util.closestElement(target, "column");
|
|
2842
2842
|
colIndex = this.getColumnIndex(colElement);
|
|
2843
2843
|
}
|
|
2844
|
-
|
|
2844
|
+
let rowIndex = this.getCellIndex(colIndex, cellElement);
|
|
2845
2845
|
|
|
2846
2846
|
this.setRowHighlight(rowIndex);
|
|
2847
2847
|
};
|
|
@@ -2851,10 +2851,10 @@ LayoutGrid.prototype._onMouseMove = function (e) {
|
|
|
2851
2851
|
* @param {Object} e
|
|
2852
2852
|
*/
|
|
2853
2853
|
LayoutGrid.prototype._onMouseOut = function (e) {
|
|
2854
|
-
|
|
2854
|
+
let rel = e.relatedTarget;
|
|
2855
2855
|
|
|
2856
2856
|
if (rel) {
|
|
2857
|
-
|
|
2857
|
+
let thisElem = this._element;
|
|
2858
2858
|
|
|
2859
2859
|
while (rel.parentNode !== null) {
|
|
2860
2860
|
rel = rel.parentNode;
|
|
@@ -2873,7 +2873,7 @@ LayoutGrid.prototype._onMouseOut = function (e) {
|
|
|
2873
2873
|
* @param {number} rowIndex
|
|
2874
2874
|
*/
|
|
2875
2875
|
LayoutGrid.prototype._updateSelectionUI = function (rowIndex) { // Update UI of the specified row index
|
|
2876
|
-
|
|
2876
|
+
let selected = this._selectionList.getSelection(rowIndex);
|
|
2877
2877
|
this._enableStretchCellClass(rowIndex, "selected-row", selected);
|
|
2878
2878
|
this.enableRowClass(rowIndex, "selected-row", selected);
|
|
2879
2879
|
};
|
|
@@ -2901,7 +2901,7 @@ LayoutGrid.prototype._removeSelectionUI = function (rowIndex) {
|
|
|
2901
2901
|
*/
|
|
2902
2902
|
LayoutGrid.prototype._onEnterDocument = function () {
|
|
2903
2903
|
if (!this._initialized && this.getParent()) {
|
|
2904
|
-
for (
|
|
2904
|
+
for (let c = 0; c < this._colCount; ++c) {
|
|
2905
2905
|
this._columns[c].enableAutoStyleUpdating();
|
|
2906
2906
|
}
|
|
2907
2907
|
|