import { Columns3, Focus, PanelLeft, PanelRight, RotateCcw } from 'lucide-react'; import { Button, Dialog } from '../../components/ui'; export type LayoutPreset = 'default' | 'viewport' | 'project' | 'control'; const presets = [ { value: 'default' as const, label: '默认布局', detail: '左右面板均衡显示', icon: Columns3 }, { value: 'viewport' as const, label: '宽视口', detail: '隐藏两侧面板', icon: Focus }, { value: 'project' as const, label: '工程浏览', detail: '加宽工程面板', icon: PanelLeft }, { value: 'control' as const, label: '控制调试', detail: '加宽控制面板', icon: PanelRight }, ]; export function LayoutSettingsDialog({ open, onClose, leftOpen, rightOpen, onLeftOpen, onRightOpen, onPreset, onReset, }: { open: boolean; onClose: () => void; leftOpen: boolean; rightOpen: boolean; onLeftOpen: (value: boolean) => void; onRightOpen: (value: boolean) => void; onPreset: (preset: LayoutPreset) => void; onReset: () => void; }) { return (

布局预设

{presets.map((item) => ( ))}
); } // eslint-disable-next-line react-refresh/only-export-components export function dispatchLayoutWidths(left: number, right: number) { window.dispatchEvent(new CustomEvent('mujoco-layout-widths', { detail: { left, right } })); }