Custom cell renderer hooks for the main-thread canvas or retained DOM overlay.
- Package
@sheetwrite/core
- Source
packages/core/src/types/render.ts#L51
Members 4
canvas
canvas?(ctx: CanvasRenderingContext2D, c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): void;
dom Creates a fresh, detached element uniquely owned by one retained DOM cell.
dom?(c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): HTMLElement;
update Updates a retained element after its value, style, theme, or geometry changes.
update?(element: HTMLElement, c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): void;
destroy Runs immediately before a retained element is removed or replaced.
destroy?(element: HTMLElement): void;
Declaration
View full TypeScript declaration
export interface CellRenderer {
canvas?(ctx: CanvasRenderingContext2D, c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): void; dom?(c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): HTMLElement; update?(element: HTMLElement, c: CellPaintContextinterface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}interface CellPaintContext {
value: CellScalar;
x: number;
y: number;
w: number;
h: number;
theme: Theme;
style: CellStyle;
}Read-only cell value and screen geometry supplied to a custom renderer.API reference →): void; destroy?(element: HTMLElement): void;