diff --git a/docs/assets/option/en/common/gantt/task-bar.md b/docs/assets/option/en/common/gantt/task-bar.md index 7f6d4a4b8..1649bcefc 100644 --- a/docs/assets/option/en/common/gantt/task-bar.md +++ b/docs/assets/option/en/common/gantt/task-bar.md @@ -230,3 +230,9 @@ ${prefix} minWidth(number) The minimum width of the task bar creation button. Optional + +${prefix} clip(boolean) + +Whether to crop out the part that overflows the taskBar, the default is true + +Optional diff --git a/docs/assets/option/zh/common/gantt/task-bar.md b/docs/assets/option/zh/common/gantt/task-bar.md index 55bc4cfb2..33ad8b803 100644 --- a/docs/assets/option/zh/common/gantt/task-bar.md +++ b/docs/assets/option/zh/common/gantt/task-bar.md @@ -236,3 +236,9 @@ ${prefix} minWidth(number) 任务条创建按钮的最小宽度 非必填 + +${prefix} clip(boolean) + +是否裁剪掉溢出 taskBar 的部分,默认为 true + +非必填 diff --git a/packages/vtable-gantt/src/Gantt.ts b/packages/vtable-gantt/src/Gantt.ts index 0f99b67a2..5cc41362d 100644 --- a/packages/vtable-gantt/src/Gantt.ts +++ b/packages/vtable-gantt/src/Gantt.ts @@ -164,6 +164,7 @@ export class Gantt extends EventTarget { pixelRatio: number; tasksShowMode: TasksShowMode; projectSubTasksExpandable: boolean; + taskBarClip: boolean; startDateField: string; endDateField: string; diff --git a/packages/vtable-gantt/src/gantt-helper.ts b/packages/vtable-gantt/src/gantt-helper.ts index 4e1415098..c2bc7ec62 100644 --- a/packages/vtable-gantt/src/gantt-helper.ts +++ b/packages/vtable-gantt/src/gantt-helper.ts @@ -127,6 +127,7 @@ export function initOptions(gantt: Gantt) { gantt.parsedOptions.startDateField = options.taskBar?.startDateField ?? 'startDate'; gantt.parsedOptions.endDateField = options.taskBar?.endDateField ?? 'endDate'; gantt.parsedOptions.progressField = options.taskBar?.progressField ?? 'progress'; + gantt.parsedOptions.taskBarClip = options?.taskBar?.clip ?? true; gantt.parsedOptions.projectSubTasksExpandable = options?.projectSubTasksExpandable ?? true; // gantt.parsedOptions.minDate = options?.minDate // ? gantt.parsedOptions.timeScaleIncludeHour diff --git a/packages/vtable-gantt/src/scenegraph/task-bar.ts b/packages/vtable-gantt/src/scenegraph/task-bar.ts index 68b10f1a9..5942108b9 100644 --- a/packages/vtable-gantt/src/scenegraph/task-bar.ts +++ b/packages/vtable-gantt/src/scenegraph/task-bar.ts @@ -282,7 +282,7 @@ export class TaskBar { cornerRadius: isMilestone ? this._scene._gantt.parsedOptions.taskBarMilestoneStyle.cornerRadius : taskBarStyle.cornerRadius, - clip: true + clip: this._scene._gantt.parsedOptions.taskBarClip }); barGroup.name = 'task-bar-group'; barGroupBox.appendChild(barGroup); diff --git a/packages/vtable-gantt/src/ts-types/gantt-engine.ts b/packages/vtable-gantt/src/ts-types/gantt-engine.ts index 071cb6c9b..fb817ba09 100644 --- a/packages/vtable-gantt/src/ts-types/gantt-engine.ts +++ b/packages/vtable-gantt/src/ts-types/gantt-engine.ts @@ -122,6 +122,8 @@ export interface GanttConstructorOptions { selectedBarStyle?: ITaskBarSelectedStyle; /** 任务条是否可选择,默认为true */ selectable?: boolean; + /** 任务条是否裁剪溢出部分 */ + clip?: boolean; /** 任务条右键菜单 */ menu?: { /** 右键菜单。代替原来的option.contextmenu */