25 lines
789 B
TypeScript

// 预览应用 — Vue 组件化
import { h, render } from 'vue'
import { Apps, stdMenus } from '../../composables/useApps'
import PreviewComponent from './Preview.vue'
export const PreviewApp = {
id: 'preview', name: '预览', icon: '/assets/icons/preview.svg',
w: 720, h: 540, minW: 380, minH: 280, singleton: false,
menus(win: any) {
const st = win?.appState
return stdMenus(this, {
view: [
{ label: '放大', key: '⌘+', action: () => st?.zoom(0.2) },
{ label: '缩小', key: '⌘−', action: () => st?.zoom(-0.2) },
{ label: '实际大小', key: '⌘0', action: () => st?.zoomReset() },
]
})
},
render(win: any) {
const vnode = h(PreviewComponent, { win })
render(vnode, win.body)
},
}
Apps.register(PreviewApp)