vxe-gantt 3.9.0-beta.0 → 3.9.0-beta.1
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/es/gantt/src/gantt-chart.js +4 -4
- package/es/gantt/src/gantt-view.js +50 -29
- package/es/gantt/src/gantt.js +9 -6
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/gantt/src/gantt-chart.js +4 -4
- package/lib/gantt/src/gantt-chart.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +50 -28
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +7 -7
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/index.umd.js +63 -41
- package/lib/index.umd.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +2 -2
- package/packages/gantt/src/gantt-chart.ts +4 -4
- package/packages/gantt/src/gantt-view.ts +52 -29
- package/packages/gantt/src/gantt.ts +11 -7
|
@@ -252,8 +252,8 @@ export default defineVxeComponent({
|
|
|
252
252
|
},
|
|
253
253
|
mousedown(evnt) {
|
|
254
254
|
evnt.stopPropagation();
|
|
255
|
-
if ($xeGantt.
|
|
256
|
-
$xeGantt.
|
|
255
|
+
if ($xeGantt.handleTaskBarModnEvent) {
|
|
256
|
+
$xeGantt.handleTaskBarModnEvent(evnt, childCtParams);
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
259
|
}
|
|
@@ -384,8 +384,8 @@ export default defineVxeComponent({
|
|
|
384
384
|
$xeGantt.handleTaskBarDblclickEvent(evnt, barParams);
|
|
385
385
|
},
|
|
386
386
|
mousedown(evnt) {
|
|
387
|
-
if ($xeGantt.
|
|
388
|
-
$xeGantt.
|
|
387
|
+
if ($xeGantt.handleTaskBarModnEvent) {
|
|
388
|
+
$xeGantt.handleTaskBarModnEvent(evnt, barParams);
|
|
389
389
|
}
|
|
390
390
|
}
|
|
391
391
|
}
|
|
@@ -1680,7 +1680,13 @@ export default defineVxeComponent({
|
|
|
1680
1680
|
reScrollFlag: 0
|
|
1681
1681
|
};
|
|
1682
1682
|
},
|
|
1683
|
-
computed: Object.assign(Object.assign({}, {}), {
|
|
1683
|
+
computed: Object.assign(Object.assign({}, {}), { computeGanttIsVScrollbar() {
|
|
1684
|
+
const $xeGanttView = this;
|
|
1685
|
+
const $xeGantt = $xeGanttView.$xeGantt;
|
|
1686
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
1687
|
+
return isVScrollbar;
|
|
1688
|
+
},
|
|
1689
|
+
computeScrollbarXOpts() {
|
|
1684
1690
|
const $xeGanttView = this;
|
|
1685
1691
|
const $xeGantt = $xeGanttView.$xeGantt;
|
|
1686
1692
|
const scrollbarOpts = $xeGantt.computeScrollbarOpts;
|
|
@@ -2241,6 +2247,32 @@ export default defineVxeComponent({
|
|
|
2241
2247
|
handleLazyRecalculate($xeGanttView);
|
|
2242
2248
|
},
|
|
2243
2249
|
// 滚动条
|
|
2250
|
+
bindScrollbarResize() {
|
|
2251
|
+
const $xeGanttView = this;
|
|
2252
|
+
const internalData = $xeGanttView.internalData;
|
|
2253
|
+
const { elemStore, scrollObserver } = internalData;
|
|
2254
|
+
const isVScrollbar = $xeGanttView.$refs.computeIsVScrollbar;
|
|
2255
|
+
if (isVScrollbar) {
|
|
2256
|
+
if (!scrollObserver) {
|
|
2257
|
+
const el = $xeGanttView.$refs.refElem;
|
|
2258
|
+
const viewInnerXEl = getRefElem(elemStore['main-body-xSpace']);
|
|
2259
|
+
const viewInnerYEl = getRefElem(elemStore['main-body-xSpace']);
|
|
2260
|
+
const scrollObserver = globalResize.create(() => {
|
|
2261
|
+
$xeGanttView.reScrollFlag++;
|
|
2262
|
+
});
|
|
2263
|
+
if (el) {
|
|
2264
|
+
scrollObserver.observe(el);
|
|
2265
|
+
}
|
|
2266
|
+
if (viewInnerXEl) {
|
|
2267
|
+
scrollObserver.observe(viewInnerXEl);
|
|
2268
|
+
}
|
|
2269
|
+
if (viewInnerYEl) {
|
|
2270
|
+
scrollObserver.observe(viewInnerYEl);
|
|
2271
|
+
}
|
|
2272
|
+
internalData.scrollObserver = scrollObserver;
|
|
2273
|
+
}
|
|
2274
|
+
}
|
|
2275
|
+
},
|
|
2244
2276
|
updateThumbSize() {
|
|
2245
2277
|
const $xeGanttView = this;
|
|
2246
2278
|
const reactData = $xeGanttView.reactData;
|
|
@@ -2535,11 +2567,10 @@ export default defineVxeComponent({
|
|
|
2535
2567
|
const $xeGantt = $xeGanttView.$xeGantt;
|
|
2536
2568
|
const reactData = $xeGanttView.reactData;
|
|
2537
2569
|
const ganttReactData = $xeGantt.reactData;
|
|
2538
|
-
const ganttProps = $xeGantt;
|
|
2539
2570
|
const { showLeftView } = ganttReactData;
|
|
2540
|
-
const { useScrollbar } = ganttProps;
|
|
2541
2571
|
const { xThumbWidth, yThumbHeight } = reactData;
|
|
2542
2572
|
const scrollbarOpts = $xeGantt.computeScrollbarOpts;
|
|
2573
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2543
2574
|
const scrollXAutoHide = $xeGanttView.computeScrollXAutoHide;
|
|
2544
2575
|
const scrollYAutoHide = $xeGanttView.computeScrollYAutoHide;
|
|
2545
2576
|
const scrollXVisible = $xeGanttView.computeScrollXVisible;
|
|
@@ -2550,10 +2581,10 @@ export default defineVxeComponent({
|
|
|
2550
2581
|
return h('div', {
|
|
2551
2582
|
key: 'lvb',
|
|
2552
2583
|
class: ['vxe-gantt--layout-wrapper', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
2553
|
-
'is--virtual-scrollbar':
|
|
2554
|
-
'ov-padding':
|
|
2555
|
-
'ov-x--auto-hide':
|
|
2556
|
-
'ov-y--auto-hide':
|
|
2584
|
+
'is--virtual-scrollbar': isVScrollbar,
|
|
2585
|
+
'ov-padding': isVScrollbar && scrollbarOpts.padding,
|
|
2586
|
+
'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
|
|
2587
|
+
'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
|
|
2557
2588
|
'overflow-y': yThumbHeight,
|
|
2558
2589
|
'overflow-x': xThumbWidth
|
|
2559
2590
|
}]
|
|
@@ -2611,9 +2642,8 @@ export default defineVxeComponent({
|
|
|
2611
2642
|
const $xeGanttView = this;
|
|
2612
2643
|
const $xeGantt = $xeGanttView.$xeGantt;
|
|
2613
2644
|
const reactData = $xeGanttView.reactData;
|
|
2614
|
-
const ganttProps = $xeGantt;
|
|
2615
|
-
const { useScrollbar } = ganttProps;
|
|
2616
2645
|
const { overflowX, overflowY, scrollXLoad, scrollYLoad } = reactData;
|
|
2646
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2617
2647
|
const scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
2618
2648
|
return h('div', {
|
|
2619
2649
|
ref: 'refElem',
|
|
@@ -2626,7 +2656,7 @@ export default defineVxeComponent({
|
|
|
2626
2656
|
}, [
|
|
2627
2657
|
h('div', {
|
|
2628
2658
|
class: 'vxe-gantt-view--render-wrapper'
|
|
2629
|
-
},
|
|
2659
|
+
}, isVScrollbar
|
|
2630
2660
|
? [$xeGanttView.renderVirtualBody(h)]
|
|
2631
2661
|
: (scrollbarXToTop
|
|
2632
2662
|
? [
|
|
@@ -2649,6 +2679,15 @@ export default defineVxeComponent({
|
|
|
2649
2679
|
}
|
|
2650
2680
|
},
|
|
2651
2681
|
watch: {
|
|
2682
|
+
computeGanttIsVScrollbar() {
|
|
2683
|
+
const $xeGanttView = this;
|
|
2684
|
+
$xeGanttView.$nextTick(() => {
|
|
2685
|
+
$xeGanttView.bindScrollbarResize();
|
|
2686
|
+
$xeGanttView.$nextTick(() => {
|
|
2687
|
+
$xeGanttView.reScrollFlag++;
|
|
2688
|
+
});
|
|
2689
|
+
});
|
|
2690
|
+
},
|
|
2652
2691
|
computeScrollbarXToTop() {
|
|
2653
2692
|
const $xeGanttView = this;
|
|
2654
2693
|
$xeGanttView.reScrollFlag++;
|
|
@@ -2685,26 +2724,8 @@ export default defineVxeComponent({
|
|
|
2685
2724
|
},
|
|
2686
2725
|
mounted() {
|
|
2687
2726
|
const $xeGanttView = this;
|
|
2688
|
-
const $xeGantt = $xeGanttView.$xeGantt;
|
|
2689
|
-
const internalData = $xeGanttView.internalData;
|
|
2690
2727
|
$xeGanttView.$nextTick(() => {
|
|
2691
|
-
|
|
2692
|
-
const { useScrollbar } = ganttProps;
|
|
2693
|
-
const { elemStore } = internalData;
|
|
2694
|
-
const el = $xeGanttView.$refs.refElem;
|
|
2695
|
-
if (useScrollbar) {
|
|
2696
|
-
const viewInnerEl = getRefElem(elemStore['main-body-table']);
|
|
2697
|
-
const scrollObserver = globalResize.create(() => {
|
|
2698
|
-
$xeGanttView.reScrollFlag++;
|
|
2699
|
-
});
|
|
2700
|
-
if (el) {
|
|
2701
|
-
scrollObserver.observe(el);
|
|
2702
|
-
}
|
|
2703
|
-
if (viewInnerEl) {
|
|
2704
|
-
scrollObserver.observe(viewInnerEl);
|
|
2705
|
-
}
|
|
2706
|
-
internalData.scrollObserver = scrollObserver;
|
|
2707
|
-
}
|
|
2728
|
+
$xeGanttView.bindScrollbarResize();
|
|
2708
2729
|
});
|
|
2709
2730
|
globalEvents.on($xeGanttView, 'resize', $xeGanttView.handleGlobalResizeEvent);
|
|
2710
2731
|
},
|
package/es/gantt/src/gantt.js
CHANGED
|
@@ -136,7 +136,8 @@ function createReactData() {
|
|
|
136
136
|
export default {
|
|
137
137
|
name: 'VxeGantt',
|
|
138
138
|
mixins: [
|
|
139
|
-
globalMixins.sizeMixin
|
|
139
|
+
globalMixins.sizeMixin,
|
|
140
|
+
globalMixins.vScrollbarMixin
|
|
140
141
|
],
|
|
141
142
|
props: Object.assign(Object.assign({}, tableProps), { columns: Array, pagerConfig: Object, proxyConfig: Object, toolbarConfig: Object, formConfig: Object, zoomConfig: Object, links: Array, layouts: Array, taskConfig: Object, taskViewScaleConfig: Object, taskNowLineConfig: Object, taskViewConfig: Object, taskLinkConfig: Object, taskBarConfig: Object, taskBarMilestoneConfig: Object, taskCriticalPathConfig: Object, taskBarSubviewConfig: Object, taskBarTooltipConfig: Object, taskSplitConfig: Object, taskBarResizeConfig: Object, taskBarResizeTooltipConfig: Object, taskBarMoveConfig: Object, taskBarMoveTooltipConfig: Object, size: {
|
|
142
143
|
type: String,
|
|
@@ -407,8 +408,9 @@ export default {
|
|
|
407
408
|
const $xeGantt = this;
|
|
408
409
|
const props = $xeGantt;
|
|
409
410
|
const reactData = $xeGantt.reactData;
|
|
410
|
-
const { height, maxHeight,
|
|
411
|
+
const { height, maxHeight, taskBarSubviewConfig } = props;
|
|
411
412
|
const { isZMax, tZindex, overflowY, scrollbarWidth } = reactData;
|
|
413
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
412
414
|
const taskViewOpts = $xeGantt.computeTaskViewOpts;
|
|
413
415
|
const { viewStyle, tableStyle } = taskViewOpts;
|
|
414
416
|
const taskBarOpts = $xeGantt.computeTaskBarOpts;
|
|
@@ -421,7 +423,7 @@ export default {
|
|
|
421
423
|
const barWidth = $xeGantt.computeScrollYWidth;
|
|
422
424
|
const barHeight = $xeGantt.computeScrollXHeight;
|
|
423
425
|
const stys = {
|
|
424
|
-
'--vxe-ui-gantt-scrollbar-width': (overflowY ? (
|
|
426
|
+
'--vxe-ui-gantt-scrollbar-width': (overflowY ? (isVScrollbar ? 'var(--vxe-ui-scrollbar-y-width)' : (scrollbarWidth + 'px')) : '')
|
|
425
427
|
};
|
|
426
428
|
if (cpLineColor) {
|
|
427
429
|
stys['--vxe-ui-gantt-view-bar-critical-path-line-color'] = cpLineColor;
|
|
@@ -2649,10 +2651,9 @@ export default {
|
|
|
2649
2651
|
},
|
|
2650
2652
|
renderChildLayout(h, layoutKeys) {
|
|
2651
2653
|
const $xeGantt = this;
|
|
2652
|
-
const props = $xeGantt;
|
|
2653
2654
|
const reactData = $xeGantt.reactData;
|
|
2654
|
-
const { useScrollbar } = props;
|
|
2655
2655
|
const { showLeftView, showRightView } = reactData;
|
|
2656
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2656
2657
|
const taskSplitOpts = $xeGantt.computeTaskSplitOpts;
|
|
2657
2658
|
const scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
2658
2659
|
const scrollbarYToLeft = $xeGantt.computeScrollbarYToLeft;
|
|
@@ -2674,7 +2675,7 @@ export default {
|
|
|
2674
2675
|
ref: 'refGanttContainerElem',
|
|
2675
2676
|
key: 'tv',
|
|
2676
2677
|
class: ['vxe-gantt--gantt-container', `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
2677
|
-
'is--virtual-scrollbar':
|
|
2678
|
+
'is--virtual-scrollbar': isVScrollbar,
|
|
2678
2679
|
'show--left': showLeftView,
|
|
2679
2680
|
'hide--left': !showLeftView,
|
|
2680
2681
|
'show--right': showRightView,
|
|
@@ -2804,6 +2805,7 @@ export default {
|
|
|
2804
2805
|
const reactData = $xeGantt.reactData;
|
|
2805
2806
|
const { showLeftView, showRightView, overflowY, overflowX, showSplitAnimat } = reactData;
|
|
2806
2807
|
const vSize = $xeGantt.computeSize;
|
|
2808
|
+
const isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2807
2809
|
const wrapperStyle = $xeGantt.computeWrapperStyle;
|
|
2808
2810
|
const isLoading = $xeGantt.computeIsLoading;
|
|
2809
2811
|
const taskSplitOpts = $xeGantt.computeTaskSplitOpts;
|
|
@@ -2814,6 +2816,7 @@ export default {
|
|
|
2814
2816
|
ref: 'refElem',
|
|
2815
2817
|
class: ['vxe-gantt', `border--${tableBorder}`, `sx-pos--${scrollbarXToTop ? 'top' : 'bottom'}`, `sy-pos--${scrollbarYToLeft ? 'left' : 'right'}`, {
|
|
2816
2818
|
[`size--${vSize}`]: vSize,
|
|
2819
|
+
'is--virtual-scrollbar': isVScrollbar,
|
|
2817
2820
|
'is--round': props.round,
|
|
2818
2821
|
'show--animat': taskSplitOpts.animation,
|
|
2819
2822
|
'is--maximize': reactData.isZMax,
|
package/es/ui/index.js
CHANGED
package/es/ui/src/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VxeUI } from '@vxe-ui/core';
|
|
2
2
|
const { log } = VxeUI;
|
|
3
|
-
const ganttVersion = `gantt v${"3.9.0-beta.
|
|
3
|
+
const ganttVersion = `gantt v${"3.9.0-beta.1"}`;
|
|
4
4
|
export function createComponentLog(name) {
|
|
5
5
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
6
6
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -276,8 +276,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
276
276
|
},
|
|
277
277
|
mousedown: function mousedown(evnt) {
|
|
278
278
|
evnt.stopPropagation();
|
|
279
|
-
if ($xeGantt.
|
|
280
|
-
$xeGantt.
|
|
279
|
+
if ($xeGantt.handleTaskBarModnEvent) {
|
|
280
|
+
$xeGantt.handleTaskBarModnEvent(evnt, childCtParams);
|
|
281
281
|
}
|
|
282
282
|
}
|
|
283
283
|
}
|
|
@@ -385,8 +385,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
385
385
|
$xeGantt.handleTaskBarDblclickEvent(evnt, barParams);
|
|
386
386
|
},
|
|
387
387
|
mousedown: function mousedown(evnt) {
|
|
388
|
-
if ($xeGantt.
|
|
389
|
-
$xeGantt.
|
|
388
|
+
if ($xeGantt.handleTaskBarModnEvent) {
|
|
389
|
+
$xeGantt.handleTaskBarModnEvent(evnt, barParams);
|
|
390
390
|
}
|
|
391
391
|
}
|
|
392
392
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var a;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(a="Object"===(a={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:a)||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var getIcon=_core.VxeUI.getIcon,renderEmptyElement=_core.VxeUI.renderEmptyElement,sourceType="gantt",viewType="chart",_default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewChart",inject:{$xeGantt:{default:null},$xeGanttView:{default:null}},props:{},data:function(){return{}},computed:Object.assign({},{}),methods:{renderTaskBar:function(w,g,e,t,a,r,n,i,O){var h,f,m=this.$xeGantt,V=g.resizeHeightFlag,G=g.pendingRowFlag,o=g.fullAllDataRowIdData,F=g.pendingRowMaps,s=g.computeCellOpts,l=g.computeRowOpts,c=g.computeDefaultRowHeight,u=g.computeTreeOpts,u=u.children||u.childrenField,d=m.reactData,v=m.internalData,p=m.$scopedSlots,b=p.taskBar||p["task-bar"],p=p.taskBarOverview||p["task-bar-overview"],x=m.treeConfig,L=m.taskBarMilestoneConfig,j=m.taskBarSubviewConfig,k=d.activeLink,N=d.activeBarRowid,W=d.criticalPathFlag,P=v.criticalRowMaps,q=m.computeTitleField,H=m.computeProgressField,z=m.computeTypeField,d=m.computeTaskBarOpts,y=m.computeTaskBarMilestoneOpts,T=m.computeTaskBarSubviewOpts,K=T.showOverview,_=T.barStyle,E=m.computeScaleUnit,C={$gantt:m,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:r,rowIndex:a,_rowIndex:n},B=d.showProgress,Y=d.showCriticalPath,S=d.showContent,A=d.contentMethod,I=d.barStyle,$=d.moveable,r=d.showTooltip,R=_xeUtils.default.isFunction(I),a=(I?R?I(C):I:{})||{},n=a.round,d=a.bgColor,U=a.completedBgColor,a=a.style,o=o[t]||{},V=V?(0,_util.getCellRestHeight)(o,s,l,c):0,o=(0,_utils.getStringValue)(_xeUtils.default.get(e,q)),s=B?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,H)))):0,l=(0,_util.getTaskType)(_xeUtils.default.get(e,z)),c=!(!(0,_utils.hasEnableConf)(L,y)||!(0,_util.hasMilestoneTask)(l)),M=Object.assign({},C),D={},s={width:"".concat(s||0,"%")},d=(c||R&&(d&&(D["--vxe-ui-gantt-view-task-bar-background-color"]=d),U)&&(D["--vxe-ui-gantt-view-task-bar-completed-background-color"]=U),a&&_xeUtils.default.assign(D,a),[]);return m.renderGanttTaskBarContent?d=m.renderGanttTaskBarContent(w,M,{$gantt:m,$table:g,rowid:t}):(U=!(!(0,_utils.hasEnableConf)(j,T)||!(0,_util.hasSubviewTask)(l)),A&&(o=(0,_utils.getStringValue)(A({row:e,title:o,scaleType:E}))),h={},r&&(h.mouseover=function(e){var t=v.dragBarRow,a=Object.assign({$event:e},M);t||m.triggerTaskBarTooltipEvent(e,a),m.dispatchEvent("task-bar-mouseenter",a,e)},h.mouseleave=function(e){var t=v.dragBarRow,a=Object.assign({$event:e},M);t||m.handleTaskBarTooltipLeaveEvent(e,a),m.dispatchEvent("task-bar-mouseleave",a,e)}),U&&x&&i&&i.length?O?K&&d.push(w("div",{key:"vcso",class:"vxe-gantt-view--chart-subview-wrapper is--overview"},[w("div",{key:t,attrs:{rowid:t},class:["vxe-gantt-view--chart-subview-row",{"is--progress":B,"is--round":n,"is--move":$}]},[w("div",{attrs:{rowid:t},class:[p?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--".concat(l)]},[p?w("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},m.callSlot(p,C,w)):w("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},[S?w("div",{class:"vxe-gantt-view--chart-content"},o):renderEmptyElement(m)])])])])):(f=[],_xeUtils.default.eachTree(i,function(e){var t,a,r={$gantt:m,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:g.getRowIndex(e),rowIndex:g.getVMRowIndex(e),_rowIndex:g.getVTRowIndex(e)},n=_xeUtils.default.isFunction(_),n=_xeUtils.default.assign({},(I?R?I(r):I:{})||{},(_?n?_(r):_:{})||{}),i=n.round,o=n.bgColor,s=n.completedBgColor,l=n.style,c=g.getRowid(e),u=(0,_utils.getStringValue)(_xeUtils.default.get(e,q)),d=B?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,H)))):0,v=(0,_util.getTaskType)(_xeUtils.default.get(e,z)),p=!(!(0,_utils.hasEnableConf)(L,y)||!(0,_util.hasMilestoneTask)(v));(!(0,_utils.hasEnableConf)(j,T)||!(0,_util.hasSubviewTask)(v))&&(t={},d={width:"".concat(d||0,"%")},p||(o&&(t["--vxe-ui-gantt-view-task-bar-background-color"]=o),s&&(d["--vxe-ui-gantt-view-task-bar-completed-background-color"]=s)),n.top&&(t.top=n.top),l&&_xeUtils.default.assign(t,l),a=Object.assign({},r),A&&(u=(0,_utils.getStringValue)(A({row:e,title:u,scaleType:E}))),f.push(w("div",{key:c,attrs:{rowid:c},class:["vxe-gantt-view--chart-subview-row","is--".concat(v),{"is--progress":B,"is--critical":Y&&W&&P.has(c),"is--round":i,"is--move":$,"row--pending":!!G&&!!F[c]}]},[w("div",{attrs:{rowid:c},class:[b?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--".concat(v)],style:t,on:{click:function(e){e.stopPropagation(),m.handleTaskBarClickEvent(e,a)},dblclick:function(e){e.stopPropagation(),m.handleTaskBarDblclickEvent(e,a)},mousedown:function(e){e.stopPropagation(),m.handleTaskBarMousedownEvent&&m.handleTaskBarMousedownEvent(e,a)}}},[b?w("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper",on:h},m.callSlot(b,a,w)):w("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper",on:h},[B?w("div",{class:"vxe-gantt-view--chart-progress",style:d}):renderEmptyElement(m),S?w("div",{class:"vxe-gantt-view--chart-content"},u):renderEmptyElement(m)])])])))},{children:u}),d.push(w("div",{key:"vcsc",class:"vxe-gantt-view--chart-subview-wrapper is--inline"},f))):b?d.push(w("div",{key:"cbc",class:"vxe-gantt-view--chart-custom-bar-content-wrapper",on:h},m.callSlot(b,C,w))):c?(a=y.icon,r=y.iconStatus,U=y.iconStyle,x={$gantt:m,row:e},d.push(w("div",{key:"vcm",class:"vxe-gantt-view--chart-milestone-wrapper",on:h},[w("div",{class:["vxe-gantt-view--chart-milestone-icon",r?"theme--".concat(_xeUtils.default.isFunction(r)?r(x):r):""],style:U?Object.assign({},_xeUtils.default.isFunction(U)?U(x):U):void 0},[w("i",{class:(a?_xeUtils.default.isFunction(a)?a(x):a:"")||getIcon().GANTT_VIEW_TASK_MILESTONE})]),S?w("div",{class:"vxe-gantt-view--chart-milestone-content"},o):renderEmptyElement(m)]))):d.push(w("div",{key:"vbc",class:"vxe-gantt-view--chart-bar-content-wrapper",on:h},[B?w("div",{class:"vxe-gantt-view--chart-progress",style:s}):renderEmptyElement(m),S?w("div",{class:"vxe-gantt-view--chart-content"},o):renderEmptyElement(m)]))),w("div",{key:t,attrs:{rowid:t},class:["vxe-gantt-view--chart-row","is--".concat(l),{"is--progress":B,"is--critical":Y&&W&&P.has(t),"row--pending":!!G&&!!F[t],"is--round":n,"is--move":$}],style:{height:"".concat(V,"px")},on:{onDragstart:function(e){v.dragBarRow&&e.preventDefault()},contextmenu:function(e){m.handleTaskBarContextmenuEvent(e,M)}}},[w("div",{class:[b?"vxe-gantt-view--chart-custom-bar":"vxe-gantt-view--chart-bar","is--".concat(l),{"is--active":N===t,"active--link":k&&(t==="".concat(k.from)||t==="".concat(k.to))}],style:D,attrs:{rowid:t},on:{click:function(e){m.handleTaskBarClickEvent(e,C)},dblclick:function(e){m.handleTaskBarDblclickEvent(e,C)},mousedown:function(e){m.handleTaskBarMousedownEvent&&m.handleTaskBarMousedownEvent(e,C)}}},d)])},renderTaskRows:function(s,l,e){var c=this,t=c.$xeGanttView.reactData,u=l.treeConfig,d=l.treeExpandedFlag,v=l.fullAllDataRowIdData,p=l.treeExpandedMaps,a=l.computeTreeOpts,w=a.transform,g=a.children||a.childrenField,h=t.scrollYLoad,f=[];return e.forEach(function(e,t){var a=l.getRowid(e),r=v[a]||{},n=t,i=-1,r=(r&&(n=r.index,i=r._index),!1),o=[];u&&(o=e[g],r=!!d&&o&&0<o.length&&!!p[a]),f.push(c.renderTaskBar(s,l,e,a,n,t,i,o,r)),u&&r&&!h&&!w&&f.push.apply(f,_toConsumableArray(c.renderTaskRows(s,l,o)))}),f},renderVN:function(e){var t=this.$xeGantt,a=this.$xeGanttView,r=t.reactData,n=a.internalData.xeTable,i=t.$scopedSlots,r=r.dragLinkFromStore,o=a.reactData.tableData,s=t.computeTaskLinkOpts,a=a.computeNowLineLeft,l=s.isCurrent,c=s.isHover,u=t.computeTaskBarOpts.linkCreatable,i=i.taskNowLine||i["task-now-line"];return e("div",{ref:"refElem",class:["vxe-gantt-view--chart-wrapper",{"is--cl-drag":r.rowid}]},[0<a?e("div",{ref:"refNowLineElem",class:"vxe-gantt-view--chart-now-line",style:{left:a+"px"}},i?i({}):[]):renderEmptyElement(t),t.renderGanttTaskChartBefores?e("div",{ref:"refChartBeforeWrapperElem",class:["vxe-gantt-view--chart-before-wrapper",{"link--current":l,"link--hover":c}]},n&&(0,_utils.isEnableConf)(s)?t.renderGanttTaskChartBefores(e):[]):renderEmptyElement(t),e("div",{ref:"refTaskWrapperElem",class:["vxe-gantt-view--chart-task-wrapper",{"link--current":l,"link--create":u}]},n?this.renderTaskRows(e,n,o):[]),t.renderGanttTaskChartAfters?e("div",{ref:"refChartAfterWrapperElem",class:"vxe-gantt-view--chart-after-wrapper"},n&&(0,_utils.isEnableConf)(s)?t.renderGanttTaskChartAfters(e):[]):renderEmptyElement(t)])}},mounted:function(){var e=this,t=e.$xeGanttView.internalData.elemStore,a="main-chart-";t["".concat(a,"now-line")]=e.$refs.refNowLineElem,t["".concat(a,"task-wrapper")]=e.$refs.refTaskWrapperElem,t["".concat(a,"before-wrapper")]=e.$refs.refChartBeforeWrapperElem,t["".concat(a,"after-wrapper")]=e.$refs.refChartAfterWrapperElem},destroyed:function(){var e=this.$xeGanttView.internalData.elemStore,t="main-chart-";e["".concat(t,"now-line")]=null,e["".concat(t,"task-wrapper")]=null,e["".concat(t,"before-wrapper")]=null,e["".concat(t,"after-wrapper")]=null},render:function(e){return this.renderVN(e)}});
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_core=require("@vxe-ui/core"),_xeUtils=_interopRequireDefault(require("xe-utils")),_util=require("./util"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var a;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(a="Object"===(a={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:a)||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,t):void 0}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var getIcon=_core.VxeUI.getIcon,renderEmptyElement=_core.VxeUI.renderEmptyElement,sourceType="gantt",viewType="chart",_default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeGanttViewChart",inject:{$xeGantt:{default:null},$xeGanttView:{default:null}},props:{},data:function(){return{}},computed:Object.assign({},{}),methods:{renderTaskBar:function(w,g,e,t,a,r,n,i,O){var h,f,m=this.$xeGantt,V=g.resizeHeightFlag,G=g.pendingRowFlag,o=g.fullAllDataRowIdData,F=g.pendingRowMaps,s=g.computeCellOpts,l=g.computeRowOpts,c=g.computeDefaultRowHeight,u=g.computeTreeOpts,u=u.children||u.childrenField,d=m.reactData,v=m.internalData,p=m.$scopedSlots,b=p.taskBar||p["task-bar"],p=p.taskBarOverview||p["task-bar-overview"],x=m.treeConfig,L=m.taskBarMilestoneConfig,j=m.taskBarSubviewConfig,k=d.activeLink,N=d.activeBarRowid,W=d.criticalPathFlag,P=v.criticalRowMaps,q=m.computeTitleField,H=m.computeProgressField,z=m.computeTypeField,d=m.computeTaskBarOpts,y=m.computeTaskBarMilestoneOpts,T=m.computeTaskBarSubviewOpts,K=T.showOverview,_=T.barStyle,E=m.computeScaleUnit,C={$gantt:m,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:r,rowIndex:a,_rowIndex:n},B=d.showProgress,Y=d.showCriticalPath,S=d.showContent,A=d.contentMethod,I=d.barStyle,$=d.moveable,r=d.showTooltip,R=_xeUtils.default.isFunction(I),a=(I?R?I(C):I:{})||{},n=a.round,d=a.bgColor,U=a.completedBgColor,a=a.style,o=o[t]||{},V=V?(0,_util.getCellRestHeight)(o,s,l,c):0,o=(0,_utils.getStringValue)(_xeUtils.default.get(e,q)),s=B?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,H)))):0,l=(0,_util.getTaskType)(_xeUtils.default.get(e,z)),c=!(!(0,_utils.hasEnableConf)(L,y)||!(0,_util.hasMilestoneTask)(l)),M=Object.assign({},C),D={},s={width:"".concat(s||0,"%")},d=(c||R&&(d&&(D["--vxe-ui-gantt-view-task-bar-background-color"]=d),U)&&(D["--vxe-ui-gantt-view-task-bar-completed-background-color"]=U),a&&_xeUtils.default.assign(D,a),[]);return m.renderGanttTaskBarContent?d=m.renderGanttTaskBarContent(w,M,{$gantt:m,$table:g,rowid:t}):(U=!(!(0,_utils.hasEnableConf)(j,T)||!(0,_util.hasSubviewTask)(l)),A&&(o=(0,_utils.getStringValue)(A({row:e,title:o,scaleType:E}))),h={},r&&(h.mouseover=function(e){var t=v.dragBarRow,a=Object.assign({$event:e},M);t||m.triggerTaskBarTooltipEvent(e,a),m.dispatchEvent("task-bar-mouseenter",a,e)},h.mouseleave=function(e){var t=v.dragBarRow,a=Object.assign({$event:e},M);t||m.handleTaskBarTooltipLeaveEvent(e,a),m.dispatchEvent("task-bar-mouseleave",a,e)}),U&&x&&i&&i.length?O?K&&d.push(w("div",{key:"vcso",class:"vxe-gantt-view--chart-subview-wrapper is--overview"},[w("div",{key:t,attrs:{rowid:t},class:["vxe-gantt-view--chart-subview-row",{"is--progress":B,"is--round":n,"is--move":$}]},[w("div",{attrs:{rowid:t},class:[p?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--".concat(l)]},[p?w("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper"},m.callSlot(p,C,w)):w("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper"},[S?w("div",{class:"vxe-gantt-view--chart-content"},o):renderEmptyElement(m)])])])])):(f=[],_xeUtils.default.eachTree(i,function(e){var t,a,r={$gantt:m,source:sourceType,type:viewType,scaleType:E,row:e,$rowIndex:g.getRowIndex(e),rowIndex:g.getVMRowIndex(e),_rowIndex:g.getVTRowIndex(e)},n=_xeUtils.default.isFunction(_),n=_xeUtils.default.assign({},(I?R?I(r):I:{})||{},(_?n?_(r):_:{})||{}),i=n.round,o=n.bgColor,s=n.completedBgColor,l=n.style,c=g.getRowid(e),u=(0,_utils.getStringValue)(_xeUtils.default.get(e,q)),d=B?Math.min(100,Math.max(0,_xeUtils.default.toNumber(_xeUtils.default.get(e,H)))):0,v=(0,_util.getTaskType)(_xeUtils.default.get(e,z)),p=!(!(0,_utils.hasEnableConf)(L,y)||!(0,_util.hasMilestoneTask)(v));(!(0,_utils.hasEnableConf)(j,T)||!(0,_util.hasSubviewTask)(v))&&(t={},d={width:"".concat(d||0,"%")},p||(o&&(t["--vxe-ui-gantt-view-task-bar-background-color"]=o),s&&(d["--vxe-ui-gantt-view-task-bar-completed-background-color"]=s)),n.top&&(t.top=n.top),l&&_xeUtils.default.assign(t,l),a=Object.assign({},r),A&&(u=(0,_utils.getStringValue)(A({row:e,title:u,scaleType:E}))),f.push(w("div",{key:c,attrs:{rowid:c},class:["vxe-gantt-view--chart-subview-row","is--".concat(v),{"is--progress":B,"is--critical":Y&&W&&P.has(c),"is--round":i,"is--move":$,"row--pending":!!G&&!!F[c]}]},[w("div",{attrs:{rowid:c},class:[b?"vxe-gantt-view--chart-subview-custom-bar":"vxe-gantt-view--chart-subview-bar","is--".concat(v)],style:t,on:{click:function(e){e.stopPropagation(),m.handleTaskBarClickEvent(e,a)},dblclick:function(e){e.stopPropagation(),m.handleTaskBarDblclickEvent(e,a)},mousedown:function(e){e.stopPropagation(),m.handleTaskBarModnEvent&&m.handleTaskBarModnEvent(e,a)}}},[b?w("div",{key:"cbc",class:"vxe-gantt-view--chart-subview-custom-bar-content-wrapper",on:h},m.callSlot(b,a,w)):w("div",{class:"vxe-gantt-view--chart-subview-bar-content-wrapper",on:h},[B?w("div",{class:"vxe-gantt-view--chart-progress",style:d}):renderEmptyElement(m),S?w("div",{class:"vxe-gantt-view--chart-content"},u):renderEmptyElement(m)])])])))},{children:u}),d.push(w("div",{key:"vcsc",class:"vxe-gantt-view--chart-subview-wrapper is--inline"},f))):b?d.push(w("div",{key:"cbc",class:"vxe-gantt-view--chart-custom-bar-content-wrapper",on:h},m.callSlot(b,C,w))):c?(a=y.icon,r=y.iconStatus,U=y.iconStyle,x={$gantt:m,row:e},d.push(w("div",{key:"vcm",class:"vxe-gantt-view--chart-milestone-wrapper",on:h},[w("div",{class:["vxe-gantt-view--chart-milestone-icon",r?"theme--".concat(_xeUtils.default.isFunction(r)?r(x):r):""],style:U?Object.assign({},_xeUtils.default.isFunction(U)?U(x):U):void 0},[w("i",{class:(a?_xeUtils.default.isFunction(a)?a(x):a:"")||getIcon().GANTT_VIEW_TASK_MILESTONE})]),S?w("div",{class:"vxe-gantt-view--chart-milestone-content"},o):renderEmptyElement(m)]))):d.push(w("div",{key:"vbc",class:"vxe-gantt-view--chart-bar-content-wrapper",on:h},[B?w("div",{class:"vxe-gantt-view--chart-progress",style:s}):renderEmptyElement(m),S?w("div",{class:"vxe-gantt-view--chart-content"},o):renderEmptyElement(m)]))),w("div",{key:t,attrs:{rowid:t},class:["vxe-gantt-view--chart-row","is--".concat(l),{"is--progress":B,"is--critical":Y&&W&&P.has(t),"row--pending":!!G&&!!F[t],"is--round":n,"is--move":$}],style:{height:"".concat(V,"px")},on:{onDragstart:function(e){v.dragBarRow&&e.preventDefault()},contextmenu:function(e){m.handleTaskBarContextmenuEvent(e,M)}}},[w("div",{class:[b?"vxe-gantt-view--chart-custom-bar":"vxe-gantt-view--chart-bar","is--".concat(l),{"is--active":N===t,"active--link":k&&(t==="".concat(k.from)||t==="".concat(k.to))}],style:D,attrs:{rowid:t},on:{click:function(e){m.handleTaskBarClickEvent(e,C)},dblclick:function(e){m.handleTaskBarDblclickEvent(e,C)},mousedown:function(e){m.handleTaskBarModnEvent&&m.handleTaskBarModnEvent(e,C)}}},d)])},renderTaskRows:function(s,l,e){var c=this,t=c.$xeGanttView.reactData,u=l.treeConfig,d=l.treeExpandedFlag,v=l.fullAllDataRowIdData,p=l.treeExpandedMaps,a=l.computeTreeOpts,w=a.transform,g=a.children||a.childrenField,h=t.scrollYLoad,f=[];return e.forEach(function(e,t){var a=l.getRowid(e),r=v[a]||{},n=t,i=-1,r=(r&&(n=r.index,i=r._index),!1),o=[];u&&(o=e[g],r=!!d&&o&&0<o.length&&!!p[a]),f.push(c.renderTaskBar(s,l,e,a,n,t,i,o,r)),u&&r&&!h&&!w&&f.push.apply(f,_toConsumableArray(c.renderTaskRows(s,l,o)))}),f},renderVN:function(e){var t=this.$xeGantt,a=this.$xeGanttView,r=t.reactData,n=a.internalData.xeTable,i=t.$scopedSlots,r=r.dragLinkFromStore,o=a.reactData.tableData,s=t.computeTaskLinkOpts,a=a.computeNowLineLeft,l=s.isCurrent,c=s.isHover,u=t.computeTaskBarOpts.linkCreatable,i=i.taskNowLine||i["task-now-line"];return e("div",{ref:"refElem",class:["vxe-gantt-view--chart-wrapper",{"is--cl-drag":r.rowid}]},[0<a?e("div",{ref:"refNowLineElem",class:"vxe-gantt-view--chart-now-line",style:{left:a+"px"}},i?i({}):[]):renderEmptyElement(t),t.renderGanttTaskChartBefores?e("div",{ref:"refChartBeforeWrapperElem",class:["vxe-gantt-view--chart-before-wrapper",{"link--current":l,"link--hover":c}]},n&&(0,_utils.isEnableConf)(s)?t.renderGanttTaskChartBefores(e):[]):renderEmptyElement(t),e("div",{ref:"refTaskWrapperElem",class:["vxe-gantt-view--chart-task-wrapper",{"link--current":l,"link--create":u}]},n?this.renderTaskRows(e,n,o):[]),t.renderGanttTaskChartAfters?e("div",{ref:"refChartAfterWrapperElem",class:"vxe-gantt-view--chart-after-wrapper"},n&&(0,_utils.isEnableConf)(s)?t.renderGanttTaskChartAfters(e):[]):renderEmptyElement(t)])}},mounted:function(){var e=this,t=e.$xeGanttView.internalData.elemStore,a="main-chart-";t["".concat(a,"now-line")]=e.$refs.refNowLineElem,t["".concat(a,"task-wrapper")]=e.$refs.refTaskWrapperElem,t["".concat(a,"before-wrapper")]=e.$refs.refChartBeforeWrapperElem,t["".concat(a,"after-wrapper")]=e.$refs.refChartAfterWrapperElem},destroyed:function(){var e=this.$xeGanttView.internalData.elemStore,t="main-chart-";e["".concat(t,"now-line")]=null,e["".concat(t,"task-wrapper")]=null,e["".concat(t,"before-wrapper")]=null,e["".concat(t,"after-wrapper")]=null},render:function(e){return this.renderVN(e)}});
|
|
@@ -1858,6 +1858,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
1858
1858
|
};
|
|
1859
1859
|
},
|
|
1860
1860
|
computed: Object.assign(Object.assign({}, {}), {
|
|
1861
|
+
computeGanttIsVScrollbar: function computeGanttIsVScrollbar() {
|
|
1862
|
+
var $xeGanttView = this;
|
|
1863
|
+
var $xeGantt = $xeGanttView.$xeGantt;
|
|
1864
|
+
var isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
1865
|
+
return isVScrollbar;
|
|
1866
|
+
},
|
|
1861
1867
|
computeScrollbarXOpts: function computeScrollbarXOpts() {
|
|
1862
1868
|
var $xeGanttView = this;
|
|
1863
1869
|
var $xeGantt = $xeGanttView.$xeGantt;
|
|
@@ -2446,6 +2452,33 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2446
2452
|
_handleLazyRecalculate($xeGanttView);
|
|
2447
2453
|
},
|
|
2448
2454
|
// 滚动条
|
|
2455
|
+
bindScrollbarResize: function bindScrollbarResize() {
|
|
2456
|
+
var $xeGanttView = this;
|
|
2457
|
+
var internalData = $xeGanttView.internalData;
|
|
2458
|
+
var elemStore = internalData.elemStore,
|
|
2459
|
+
scrollObserver = internalData.scrollObserver;
|
|
2460
|
+
var isVScrollbar = $xeGanttView.$refs.computeIsVScrollbar;
|
|
2461
|
+
if (isVScrollbar) {
|
|
2462
|
+
if (!scrollObserver) {
|
|
2463
|
+
var el = $xeGanttView.$refs.refElem;
|
|
2464
|
+
var viewInnerXEl = (0, _util.getRefElem)(elemStore['main-body-xSpace']);
|
|
2465
|
+
var viewInnerYEl = (0, _util.getRefElem)(elemStore['main-body-xSpace']);
|
|
2466
|
+
var _scrollObserver = globalResize.create(function () {
|
|
2467
|
+
$xeGanttView.reScrollFlag++;
|
|
2468
|
+
});
|
|
2469
|
+
if (el) {
|
|
2470
|
+
_scrollObserver.observe(el);
|
|
2471
|
+
}
|
|
2472
|
+
if (viewInnerXEl) {
|
|
2473
|
+
_scrollObserver.observe(viewInnerXEl);
|
|
2474
|
+
}
|
|
2475
|
+
if (viewInnerYEl) {
|
|
2476
|
+
_scrollObserver.observe(viewInnerYEl);
|
|
2477
|
+
}
|
|
2478
|
+
internalData.scrollObserver = _scrollObserver;
|
|
2479
|
+
}
|
|
2480
|
+
}
|
|
2481
|
+
},
|
|
2449
2482
|
updateThumbSize: function updateThumbSize() {
|
|
2450
2483
|
var $xeGanttView = this;
|
|
2451
2484
|
var reactData = $xeGanttView.reactData;
|
|
@@ -2715,12 +2748,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2715
2748
|
var $xeGantt = $xeGanttView.$xeGantt;
|
|
2716
2749
|
var reactData = $xeGanttView.reactData;
|
|
2717
2750
|
var ganttReactData = $xeGantt.reactData;
|
|
2718
|
-
var ganttProps = $xeGantt;
|
|
2719
2751
|
var showLeftView = ganttReactData.showLeftView;
|
|
2720
|
-
var useScrollbar = ganttProps.useScrollbar;
|
|
2721
2752
|
var xThumbWidth = reactData.xThumbWidth,
|
|
2722
2753
|
yThumbHeight = reactData.yThumbHeight;
|
|
2723
2754
|
var scrollbarOpts = $xeGantt.computeScrollbarOpts;
|
|
2755
|
+
var isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2724
2756
|
var scrollXAutoHide = $xeGanttView.computeScrollXAutoHide;
|
|
2725
2757
|
var scrollYAutoHide = $xeGanttView.computeScrollYAutoHide;
|
|
2726
2758
|
var scrollXVisible = $xeGanttView.computeScrollXVisible;
|
|
@@ -2731,10 +2763,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2731
2763
|
return h('div', {
|
|
2732
2764
|
key: 'lvb',
|
|
2733
2765
|
class: ['vxe-gantt--layout-wrapper', "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom'), "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right'), {
|
|
2734
|
-
'is--virtual-scrollbar':
|
|
2735
|
-
'ov-padding':
|
|
2736
|
-
'ov-x--auto-hide':
|
|
2737
|
-
'ov-y--auto-hide':
|
|
2766
|
+
'is--virtual-scrollbar': isVScrollbar,
|
|
2767
|
+
'ov-padding': isVScrollbar && scrollbarOpts.padding,
|
|
2768
|
+
'ov-x--auto-hide': isVScrollbar && scrollXAutoHide,
|
|
2769
|
+
'ov-y--auto-hide': isVScrollbar && scrollYAutoHide,
|
|
2738
2770
|
'overflow-y': yThumbHeight,
|
|
2739
2771
|
'overflow-x': xThumbWidth
|
|
2740
2772
|
}]
|
|
@@ -2778,12 +2810,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2778
2810
|
var $xeGanttView = this;
|
|
2779
2811
|
var $xeGantt = $xeGanttView.$xeGantt;
|
|
2780
2812
|
var reactData = $xeGanttView.reactData;
|
|
2781
|
-
var ganttProps = $xeGantt;
|
|
2782
|
-
var useScrollbar = ganttProps.useScrollbar;
|
|
2783
2813
|
var overflowX = reactData.overflowX,
|
|
2784
2814
|
overflowY = reactData.overflowY,
|
|
2785
2815
|
scrollXLoad = reactData.scrollXLoad,
|
|
2786
2816
|
scrollYLoad = reactData.scrollYLoad;
|
|
2817
|
+
var isVScrollbar = $xeGantt.computeIsVScrollbar;
|
|
2787
2818
|
var scrollbarXToTop = $xeGantt.computeScrollbarXToTop;
|
|
2788
2819
|
return h('div', {
|
|
2789
2820
|
ref: 'refElem',
|
|
@@ -2795,7 +2826,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2795
2826
|
}]
|
|
2796
2827
|
}, [h('div', {
|
|
2797
2828
|
class: 'vxe-gantt-view--render-wrapper'
|
|
2798
|
-
},
|
|
2829
|
+
}, isVScrollbar ? [$xeGanttView.renderVirtualBody(h)] : scrollbarXToTop ? [$xeGanttView.renderScrollX(h), $xeGanttView.renderNativeBody(h)] : [$xeGanttView.renderNativeBody(h), $xeGanttView.renderScrollX(h)]), h('div', {
|
|
2799
2830
|
class: 'vxe-gantt-view--render-vars'
|
|
2800
2831
|
}, [h('div', {
|
|
2801
2832
|
ref: 'refColInfoElem',
|
|
@@ -2804,6 +2835,15 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2804
2835
|
}
|
|
2805
2836
|
},
|
|
2806
2837
|
watch: {
|
|
2838
|
+
computeGanttIsVScrollbar: function computeGanttIsVScrollbar() {
|
|
2839
|
+
var $xeGanttView = this;
|
|
2840
|
+
$xeGanttView.$nextTick(function () {
|
|
2841
|
+
$xeGanttView.bindScrollbarResize();
|
|
2842
|
+
$xeGanttView.$nextTick(function () {
|
|
2843
|
+
$xeGanttView.reScrollFlag++;
|
|
2844
|
+
});
|
|
2845
|
+
});
|
|
2846
|
+
},
|
|
2807
2847
|
computeScrollbarXToTop: function computeScrollbarXToTop() {
|
|
2808
2848
|
var $xeGanttView = this;
|
|
2809
2849
|
$xeGanttView.reScrollFlag++;
|
|
@@ -2840,26 +2880,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
2840
2880
|
},
|
|
2841
2881
|
mounted: function mounted() {
|
|
2842
2882
|
var $xeGanttView = this;
|
|
2843
|
-
var $xeGantt = $xeGanttView.$xeGantt;
|
|
2844
|
-
var internalData = $xeGanttView.internalData;
|
|
2845
2883
|
$xeGanttView.$nextTick(function () {
|
|
2846
|
-
|
|
2847
|
-
var useScrollbar = ganttProps.useScrollbar;
|
|
2848
|
-
var elemStore = internalData.elemStore;
|
|
2849
|
-
var el = $xeGanttView.$refs.refElem;
|
|
2850
|
-
if (useScrollbar) {
|
|
2851
|
-
var viewInnerEl = (0, _util.getRefElem)(elemStore['main-body-table']);
|
|
2852
|
-
var scrollObserver = globalResize.create(function () {
|
|
2853
|
-
$xeGanttView.reScrollFlag++;
|
|
2854
|
-
});
|
|
2855
|
-
if (el) {
|
|
2856
|
-
scrollObserver.observe(el);
|
|
2857
|
-
}
|
|
2858
|
-
if (viewInnerEl) {
|
|
2859
|
-
scrollObserver.observe(viewInnerEl);
|
|
2860
|
-
}
|
|
2861
|
-
internalData.scrollObserver = scrollObserver;
|
|
2862
|
-
}
|
|
2884
|
+
$xeGanttView.bindScrollbarResize();
|
|
2863
2885
|
});
|
|
2864
2886
|
globalEvents.on($xeGanttView, 'resize', $xeGanttView.handleGlobalResizeEvent);
|
|
2865
2887
|
},
|