UNPKG

psyche-editor-render

Version:

编辑器渲染器

57 lines (56 loc) 1.58 kB
import Handler from './Handler'; type TransactionType = 'redo' | 'undo' | 'start' | 'modified' | 'fill' | 'stroke' | 'strokeWidth' | 'strokeDash' | 'strokeCap' | 'strokeJoin' | 'shadow' | 'effect' | 'property' | 'filter' | 'crop' | 'clipPath' | 'delete' | 'copy' | 'cut' | 'replace' | 'toGroup' | 'unGroup' | 'align' | 'arrow' | 'addImg' | 'addText' | 'addJson' | 'replaceImg' | 'resetEffect' | 'layer'; interface ITransactionEvent { json: string; type: TransactionType; } /** * 记录画布用户的操作记录,可以执行redo/undo操作 */ declare class TransactionHandler { /** @ignore */ handler: Handler; /** @ignore */ redos: ITransactionEvent[]; /** @ignore */ undos: ITransactionEvent[]; /** @ignore */ state: string; /** @ignore */ constructor(handler: Handler); /** @ignore */ initialize(): void; /** * 触发画布的存储操作 * @ignore * @param type 保存的类型 */ save(type: TransactionType): void; /** * 判断是否有undo操作 * @returns boolean */ hasUndo(): boolean; /** * 判断是否有redo操作 * @returns boolean */ hasRedo(): boolean; /** * 触发画布的undo操作 * @returns */ undo(): void; /** * 触发画布的redo操作 * @returns */ redo(): void; /** * undo/redo时候的画布重绘函数 * @ignore * @param transaction - 重绘时候的数据 */ replay(transaction: ITransactionEvent): void; } export default TransactionHandler;