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.

105 lines (104 loc) 2.91 kB
import type Context from './Context'; import type { Align, Column, Fixed, LineClampType, Render, RenderType, Type, VerticalAlign } from './types'; import BaseCell from './BaseCell'; import { Rule, Rules } from './Validator'; import { TextInfo } from './Paint'; export default class CellHeader extends BaseCell { align: Align; hideHeaderSelection: boolean; verticalAlign: VerticalAlign; fixed?: Fixed; minWidth?: number; maxWidth?: number; widthFillDisable: boolean; type: Type | ''; operation: boolean; editorType: string; level: number; text: string; hide: boolean; displayText: string; colspan: number; rowspan: number; row: any; key: string; required: boolean; readonly: boolean; ellipsis: boolean; overflowTooltipShow: boolean; children: Column[]; column: Column; colIndex: number; rowKey: string; rules?: Rules | Rule; hasChildren: boolean; render: Render; style: Partial<CSSStyleDeclaration>; drawX: number; drawY: number; sortIconName: string; sortAscIconName: string; sortDescIconName: string; visibleWidth: number; visibleHeight: number; maxLineClampHeader: LineClampType; domDataset: any; textOffsetRight: number; textOffsetLeft: number; textInfo: TextInfo | undefined; drawTextX: number; drawTextY: number; drawTextWidth: number; drawTextHeight: number; drawCellBgColor: string; drawTextColor: string; drawTextFont: string; drawSelectionImageX: number; drawSelectionImageY: number; drawSelectionImageWidth: number; drawSelectionImageHeight: number; drawSelectionImageName: string; drawSelectionImageSource?: HTMLImageElement; drawSortImageX: number; drawSortImageY: number; drawSortImageWidth: number; drawSortImageHeight: number; drawSortImageName: string; drawSortImageSource?: HTMLImageElement; renderHeaderType: RenderType; constructor(ctx: Context, colIndex: number, x: number, y: number, width: number, height: number, column: Column); /** * 是否可见,覆盖基类方法,表头是跟y滚动条没有关系的所以不需要加滚动参数 * @returns */ isVerticalVisible(): boolean; /** * 更新样式 */ updateStyle(): void; updateContainer(): void; private updateOffset; update(): void; draw(): void; drawImages(): void; private drawEdge; private drawText; private drawRequired; private drawBg; private updateSelection; private updateSortIcon; getText(): string; /** * 获取样式 */ getOverlayerViewsStyle(): { position: string; overflow: string; left: string; top: string; width: string; height: string; pointerEvents: string; userSelect: string; }; }