mthb-canvas-table
Version:
76 lines (75 loc) • 2.84 kB
TypeScript
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;
}