UNPKG

e-virt-table

Version:

A powerful data table based on canvas. You can use it as data grid、Microsoft Excel or Google sheets. It supports virtual scroll、cell edit etc.

116 lines (115 loc) 3.04 kB
import type { Column, Fixed, Type, Align, VerticalAlign, CellType, Render, FormatterMethod, OverflowTooltipPlacement, Rules, SpanInfo } from './types'; import Context from './Context'; import BaseCell from './BaseCell'; export default class Cell extends BaseCell { formatter?: FormatterMethod; formatterFooter?: FormatterMethod; hoverIconName?: string; operation: boolean; align: Align; verticalAlign: VerticalAlign; fixed?: Fixed; type: Type | ''; editorType: string; editorProps: any; cellType: CellType; level: number; colspan: number; rowspan: number; mergeRow: boolean; mergeCol: boolean; relationRowKeys: string[]; relationColKeys: string[]; key: string; column: Column; rowIndex: number; colIndex: number; rowKey: string; row: any; value: any; render: Render; renderFooter: Render; style: any; rules: Rules; message: string; text: string; displayText: string; visibleWidth: number; visibleHeight: number; isHasChanged: boolean; drawX: number; drawY: number; drawCellBgColor: string; drawCellSkyBgColor: string; drawTextColor: string; drawTextX: number; drawTextY: number; drawImageX: number; drawImageY: number; drawImageWidth: number; drawImageHeight: number; drawImageName: string; drawImageSource?: HTMLImageElement; ellipsis: boolean; rowExpand: boolean; rowHasChildren: boolean; overflowTooltipShow: boolean; overflowTooltipMaxWidth: number; overflowTooltipPlacement: OverflowTooltipPlacement; constructor(ctx: Context, rowIndex: number, colIndex: number, x: number, y: number, width: number, height: number, column: Column, row: any, cellType?: CellType); setWidthHeight(width: number, height: number): void; getValidationMessage(): string; update(): void; updateSpan(): void; updateSpanInfo(): void; updateType(): void; updateEditor(): void; updateRender(): void; validate(): void; /** * 更新样式 */ updateStyle(): void; private updateTree; private updateContainer; private updateSelection; private updateHoverIcon; getSpanInfo(): SpanInfo; /** * 获取显示文本 * @returns */ getDisplayText(): string; /** * 获取文本 * @returns */ getText(): any; getValue(): any; setValue(value: any): void; /** * 获取样式 */ getOverlayerViewsStyle(): { position: string; overflow: string; left: string; top: string; width: string; height: string; pointerEvents: string; userSelect: string; }; draw(): void; /** * 根据列的索引获取列的宽度 * @param {Number} colIndex */ private getWidthByColIndexColSpan; private drawText; private drawImage; private drawAutofillPiont; private drawSelector; private drawErrorTip; private drawBorder; }