UNPKG

mthb-canvas-table

Version:
76 lines (75 loc) 2.84 kB
import { ICanvasContext2D } from "../../share/CanvasContext2D"; import { Align, CustomFilter, CustomSort, ICanvasTableColumn, ICanvasTableColumnConf, ICanvasTableColumnSort, Sort } from "../../share/CanvasTableColum"; import { CanvasTableMode } from "../../share/CanvasTableMode"; import { CanvasTableRowItem } from "../../share/CustomCanvasIndex"; import { CustomCanvasTable, ICanvasTableConfig, ICanvasTableGroup } from "./../../share/CustomCanvasTable"; export { ICanvasTableColumnConf, Align, Sort, CanvasTableRowItem, ICanvasTableGroup, ICanvasTableColumnSort, CustomSort, CustomFilter, CustomCanvasTable, ICanvasContext2D, CanvasTableMode }; /** * CanvasTable * draw table in canvas * * ```typescript * import { CanvasTable, Align } from "mthb-canvas-table"; * * const col:CanvasTableColumnConf[] = [ * { * header: "Id", * field: "__rownum__", * width: 80, * align: Align.center * }, * { * header: "Name", * field: "name", * width: 200 * }, * { * header: "LastName", * field: "lastName", * width: 200 * } * ]; * * let data = [{name: "Magni", lastName: "Birgisson"}, {name: "Dagrún", lastName: "Þorsteinsdóttir"}]; * * /// <canvas id="canvas" style="width:400px; height: 400px"> </canvas> * const canvasTable = new CanvasTable("canvas", col, data); * ``` * @typeparam T - Type of objects the list contains */ export declare class CanvasTable<T = any> extends CustomCanvasTable<T> { private readonly canvas; private canvasTableEdit?; /** * Constructor of CanvasTable * @param canvas id of canvas or htmlCanvasElemnt * @param col columns * @param data array of data * @param config config */ constructor(canvas: string | HTMLCanvasElement, col: Array<ICanvasTableColumnConf<T>>, data?: T[], config?: ICanvasTableConfig); updateColumns(col: Array<ICanvasTableColumnConf<T>>): void; resize(): void; protected updateForEdit(col: ICanvasTableColumn<T>, i: number): void; protected scrollViewChange(): void; protected askForExtentedMouseMoveAndMaouseUp(): void; protected askForNormalMouseMoveAndMaouseUp(): void; protected setCursor(cursor: string): void; protected setCanvasSize(width: number, height: number): void; private canvasFocus; private canvasBlur; private canvasKeydown; private canvasTouchStart; private canvasTouchMove; private canvasTouchEnd; private canvasDblClick; private canvasWheel; private canvasMouseDown; private canvasMouseLeave; private canvasMouseUp; private canvasMouseUpExtended; private canvasMouseMoveExtended; private canvasMouseMove; private onEditRemove; private updateEditLocation; }