@visactor/vtable-gantt
Version:
canvas table width high performance
40 lines (39 loc) • 1.69 kB
TypeScript
import { Group, Image, Line } from '@visactor/vtable/es/vrender';
import type { Scenegraph } from './scenegraph';
import { GanttTaskBarNode } from './gantt-node';
export declare const TASKBAR_HOVER_ICON_WIDTH = 10;
export declare class TaskBar {
formatMilestoneText(text: string, record: any): string;
calculateMilestoneTextPosition(position: string, milestoneWidth: number, padding?: number | number[]): {
textX: number;
textY: number;
textAlignValue: CanvasTextAlign;
textBaselineValue: CanvasTextBaseline;
};
group: Group;
barContainer: Group;
hoverBarGroup: Group;
creatingDependencyLine: Line;
hoverBarLeftIcon: Image;
hoverBarRightIcon: Image;
_scene: Scenegraph;
width: number;
height: number;
selectedBorders: Group[];
constructor(scene: Scenegraph);
initBars(): void;
initBar(index: number, childIndex?: number | number[], childrenLength?: number): GanttTaskBarNode;
updateTaskBarNode(index: number, sub_task_index?: number): void;
initHoverBarIcons(): void;
setX(x: number): void;
setY(y: number): void;
refresh(): void;
resize(): void;
showHoverBar(x: number, y: number, width: number, height: number, target?: Group): void;
hideHoverBar(): void;
createSelectedBorder(x: number, y: number, width: number, height: number, attachedToTaskBarNode: GanttTaskBarNode, showLinkPoint?: boolean): void;
removeSelectedBorder(): void;
removeSecondSelectedBorder(): void;
updateCreatingDependencyLine(x1: number, y1: number, x2: number, y2: number): void;
getTaskBarNodeByIndex(index: number, sub_task_index?: number): GanttTaskBarNode;
}