@visactor/vtable 1.17.3-alpha.5 → 1.17.3-alpha.6
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/cjs/PivotTable.d.ts +0 -5
- package/cjs/PivotTable.js +0 -13
- package/cjs/PivotTable.js.map +1 -1
- package/cjs/core/BaseTable.js +14 -15
- package/cjs/core/BaseTable.js.map +1 -1
- package/cjs/dataset/dataset.js +4 -6
- package/cjs/dataset/dataset.js.map +1 -1
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +1 -1
- package/cjs/index.js.map +1 -1
- package/cjs/layout/index.js +2 -1
- package/cjs/layout/pivot-header-layout.js +4 -6
- package/cjs/layout/pivot-header-layout.js.map +1 -1
- package/cjs/layout/pivot-layout.js +2 -0
- package/cjs/layout/row-height-map.js +1 -1
- package/cjs/layout/simple-header-layout.js +1 -1
- package/cjs/layout/tree-helper.js +1 -1
- package/cjs/plugins/chartModules.js +1 -2
- package/cjs/plugins/custom-cell-style.js +1 -1
- package/cjs/plugins/icons.js +1 -1
- package/cjs/plugins/invert-highlight.js +1 -1
- package/cjs/plugins/list-tree-stick-cell.js +1 -1
- package/cjs/plugins/themes.js +1 -1
- package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
- package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +4 -4
- package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js +2 -1
- package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/cjs/scenegraph/layout/frozen.js +5 -5
- package/cjs/scenegraph/layout/frozen.js.map +1 -1
- package/cjs/scenegraph/select/create-select-border.js +2 -13
- package/cjs/scenegraph/select/create-select-border.js.map +1 -1
- package/cjs/state/state.js +47 -79
- package/cjs/state/state.js.map +1 -1
- package/cjs/ts-types/base-table.d.ts +1 -1
- package/cjs/ts-types/base-table.js.map +1 -1
- package/cjs/ts-types/common.d.ts +1 -3
- package/cjs/ts-types/common.js.map +1 -1
- package/cjs/ts-types/events.d.ts +1 -3
- package/cjs/ts-types/events.js.map +1 -1
- package/cjs/ts-types/table-engine.d.ts +0 -1
- package/cjs/ts-types/table-engine.js.map +1 -1
- package/cjs/vrender.js.map +1 -1
- package/dist/vtable.js +67 -195
- package/dist/vtable.min.js +1 -1
- package/es/PivotTable.d.ts +0 -5
- package/es/PivotTable.js +0 -13
- package/es/PivotTable.js.map +1 -1
- package/es/core/BaseTable.js +14 -15
- package/es/core/BaseTable.js.map +1 -1
- package/es/dataset/dataset.js +4 -6
- package/es/dataset/dataset.js.map +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/layout/index.js +2 -1
- package/es/layout/pivot-header-layout.js +4 -6
- package/es/layout/pivot-header-layout.js.map +1 -1
- package/es/layout/pivot-layout.js +2 -0
- package/es/layout/row-height-map.js +1 -1
- package/es/layout/simple-header-layout.js +1 -1
- package/es/layout/tree-helper.js +1 -1
- package/es/plugins/chartModules.js +1 -2
- package/es/plugins/custom-cell-style.js +1 -1
- package/es/plugins/icons.js +1 -1
- package/es/plugins/invert-highlight.js +1 -1
- package/es/plugins/list-tree-stick-cell.js +1 -1
- package/es/plugins/themes.js +1 -1
- package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
- package/es/scenegraph/graphic/contributions/rect-contribution-render.js +4 -4
- package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
- package/es/scenegraph/group-creater/progress/proxy.js +2 -1
- package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
- package/es/scenegraph/layout/frozen.js +5 -5
- package/es/scenegraph/layout/frozen.js.map +1 -1
- package/es/scenegraph/select/create-select-border.js +2 -13
- package/es/scenegraph/select/create-select-border.js.map +1 -1
- package/es/state/state.js +47 -79
- package/es/state/state.js.map +1 -1
- package/es/ts-types/base-table.d.ts +1 -1
- package/es/ts-types/base-table.js.map +1 -1
- package/es/ts-types/common.d.ts +1 -3
- package/es/ts-types/common.js.map +1 -1
- package/es/ts-types/events.d.ts +1 -3
- package/es/ts-types/events.js.map +1 -1
- package/es/ts-types/table-engine.d.ts +0 -1
- package/es/ts-types/table-engine.js.map +1 -1
- package/es/vrender.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRect } from "./../../vrender";
|
|
2
2
|
|
|
3
3
|
export function createCellSelectBorder(scene, start_Col, start_Row, end_Col, end_Row, selectRangeType, selectId, strokes) {
|
|
4
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
4
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
5
5
|
let isHasFillHandleRect = !!(null === (_a = scene.table.options.excelOptions) || void 0 === _a ? void 0 : _a.fillHandle);
|
|
6
6
|
if ((null === (_b = scene.table.stateManager.select.ranges) || void 0 === _b ? void 0 : _b.length) > 1) isHasFillHandleRect = !1,
|
|
7
7
|
scene.removeFillHandleFromSelectComponents(); else if (1 === (null === (_c = scene.table.stateManager.select.ranges) || void 0 === _c ? void 0 : _c.length)) {
|
|
@@ -18,8 +18,7 @@ export function createCellSelectBorder(scene, start_Col, start_Row, end_Col, end
|
|
|
18
18
|
y: firstCellBound.y1 - scene.tableGroup.attribute.y,
|
|
19
19
|
width: 0,
|
|
20
20
|
height: 0,
|
|
21
|
-
visible: !0
|
|
22
|
-
cornerRadius: getCornerRadius(selectRangeType, null === (_j = scene.table.theme.frameStyle) || void 0 === _j ? void 0 : _j.cornerRadius, start_Col, start_Row, end_Col, end_Row, scene.table)
|
|
21
|
+
visible: !0
|
|
23
22
|
});
|
|
24
23
|
let fillhandle;
|
|
25
24
|
isHasFillHandleRect && (fillhandle = createRect({
|
|
@@ -38,14 +37,4 @@ export function createCellSelectBorder(scene, start_Col, start_Row, end_Col, end
|
|
|
38
37
|
}), scene.tableGroup.insertAfter(rect, "body" === selectRangeType ? scene.bodyGroup : "columnHeader" === selectRangeType ? scene.colHeaderGroup : "rowHeader" === selectRangeType ? scene.rowHeaderGroup : "cornerHeader" === selectRangeType ? scene.cornerHeaderGroup : "rightTopCorner" === selectRangeType ? scene.rightTopCornerGroup : "rightFrozen" === selectRangeType ? scene.rightFrozenGroup : "leftBottomCorner" === selectRangeType ? scene.leftBottomCornerGroup : "bottomFrozen" === selectRangeType ? scene.bottomFrozenGroup : scene.rightBottomCornerGroup),
|
|
39
38
|
isHasFillHandleRect && scene.tableGroup.insertAfter(fillhandle, "body" === selectRangeType ? scene.bodyGroup : "columnHeader" === selectRangeType ? scene.colHeaderGroup : "rowHeader" === selectRangeType ? scene.rowHeaderGroup : "cornerHeader" === selectRangeType ? scene.cornerHeaderGroup : "rightTopCorner" === selectRangeType ? scene.rightTopCornerGroup : "rightFrozen" === selectRangeType ? scene.rightFrozenGroup : "leftBottomCorner" === selectRangeType ? scene.leftBottomCornerGroup : "bottomFrozen" === selectRangeType ? scene.bottomFrozenGroup : scene.rightBottomCornerGroup);
|
|
40
39
|
}
|
|
41
|
-
|
|
42
|
-
function getCornerRadius(selectRangeType, cornerRadius, start_Col, start_Row, end_Col, end_Row, table) {
|
|
43
|
-
if (!cornerRadius) return;
|
|
44
|
-
const cornerRadiusArray = Array.isArray(cornerRadius) ? cornerRadius : [ cornerRadius, cornerRadius, cornerRadius, cornerRadius ], tableEndCol = table.colCount - 1, tableEndRow = table.rowCount - 1, result = [ 0, 0, 0, 0 ];
|
|
45
|
-
let changed = !1;
|
|
46
|
-
return 0 === start_Col && 0 === start_Row ? (result[0] = cornerRadiusArray[0], changed = !0) : end_Col === tableEndCol && end_Row === tableEndRow ? (result[2] = cornerRadiusArray[2],
|
|
47
|
-
changed = !0) : 0 === start_Col && end_Row === tableEndRow ? (result[3] = cornerRadiusArray[3],
|
|
48
|
-
changed = !0) : end_Col === tableEndCol && 0 === start_Row && (result[1] = cornerRadiusArray[1],
|
|
49
|
-
changed = !0), changed ? result : void 0;
|
|
50
|
-
}
|
|
51
40
|
//# sourceMappingURL=create-select-border.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/scenegraph/select/create-select-border.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAM7C,MAAM,UAAU,sBAAsB,CACpC,KAAiB,EACjB,SAAiB,EACjB,SAAiB,EACjB,OAAe,EACf,OAAe,EACf,eAAgC,EAChC,QAAgB,EAChB,OAAkB;;IAGlB,IAAI,mBAAmB,GAAG,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,0CAAE,UAAU,CAAA,CAAC;IACzE,IAAI,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,0CAAE,MAAM,IAAG,CAAC,EAAE;QACtD,mBAAmB,GAAG,KAAK,CAAC;QAC5B,KAAK,CAAC,oCAAoC,EAAE,CAAC;KAC9C;SAAM,IAAI,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,0CAAE,MAAM,MAAK,CAAC,EAAE;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EACnD,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAClD,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CACrB,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EACnD,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAClD,CAAC;QACF,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;YACxC,mBAAmB,GAAG,KAAK,CAAC;SAC7B;KACF;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,EAAE;QAC5E,mBAAmB,GAAG,KAAK,CAAC;KAC7B;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,KAAK,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,gBAAgB,CAAC;IACzF,MAAM,aAAa,GAAG,KAAK,CAAC,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,gBAAgB,CAAC;IACpF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IAEhC,MAAM,oBAAoB,GAAG,MAAA,KAAK,CAAC,cAAc,0CAAE,eAAe,CAAC;IACnE,MAAM,kBAAkB,GAAG,MAAA,KAAK,CAAC,cAAc,0CAAE,mBAAmB,CAAC;IACrE,MAAM,IAAI,GAAG,UAAU,CAAC;QACtB,QAAQ,EAAE,KAAK;QACf,IAAI,EACF,CAAA,MAAA,KAAK,CAAC,cAAc,0CAAE,iBAAiB,MAAK,SAAS;YACnD,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAC,MAAA,KAAK,CAAC,cAAc,0CAAE,WAAmB,mCAAI,qBAAqB;QAEzE,SAAS,EAAE,kBAA4B;QAEvC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC3B,IAAI,MAAM,EAAE;gBACV,OAAO,oBAA8B,CAAC;aACvC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QACF,CAAC,EAAE,cAAc,CAAC,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACnD,CAAC,EAAE,cAAc,CAAC,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACnD,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,eAAe,CAC3B,eAAe,EACf,MAAA,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,0CAAE,YAAY,EAC1C,SAAS,EACT,SAAS,EACT,OAAO,EACP,OAAO,EACP,KAAK,CAAC,KAAK,CACZ;KACF,CAAC,CAAC;IAEH,IAAI,UAAU,CAAC;IACf,IAAI,mBAAmB,EAAE;QACvB,UAAU,GAAG,UAAU,CAAC;YACtB,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,oBAA8B;YAEpC,MAAM,EAAE,oBAA8B;YACtC,CAAC,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC;YACvB,CAAC,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC;YACvB,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YAET,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;KACJ;IACD,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC9B,KAAK,CAAC,wBAAwB,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,QAAQ,IAAI,MAAM,IAAI,MAAM,IAAI,QAAQ,EAAE,EAAE;QAC5F,IAAI;QACJ,UAAU;QACV,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;IACH,KAAK,CAAC,UAAU,CAAC,WAAW,CAC1B,IAAI,EACJ,eAAe,KAAK,MAAM;QACxB,CAAC,CAAC,KAAK,CAAC,SAAS;QACjB,CAAC,CAAC,eAAe,KAAK,cAAc;YACpC,CAAC,CAAC,KAAK,CAAC,cAAc;YACtB,CAAC,CAAC,eAAe,KAAK,WAAW;gBACjC,CAAC,CAAC,KAAK,CAAC,cAAc;gBACtB,CAAC,CAAC,eAAe,KAAK,cAAc;oBACpC,CAAC,CAAC,KAAK,CAAC,iBAAiB;oBACzB,CAAC,CAAC,eAAe,KAAK,gBAAgB;wBACtC,CAAC,CAAC,KAAK,CAAC,mBAAmB;wBAC3B,CAAC,CAAC,eAAe,KAAK,aAAa;4BACnC,CAAC,CAAC,KAAK,CAAC,gBAAgB;4BACxB,CAAC,CAAC,eAAe,KAAK,kBAAkB;gCACxC,CAAC,CAAC,KAAK,CAAC,qBAAqB;gCAC7B,CAAC,CAAC,eAAe,KAAK,cAAc;oCACpC,CAAC,CAAC,KAAK,CAAC,iBAAiB;oCACzB,CAAC,CAAC,KAAK,CAAC,sBAAsB,CACjC,CAAC;IACF,mBAAmB;QACjB,KAAK,CAAC,UAAU,CAAC,WAAW,CAC1B,UAAU,EACV,eAAe,KAAK,MAAM;YACxB,CAAC,CAAC,KAAK,CAAC,SAAS;YACjB,CAAC,CAAC,eAAe,KAAK,cAAc;gBACpC,CAAC,CAAC,KAAK,CAAC,cAAc;gBACtB,CAAC,CAAC,eAAe,KAAK,WAAW;oBACjC,CAAC,CAAC,KAAK,CAAC,cAAc;oBACtB,CAAC,CAAC,eAAe,KAAK,cAAc;wBACpC,CAAC,CAAC,KAAK,CAAC,iBAAiB;wBACzB,CAAC,CAAC,eAAe,KAAK,gBAAgB;4BACtC,CAAC,CAAC,KAAK,CAAC,mBAAmB;4BAC3B,CAAC,CAAC,eAAe,KAAK,aAAa;gCACnC,CAAC,CAAC,KAAK,CAAC,gBAAgB;gCACxB,CAAC,CAAC,eAAe,KAAK,kBAAkB;oCACxC,CAAC,CAAC,KAAK,CAAC,qBAAqB;oCAC7B,CAAC,CAAC,eAAe,KAAK,cAAc;wCACpC,CAAC,CAAC,KAAK,CAAC,iBAAiB;wCACzB,CAAC,CAAC,KAAK,CAAC,sBAAsB,CACjC,CAAC;AACN,CAAC;AAGD,SAAS,eAAe,CACtB,eAAgC,EAChC,YAAmE,EACnE,SAAiB,EACjB,SAAiB,EACjB,OAAe,EACf,OAAe,EACf,KAAmB;IAEnB,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IACD,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;QACnD,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAE7D,MAAM,aAAa,GAAG,CAAC,CAAC;IACxB,MAAM,aAAa,GAAG,CAAC,CAAC;IACxB,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;IAEvC,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,IAAI,SAAS,KAAK,aAAa,IAAI,SAAS,KAAK,aAAa,EAAE;QAE9D,MAAM,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;KAChB;SAAM,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,WAAW,EAAE;QAE7D,MAAM,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;KAChB;SAAM,IAAI,SAAS,KAAK,aAAa,IAAI,OAAO,KAAK,WAAW,EAAE;QAEjE,MAAM,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;KAChB;SAAM,IAAI,OAAO,KAAK,WAAW,IAAI,SAAS,KAAK,aAAa,EAAE;QAEjE,MAAM,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;KAChB;IAED,IAAI,OAAO,EAAE;QACX,OAAO,MAAM,CAAC;KACf;IAED,OAAO,SAAS,CAAC;AACnB,CAAC","file":"create-select-border.js","sourcesContent":["import { createRect } from './../../vrender';\nimport type { CellSubLocation } from '../../ts-types';\nimport type { Scenegraph } from '../scenegraph';\nimport { table } from 'console';\nimport type { BaseTableAPI } from '../../ts-types/base-table';\n\nexport function createCellSelectBorder(\n scene: Scenegraph,\n start_Col: number,\n start_Row: number,\n end_Col: number,\n end_Row: number,\n selectRangeType: CellSubLocation,\n selectId: string, //整体区域${endRow}-${startCol}${startRow}${endCol}${endRow}作为其编号\n strokes: boolean[]\n // isHasFillHandleRect: boolean\n) {\n let isHasFillHandleRect = !!scene.table.options.excelOptions?.fillHandle;\n if (scene.table.stateManager.select.ranges?.length > 1) {\n isHasFillHandleRect = false;\n scene.removeFillHandleFromSelectComponents();\n } else if (scene.table.stateManager.select.ranges?.length === 1) {\n const maxRow = Math.max(\n scene.table.stateManager.select.ranges[0].start.row,\n scene.table.stateManager.select.ranges[0].end.row\n );\n const maxCol = Math.max(\n scene.table.stateManager.select.ranges[0].start.col,\n scene.table.stateManager.select.ranges[0].end.col\n );\n if (scene.table.isHeader(maxCol, maxRow)) {\n isHasFillHandleRect = false;\n }\n }\n if (Array.isArray(strokes) && (strokes[1] === false || strokes[2] === false)) {\n isHasFillHandleRect = false;\n }\n const startCol = Math.min(start_Col, end_Col);\n const startRow = Math.min(start_Row, end_Row);\n const endCol = Math.max(start_Col, end_Col);\n const endRow = Math.max(start_Row, end_Row);\n const firstCellBound = scene.highPerformanceGetCell(startCol, startRow).globalAABBBounds;\n const lastCellBound = scene.highPerformanceGetCell(endCol, endRow).globalAABBBounds;\n const theme = scene.table.theme;\n // 框选外边框\n const bodyClickBorderColor = theme.selectionStyle?.cellBorderColor;\n const bodyClickLineWidth = theme.selectionStyle?.cellBorderLineWidth;\n const rect = createRect({\n pickable: false,\n fill:\n theme.selectionStyle?.selectionFillMode === 'replace'\n ? false\n : (theme.selectionStyle?.cellBgColor as any) ?? 'rgba(0, 0, 255,0.1)',\n\n lineWidth: bodyClickLineWidth as number,\n // stroke: bodyClickBorderColor as string,\n stroke: strokes.map(stroke => {\n if (stroke) {\n return bodyClickBorderColor as string;\n }\n return false;\n }),\n x: firstCellBound.x1 - scene.tableGroup.attribute.x, // 坐标xy及宽高width height 不需要这里计算具体值 update-select-border文件中updateComponent方法中有逻辑 且该方法调用时间是render\n y: firstCellBound.y1 - scene.tableGroup.attribute.y,\n width: 0,\n height: 0,\n visible: true,\n cornerRadius: getCornerRadius(\n selectRangeType,\n scene.table.theme.frameStyle?.cornerRadius,\n start_Col,\n start_Row,\n end_Col,\n end_Row,\n scene.table\n )\n });\n // 创建右下角小方块\n let fillhandle;\n if (isHasFillHandleRect) {\n fillhandle = createRect({\n pickable: false,\n fill: bodyClickBorderColor as string,\n // lineWidth: bodyClickLineWidth as number,\n stroke: bodyClickBorderColor as string, // 右下角小方块边框颜色\n x: lastCellBound.x2 - 3, // 调整小方块位置\n y: lastCellBound.y2 - 3, // 调整小方块位置\n width: 6,\n height: 6,\n\n visible: true\n });\n }\n scene.lastSelectId = selectId;\n scene.selectingRangeComponents.set(`${startCol}-${startRow}-${endCol}-${endRow}-${selectId}`, {\n rect,\n fillhandle,\n role: selectRangeType\n });\n scene.tableGroup.insertAfter(\n rect,\n selectRangeType === 'body'\n ? scene.bodyGroup\n : selectRangeType === 'columnHeader'\n ? scene.colHeaderGroup\n : selectRangeType === 'rowHeader'\n ? scene.rowHeaderGroup\n : selectRangeType === 'cornerHeader'\n ? scene.cornerHeaderGroup\n : selectRangeType === 'rightTopCorner'\n ? scene.rightTopCornerGroup\n : selectRangeType === 'rightFrozen'\n ? scene.rightFrozenGroup\n : selectRangeType === 'leftBottomCorner'\n ? scene.leftBottomCornerGroup\n : selectRangeType === 'bottomFrozen'\n ? scene.bottomFrozenGroup\n : scene.rightBottomCornerGroup\n );\n isHasFillHandleRect &&\n scene.tableGroup.insertAfter(\n fillhandle,\n selectRangeType === 'body'\n ? scene.bodyGroup\n : selectRangeType === 'columnHeader'\n ? scene.colHeaderGroup\n : selectRangeType === 'rowHeader'\n ? scene.rowHeaderGroup\n : selectRangeType === 'cornerHeader'\n ? scene.cornerHeaderGroup\n : selectRangeType === 'rightTopCorner'\n ? scene.rightTopCornerGroup\n : selectRangeType === 'rightFrozen'\n ? scene.rightFrozenGroup\n : selectRangeType === 'leftBottomCorner'\n ? scene.leftBottomCornerGroup\n : selectRangeType === 'bottomFrozen'\n ? scene.bottomFrozenGroup\n : scene.rightBottomCornerGroup\n );\n}\n\n// set corner radius in select rect which covers the corner of the table\nfunction getCornerRadius(\n selectRangeType: CellSubLocation,\n cornerRadius: undefined | number | [number, number, number, number],\n start_Col: number,\n start_Row: number,\n end_Col: number,\n end_Row: number,\n table: BaseTableAPI\n) {\n if (!cornerRadius) {\n return undefined;\n }\n const cornerRadiusArray = Array.isArray(cornerRadius)\n ? cornerRadius\n : [cornerRadius, cornerRadius, cornerRadius, cornerRadius]; // [left top, right top, right bottom, left bottom]\n\n const tableStartCol = 0;\n const tableStartRow = 0;\n const tableEndCol = table.colCount - 1;\n const tableEndRow = table.rowCount - 1;\n\n const result = [0, 0, 0, 0];\n let changed = false;\n\n if (start_Col === tableStartCol && start_Row === tableStartRow) {\n // select rect covers the left top corner of the table\n result[0] = cornerRadiusArray[0];\n changed = true;\n } else if (end_Col === tableEndCol && end_Row === tableEndRow) {\n // select rect covers the right bottom corner of the table\n result[2] = cornerRadiusArray[2];\n changed = true;\n } else if (start_Col === tableStartCol && end_Row === tableEndRow) {\n // select rect covers the left bottom corner of the table\n result[3] = cornerRadiusArray[3];\n changed = true;\n } else if (end_Col === tableEndCol && start_Row === tableStartRow) {\n // select rect covers the right top corner of the table\n result[1] = cornerRadiusArray[1];\n changed = true;\n }\n\n if (changed) {\n return result;\n }\n\n return undefined;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/scenegraph/select/create-select-border.ts"],"names":[],"mappings":"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","file":"create-select-border.js","sourcesContent":["import { createRect } from './../../vrender';\nimport type { CellSubLocation } from '../../ts-types';\nimport type { Scenegraph } from '../scenegraph';\nimport { table } from 'console';\n\nexport function createCellSelectBorder(\n scene: Scenegraph,\n start_Col: number,\n start_Row: number,\n end_Col: number,\n end_Row: number,\n selectRangeType: CellSubLocation,\n selectId: string, //整体区域${endRow}-${startCol}${startRow}${endCol}${endRow}作为其编号\n strokes: boolean[]\n // isHasFillHandleRect: boolean\n) {\n let isHasFillHandleRect = !!scene.table.options.excelOptions?.fillHandle;\n if (scene.table.stateManager.select.ranges?.length > 1) {\n isHasFillHandleRect = false;\n scene.removeFillHandleFromSelectComponents();\n } else if (scene.table.stateManager.select.ranges?.length === 1) {\n const maxRow = Math.max(\n scene.table.stateManager.select.ranges[0].start.row,\n scene.table.stateManager.select.ranges[0].end.row\n );\n const maxCol = Math.max(\n scene.table.stateManager.select.ranges[0].start.col,\n scene.table.stateManager.select.ranges[0].end.col\n );\n if (scene.table.isHeader(maxCol, maxRow)) {\n isHasFillHandleRect = false;\n }\n }\n if (Array.isArray(strokes) && (strokes[1] === false || strokes[2] === false)) {\n isHasFillHandleRect = false;\n }\n const startCol = Math.min(start_Col, end_Col);\n const startRow = Math.min(start_Row, end_Row);\n const endCol = Math.max(start_Col, end_Col);\n const endRow = Math.max(start_Row, end_Row);\n const firstCellBound = scene.highPerformanceGetCell(startCol, startRow).globalAABBBounds;\n const lastCellBound = scene.highPerformanceGetCell(endCol, endRow).globalAABBBounds;\n const theme = scene.table.theme;\n // 框选外边框\n const bodyClickBorderColor = theme.selectionStyle?.cellBorderColor;\n const bodyClickLineWidth = theme.selectionStyle?.cellBorderLineWidth;\n const rect = createRect({\n pickable: false,\n fill:\n theme.selectionStyle?.selectionFillMode === 'replace'\n ? false\n : (theme.selectionStyle?.cellBgColor as any) ?? 'rgba(0, 0, 255,0.1)',\n\n lineWidth: bodyClickLineWidth as number,\n // stroke: bodyClickBorderColor as string,\n stroke: strokes.map(stroke => {\n if (stroke) {\n return bodyClickBorderColor as string;\n }\n return false;\n }),\n x: firstCellBound.x1 - scene.tableGroup.attribute.x, // 坐标xy及宽高width height 不需要这里计算具体值 update-select-border文件中updateComponent方法中有逻辑 且该方法调用时间是render\n y: firstCellBound.y1 - scene.tableGroup.attribute.y,\n width: 0,\n height: 0,\n visible: true\n });\n // 创建右下角小方块\n let fillhandle;\n if (isHasFillHandleRect) {\n fillhandle = createRect({\n pickable: false,\n fill: bodyClickBorderColor as string,\n // lineWidth: bodyClickLineWidth as number,\n stroke: bodyClickBorderColor as string, // 右下角小方块边框颜色\n x: lastCellBound.x2 - 3, // 调整小方块位置\n y: lastCellBound.y2 - 3, // 调整小方块位置\n width: 6,\n height: 6,\n\n visible: true\n });\n }\n scene.lastSelectId = selectId;\n scene.selectingRangeComponents.set(`${startCol}-${startRow}-${endCol}-${endRow}-${selectId}`, {\n rect,\n fillhandle,\n role: selectRangeType\n });\n scene.tableGroup.insertAfter(\n rect,\n selectRangeType === 'body'\n ? scene.bodyGroup\n : selectRangeType === 'columnHeader'\n ? scene.colHeaderGroup\n : selectRangeType === 'rowHeader'\n ? scene.rowHeaderGroup\n : selectRangeType === 'cornerHeader'\n ? scene.cornerHeaderGroup\n : selectRangeType === 'rightTopCorner'\n ? scene.rightTopCornerGroup\n : selectRangeType === 'rightFrozen'\n ? scene.rightFrozenGroup\n : selectRangeType === 'leftBottomCorner'\n ? scene.leftBottomCornerGroup\n : selectRangeType === 'bottomFrozen'\n ? scene.bottomFrozenGroup\n : scene.rightBottomCornerGroup\n );\n isHasFillHandleRect &&\n scene.tableGroup.insertAfter(\n fillhandle,\n selectRangeType === 'body'\n ? scene.bodyGroup\n : selectRangeType === 'columnHeader'\n ? scene.colHeaderGroup\n : selectRangeType === 'rowHeader'\n ? scene.rowHeaderGroup\n : selectRangeType === 'cornerHeader'\n ? scene.cornerHeaderGroup\n : selectRangeType === 'rightTopCorner'\n ? scene.rightTopCornerGroup\n : selectRangeType === 'rightFrozen'\n ? scene.rightFrozenGroup\n : selectRangeType === 'leftBottomCorner'\n ? scene.leftBottomCornerGroup\n : selectRangeType === 'bottomFrozen'\n ? scene.bottomFrozenGroup\n : scene.rightBottomCornerGroup\n );\n}\n"]}
|
package/es/state/state.js
CHANGED
|
@@ -429,114 +429,82 @@ export class StateManager {
|
|
|
429
429
|
updateVerticalScrollBar(yRatio) {
|
|
430
430
|
var _a, _b;
|
|
431
431
|
const totalHeight = this.table.getAllRowsHeight(), oldVerticalBarPos = this.scroll.verticalBarPos;
|
|
432
|
-
|
|
433
|
-
isValid(verticalBarPos) && !isNaN(verticalBarPos) || (verticalBarPos = 0)
|
|
434
|
-
|
|
435
|
-
|
|
432
|
+
this.scroll.verticalBarPos = Math.ceil(yRatio * (totalHeight - this.table.scenegraph.height)),
|
|
433
|
+
isValid(this.scroll.verticalBarPos) && !isNaN(this.scroll.verticalBarPos) || (this.scroll.verticalBarPos = 0),
|
|
434
|
+
this.table.scenegraph.setY(-this.scroll.verticalBarPos, 1 === yRatio), this.scroll.verticalBarPos -= this.table.scenegraph.proxy.deltaY,
|
|
435
|
+
this.table.scenegraph.proxy.deltaY = 0, this.updateHoverPos(-1, -1), this.table.fireListeners(TABLE_EVENT_TYPE.SCROLL, {
|
|
436
436
|
event: void 0,
|
|
437
|
-
scrollTop:
|
|
437
|
+
scrollTop: this.scroll.verticalBarPos,
|
|
438
438
|
scrollLeft: this.scroll.horizontalBarPos,
|
|
439
439
|
scrollHeight: null === (_a = this.table.theme.scrollStyle) || void 0 === _a ? void 0 : _a.width,
|
|
440
440
|
scrollWidth: null === (_b = this.table.theme.scrollStyle) || void 0 === _b ? void 0 : _b.width,
|
|
441
441
|
viewHeight: this.table.tableNoFrameHeight,
|
|
442
442
|
viewWidth: this.table.tableNoFrameWidth,
|
|
443
443
|
scrollDirection: "vertical",
|
|
444
|
-
scrollRatioY: yRatio
|
|
445
|
-
|
|
446
|
-
}).some((value => !1 === value))) {
|
|
447
|
-
const yRatio = this.scroll.verticalBarPos / (totalHeight - this.table.scenegraph.height);
|
|
448
|
-
this.table.scenegraph.component.updateVerticalScrollBarPos(yRatio);
|
|
449
|
-
} else this.scroll.verticalBarPos = verticalBarPos, this.table.scenegraph.setY(-this.scroll.verticalBarPos, 1 === yRatio),
|
|
450
|
-
this.scroll.verticalBarPos -= this.table.scenegraph.proxy.deltaY, this.table.scenegraph.proxy.deltaY = 0,
|
|
451
|
-
this.updateHoverPos(-1, -1), oldVerticalBarPos !== this.scroll.verticalBarPos && this.checkVerticalScrollBarEnd();
|
|
444
|
+
scrollRatioY: yRatio
|
|
445
|
+
}), oldVerticalBarPos !== this.scroll.verticalBarPos && this.checkVerticalScrollBarEnd();
|
|
452
446
|
}
|
|
453
447
|
updateHorizontalScrollBar(xRatio) {
|
|
454
448
|
var _a, _b;
|
|
455
449
|
const totalWidth = this.table.getAllColsWidth(), oldHorizontalBarPos = this.scroll.horizontalBarPos;
|
|
456
|
-
|
|
457
|
-
isValid(horizontalBarPos) && !isNaN(horizontalBarPos) || (horizontalBarPos = 0)
|
|
458
|
-
|
|
459
|
-
|
|
450
|
+
this.scroll.horizontalBarPos = Math.ceil(xRatio * (totalWidth - this.table.scenegraph.width)),
|
|
451
|
+
isValid(this.scroll.horizontalBarPos) && !isNaN(this.scroll.horizontalBarPos) || (this.scroll.horizontalBarPos = 0),
|
|
452
|
+
this.table.scenegraph.setX(-this.scroll.horizontalBarPos, 1 === xRatio), this.scroll.horizontalBarPos -= this.table.scenegraph.proxy.deltaX,
|
|
453
|
+
this.table.scenegraph.proxy.deltaX = 0, this.updateHoverPos(-1, -1), this.table.fireListeners(TABLE_EVENT_TYPE.SCROLL, {
|
|
460
454
|
event: void 0,
|
|
461
455
|
scrollTop: this.scroll.verticalBarPos,
|
|
462
|
-
scrollLeft:
|
|
456
|
+
scrollLeft: this.scroll.horizontalBarPos,
|
|
463
457
|
scrollHeight: null === (_a = this.table.theme.scrollStyle) || void 0 === _a ? void 0 : _a.width,
|
|
464
458
|
scrollWidth: null === (_b = this.table.theme.scrollStyle) || void 0 === _b ? void 0 : _b.width,
|
|
465
459
|
viewHeight: this.table.tableNoFrameHeight,
|
|
466
460
|
viewWidth: this.table.tableNoFrameWidth,
|
|
467
461
|
scrollDirection: "horizontal",
|
|
468
|
-
scrollRatioX: xRatio
|
|
469
|
-
|
|
470
|
-
}).some((value => !1 === value))) {
|
|
471
|
-
const xRatio = this.scroll.horizontalBarPos / (totalWidth - this.table.scenegraph.width);
|
|
472
|
-
this.table.scenegraph.component.updateHorizontalScrollBarPos(xRatio);
|
|
473
|
-
} else this.scroll.horizontalBarPos = horizontalBarPos, this.table.scenegraph.setX(-this.scroll.horizontalBarPos, 1 === xRatio),
|
|
474
|
-
this.scroll.horizontalBarPos -= this.table.scenegraph.proxy.deltaX, this.table.scenegraph.proxy.deltaX = 0,
|
|
475
|
-
this.updateHoverPos(-1, -1), oldHorizontalBarPos !== this.scroll.horizontalBarPos && this.checkHorizontalScrollBarEnd();
|
|
462
|
+
scrollRatioX: xRatio
|
|
463
|
+
}), oldHorizontalBarPos !== this.scroll.horizontalBarPos && this.checkHorizontalScrollBarEnd();
|
|
476
464
|
}
|
|
477
465
|
setScrollTop(top, event, triggerEvent = !0) {
|
|
478
|
-
var _a, _b, _c
|
|
466
|
+
var _a, _b, _c;
|
|
479
467
|
const totalHeight = this.table.getAllRowsHeight(), sizeTolerance = (null === (_a = this.table.options.customConfig) || void 0 === _a ? void 0 : _a._disableColumnAndRowSizeRound) ? 1 : 0;
|
|
480
468
|
top = Math.max(0, Math.min(top, totalHeight - this.table.scenegraph.height - sizeTolerance)),
|
|
481
|
-
top = Math.ceil(top);
|
|
482
|
-
const oldVerticalBarPos = this.scroll.verticalBarPos
|
|
483
|
-
if ((oldVerticalBarPos !== top || !0 === (null === (_c = null === (_b = this.table.options) || void 0 === _b ? void 0 : _b.customConfig) || void 0 === _c ? void 0 : _c.scrollEventAlwaysTrigger)) && triggerEvent) {
|
|
484
|
-
let verticalBarPos = top;
|
|
485
|
-
isValid(verticalBarPos) && !isNaN(verticalBarPos) || (verticalBarPos = 0);
|
|
486
|
-
const dy = verticalBarPos - oldVerticalBarPos;
|
|
487
|
-
if (this.table.fireListeners(TABLE_EVENT_TYPE.SCROLL, {
|
|
488
|
-
event: null == event ? void 0 : event.nativeEvent,
|
|
489
|
-
scrollTop: verticalBarPos,
|
|
490
|
-
scrollLeft: this.scroll.horizontalBarPos,
|
|
491
|
-
scrollHeight: null === (_d = this.table.theme.scrollStyle) || void 0 === _d ? void 0 : _d.width,
|
|
492
|
-
scrollWidth: null === (_e = this.table.theme.scrollStyle) || void 0 === _e ? void 0 : _e.width,
|
|
493
|
-
viewHeight: this.table.tableNoFrameHeight,
|
|
494
|
-
viewWidth: this.table.tableNoFrameWidth,
|
|
495
|
-
scrollDirection: "vertical",
|
|
496
|
-
scrollRatioY: yRatio,
|
|
497
|
-
dy: dy
|
|
498
|
-
}).some((value => !1 === value))) {
|
|
499
|
-
const yRatio = this.scroll.verticalBarPos / (totalHeight - this.table.scenegraph.height);
|
|
500
|
-
return void this.table.scenegraph.component.updateVerticalScrollBarPos(yRatio);
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
(top !== this.scroll.verticalBarPos || this.table.isPivotChart()) && this.updateHoverPos(-1, -1),
|
|
469
|
+
((top = Math.ceil(top)) !== this.scroll.verticalBarPos || this.table.isPivotChart()) && this.updateHoverPos(-1, -1);
|
|
470
|
+
const oldVerticalBarPos = this.scroll.verticalBarPos;
|
|
504
471
|
this.scroll.verticalBarPos = top, isValid(this.scroll.verticalBarPos) && !isNaN(this.scroll.verticalBarPos) || (this.scroll.verticalBarPos = 0),
|
|
505
|
-
this.table.scenegraph.setY(-top)
|
|
506
|
-
|
|
472
|
+
this.table.scenegraph.setY(-top);
|
|
473
|
+
const yRatio = top / (totalHeight - this.table.scenegraph.height);
|
|
474
|
+
this.table.scenegraph.component.updateVerticalScrollBarPos(yRatio), oldVerticalBarPos !== top && triggerEvent && (this.table.fireListeners(TABLE_EVENT_TYPE.SCROLL, {
|
|
475
|
+
event: null == event ? void 0 : event.nativeEvent,
|
|
476
|
+
scrollTop: this.scroll.verticalBarPos,
|
|
477
|
+
scrollLeft: this.scroll.horizontalBarPos,
|
|
478
|
+
scrollHeight: null === (_b = this.table.theme.scrollStyle) || void 0 === _b ? void 0 : _b.width,
|
|
479
|
+
scrollWidth: null === (_c = this.table.theme.scrollStyle) || void 0 === _c ? void 0 : _c.width,
|
|
480
|
+
viewHeight: this.table.tableNoFrameHeight,
|
|
481
|
+
viewWidth: this.table.tableNoFrameWidth,
|
|
482
|
+
scrollDirection: "vertical",
|
|
483
|
+
scrollRatioY: yRatio
|
|
484
|
+
}), this.checkVerticalScrollBarEnd());
|
|
507
485
|
}
|
|
508
486
|
setScrollLeft(left, event, triggerEvent = !0) {
|
|
509
|
-
var _a, _b, _c
|
|
487
|
+
var _a, _b, _c;
|
|
510
488
|
this.table.scrollLeft;
|
|
511
489
|
const totalWidth = this.table.getAllColsWidth(), sizeTolerance = (this.table.getFrozenColsWidth(),
|
|
512
490
|
(null === (_a = this.table.options.customConfig) || void 0 === _a ? void 0 : _a._disableColumnAndRowSizeRound) ? 1 : 0);
|
|
513
491
|
left = Math.max(0, Math.min(left, totalWidth - this.table.scenegraph.width - sizeTolerance)),
|
|
514
|
-
left = Math.ceil(left);
|
|
515
|
-
const oldHorizontalBarPos = this.scroll.horizontalBarPos
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
dx: dx
|
|
531
|
-
}).some((value => !1 === value))) {
|
|
532
|
-
const xRatio = this.scroll.horizontalBarPos / (totalWidth - this.table.scenegraph.width);
|
|
533
|
-
return void this.table.scenegraph.component.updateHorizontalScrollBarPos(xRatio);
|
|
534
|
-
}
|
|
535
|
-
}
|
|
536
|
-
left !== this.scroll.horizontalBarPos && this.updateHoverPos(-1, -1), this.scroll.horizontalBarPos = left,
|
|
537
|
-
isValid(this.scroll.horizontalBarPos) && !isNaN(this.scroll.horizontalBarPos) || (this.scroll.horizontalBarPos = 0),
|
|
538
|
-
this.table.scenegraph.setX(-left), this.table.scenegraph.component.updateHorizontalScrollBarPos(xRatio),
|
|
539
|
-
oldHorizontalBarPos !== left && triggerEvent && this.checkHorizontalScrollBarEnd();
|
|
492
|
+
(left = Math.ceil(left)) !== this.scroll.horizontalBarPos && this.updateHoverPos(-1, -1);
|
|
493
|
+
const oldHorizontalBarPos = this.scroll.horizontalBarPos;
|
|
494
|
+
this.scroll.horizontalBarPos = left, isValid(this.scroll.horizontalBarPos) && !isNaN(this.scroll.horizontalBarPos) || (this.scroll.horizontalBarPos = 0),
|
|
495
|
+
this.table.scenegraph.setX(-left);
|
|
496
|
+
const xRatio = left / (totalWidth - this.table.scenegraph.width);
|
|
497
|
+
this.table.scenegraph.component.updateHorizontalScrollBarPos(xRatio), oldHorizontalBarPos !== left && triggerEvent && (this.table.fireListeners(TABLE_EVENT_TYPE.SCROLL, {
|
|
498
|
+
event: null == event ? void 0 : event.nativeEvent,
|
|
499
|
+
scrollTop: this.scroll.verticalBarPos,
|
|
500
|
+
scrollLeft: this.scroll.horizontalBarPos,
|
|
501
|
+
scrollHeight: null === (_b = this.table.theme.scrollStyle) || void 0 === _b ? void 0 : _b.width,
|
|
502
|
+
scrollWidth: null === (_c = this.table.theme.scrollStyle) || void 0 === _c ? void 0 : _c.width,
|
|
503
|
+
viewHeight: this.table.tableNoFrameHeight,
|
|
504
|
+
viewWidth: this.table.tableNoFrameWidth,
|
|
505
|
+
scrollDirection: "horizontal",
|
|
506
|
+
scrollRatioX: xRatio
|
|
507
|
+
}), this.checkHorizontalScrollBarEnd());
|
|
540
508
|
}
|
|
541
509
|
hideVerticalScrollBar() {
|
|
542
510
|
this.table.scenegraph.component.hideVerticalScrollBar();
|