diff --git a/docs/en/guide/override.md b/docs/en/guide/override.md index 07c8948..48a0101 100644 --- a/docs/en/guide/override.md +++ b/docs/en/guide/override.md @@ -18,3 +18,13 @@ Usage: ```javascript instance.override.paste = (evt: ClipboardEvent) => void ``` + +## copy + +Feature: Override internal copy function + +Usage: + +```javascript +instance.override.copy = () => void +``` diff --git a/docs/guide/override.md b/docs/guide/override.md index 74bc20f..4786475 100644 --- a/docs/guide/override.md +++ b/docs/guide/override.md @@ -18,3 +18,13 @@ instance.override.overrideFunction = ()=>{} ```javascript instance.override.paste = (evt: ClipboardEvent) => void ``` + +## copy + +功能:重写复制方法 + +用法: + +```javascript +instance.override.copy = () => void +``` diff --git a/src/editor/core/event/handlers/copy.ts b/src/editor/core/event/handlers/copy.ts index aae8c04..cc0bdcb 100644 --- a/src/editor/core/event/handlers/copy.ts +++ b/src/editor/core/event/handlers/copy.ts @@ -3,6 +3,12 @@ import { CanvasEvent } from '../CanvasEvent' export function copy(host: CanvasEvent) { const draw = host.getDraw() + // 自定义粘贴事件 + const { copy } = draw.getOverride() + if (copy) { + copy() + return + } const rangeManager = draw.getRange() // 光标闭合时复制整行 const copyElementList = rangeManager.getIsCollapsed() diff --git a/src/editor/core/override/Override.ts b/src/editor/core/override/Override.ts index ab179ae..7147978 100644 --- a/src/editor/core/override/Override.ts +++ b/src/editor/core/override/Override.ts @@ -1,3 +1,4 @@ export class Override { public paste: ((evt: ClipboardEvent) => void) | undefined + public copy: (() => void) | undefined }