From 5e2f0ab6df6e033e754e1686ebc5863d8b7771f1 Mon Sep 17 00:00:00 2001 From: MTrun <1262327911@qq.com> Date: Fri, 4 Feb 2022 13:22:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B8=85=E7=A9=BA=E5=89=AA=E8=B4=B4?= =?UTF-8?q?=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/plugins/icon.ts | 7 ++-- src/views/chart/hooks/useContextMenu.hook.ts | 38 ++++++++++++++------ 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/plugins/icon.ts b/src/plugins/icon.ts index 3d9b3c55..a91b699b 100644 --- a/src/plugins/icon.ts +++ b/src/plugins/icon.ts @@ -56,7 +56,8 @@ import { DicomOverlay as DicomOverlayIcon, UpToTop as UpToTopIcon, DownToBottom as DownToBottomIcon, - StackedMove as StackedMoveIcon + StackedMove as StackedMoveIcon, + PaintBrush as PaintBrushIcon } from '@vicons/carbon' const ionicons5 = { @@ -171,7 +172,9 @@ const carbon = { // 置底 DownToBottomIcon, // 移动 - StackedMoveIcon + StackedMoveIcon, + // 清空剪切板(刷子) + PaintBrushIcon } // https://www.xicons.org/#/ 还有很多 diff --git a/src/views/chart/hooks/useContextMenu.hook.ts b/src/views/chart/hooks/useContextMenu.hook.ts index 4ac70ddb..6d443c82 100644 --- a/src/views/chart/hooks/useContextMenu.hook.ts +++ b/src/views/chart/hooks/useContextMenu.hook.ts @@ -4,8 +4,15 @@ import { CreateComponentType } from '@/packages/index.d' import { renderIcon, loadingError } from '@/utils' import { icon } from '@/plugins' -const { CopyIcon, CutIcon, ClipboardOutlineIcon, TrashIcon, ChevronDownIcon, ChevronUpIcon } = icon.ionicons5 -const { UpToTopIcon, DownToBottomIcon } = icon.carbon +const { + CopyIcon, + CutIcon, + ClipboardOutlineIcon, + TrashIcon, + ChevronDownIcon, + ChevronUpIcon +} = icon.ionicons5 +const { UpToTopIcon, DownToBottomIcon, PaintBrushIcon } = icon.carbon const chartEditStore = useChartEditStoreStore() @@ -17,7 +24,8 @@ export enum MenuEnum { TOP = 'top', BOTTOM = 'bottom', UP = 'up', - DOWN = 'down' + DOWN = 'down', + CLEAR = 'clear' } export interface MenuOptionsItemType { @@ -26,6 +34,8 @@ export interface MenuOptionsItemType { key: MenuEnum | string icon?: Function fnHandle?: Function + disabled?: boolean + hidden?: boolean } // * 默认选项 @@ -34,19 +44,19 @@ const defaultOptions: MenuOptionsItemType[] = [ label: '复制', key: MenuEnum.COPY, icon: renderIcon(CopyIcon), - fnHandle: chartEditStore.setCopy + fnHandle: chartEditStore.setCopy, }, { label: '剪切', key: MenuEnum.CUT, icon: renderIcon(CutIcon), - fnHandle: chartEditStore.setCut + fnHandle: chartEditStore.setCut, }, { label: '粘贴', key: MenuEnum.PARSE, icon: renderIcon(ClipboardOutlineIcon), - fnHandle: chartEditStore.setParse + fnHandle: chartEditStore.setParse, }, { type: 'divider', @@ -56,35 +66,41 @@ const defaultOptions: MenuOptionsItemType[] = [ label: '置顶', key: MenuEnum.TOP, icon: renderIcon(UpToTopIcon), - fnHandle: chartEditStore.setTop + fnHandle: chartEditStore.setTop, }, { label: '置底', key: MenuEnum.BOTTOM, icon: renderIcon(DownToBottomIcon), - fnHandle: chartEditStore.setBottom + fnHandle: chartEditStore.setBottom, }, { label: '上移一层', key: MenuEnum.UP, icon: renderIcon(ChevronUpIcon), - fnHandle: chartEditStore.setUp + fnHandle: chartEditStore.setUp, }, { label: '下移一层', key: MenuEnum.DOWN, icon: renderIcon(ChevronDownIcon), - fnHandle: chartEditStore.setDown + fnHandle: chartEditStore.setDown, }, { type: 'divider', key: 'd2' }, + { + label: '清空剪贴板', + key: MenuEnum.CLEAR, + icon: renderIcon(PaintBrushIcon), + fnHandle: chartEditStore.setRecordChart, + }, { label: '删除', key: MenuEnum.DELETE, icon: renderIcon(TrashIcon), - fnHandle: chartEditStore.removeComponentList + fnHandle: chartEditStore.removeComponentList, } ]