You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

111 lines
3.0 KiB

import { renderIcon } from '@/utils/webutils.ts'
import { defineMenu } from '@/runtime/DefineMenu.ts'
import SvgCode from '@/components/icons/SvgCode'
import { quickCopyByMouse } from '@/model/ModelUtils.ts'
export default defineMenu((menus) => {
menus.insertChildren('modelFile',
{
name: 'modelFile',
label: '编辑',
icon: renderIcon('ModelFile'),
order: 1
},
[
{
name: 'find', label: '全局查找', icon: SvgCode.find, order: 1, tip: 'Ctrl+H',
click: () => {
system.msg('全局查找')
}
},
{
name: 'resource', label: '资源定位', icon: SvgCode.find, order: 1.1, tip: 'Ctrl+Shift+R', divided: true,
click: () => {
system.msg('资源定位')
}
},
{
name: 'undo', label: '撤销', icon: SvgCode.undo, order: 2, tip: 'Ctrl+Z', disabled: true,
click: () => {
system.msg('撤销')
}
},
{
name: 'redo', label: '重做', icon: SvgCode.redo, order: 3, tip: 'Ctrl+Y', divided: true,
click() {
system.msg('重做')
}
},
{
name: 'copy', label: '复制', icon: SvgCode.copy, order: 4, tip: 'Ctrl+C',
click() {
system.msg('复制')
}
},
{
name: 'cut', label: '剪切', icon: SvgCode.cut, order: 5, tip: 'Ctrl+X',
click() {
system.msg('剪切')
}
},
{
name: 'paste', label: '粘贴', icon: SvgCode.paste, order: 6, tip: 'Ctrl+V',
click() {
system.msg('粘贴')
}
},
{
name: 'delete', label: '删除', icon: SvgCode.delete, order: 7, tip: 'key-delete', divided: true,
click() {
system.msg('删除')
}
},
{
name: 'edit_property', label: '快速转换', order: 8,
children: [
{
name: 'edit_property_esc', label: '取消', order: 1, tip: 'key-esc',
click() {
system.msg('ESC')
}
},
{
name: 'edit_property_rotate', label: '转向90度', order: 1, tip: 'key-r',
click() {
system.msg('转向90度')
}
},
{
name: 'edit_append', label: '快速添加', tip: 'key-q',
click() {
quickCopyByMouse()
}
},
{
name: 'edit_up', label: '上移', tip: 'key-up',
click() {
system.msg('↑')
}
},
{
name: 'edit_down', label: '下移', tip: 'key-down',
click() {
system.msg('↓')
}
},
{
name: 'edit_left', label: '左移', tip: 'key-left',
click() {
system.msg('←')
}
},
{
name: 'edit_right', label: '右移', tip: 'key-right',
click() {
system.msg('→')
}
}
]
}
])
})