package ui import ( "fyne.io/fyne/v2" "fyne.io/fyne/v2/theme" ) type mainMenu struct { *fyne.MainMenu sysMenu *fyne.Menu startMenu *fyne.MenuItem //开始 configMenu *fyne.MenuItem //配置 sceneMenu *fyne.MenuItem //场景 quite *fyne.MenuItem //工具 toolMenu *fyne.Menu importMenu *fyne.MenuItem //导入配置 exportMenu *fyne.MenuItem //导出配置 clearMenu *fyne.MenuItem //清空数据 } func newMainMenu() *mainMenu { var mm mainMenu //退出 mm.quite = fyne.NewMenuItem("退出", globalWindow.quiteHandle) mm.quite.Icon = theme.LogoutIcon() mm.quite.IsQuit = true // 开始 mm.startMenu = fyne.NewMenuItem("开始", globalWindow.startContainer) mm.startMenu.Icon = theme.FileIcon() // 配置 mm.configMenu = fyne.NewMenuItem("配置", globalWindow.configContainer) mm.configMenu.Icon = theme.FileTextIcon() //场景 mm.sceneMenu = fyne.NewMenuItem("场景", globalWindow.newSceneContainer) mm.sceneMenu.Icon = theme.FileTextIcon() // AI mm.sysMenu = fyne.NewMenu("AI") mm.sysMenu.Items = append(mm.sysMenu.Items, mm.startMenu, mm.configMenu, mm.sceneMenu, fyne.NewMenuItemSeparator(), mm.quite) // 导入配置 mm.importMenu = fyne.NewMenuItem("导入配置", globalWindow.ImportConfigWindow) mm.importMenu.Icon = theme.FileApplicationIcon() mm.exportMenu = fyne.NewMenuItem("导出配置", globalWindow.ExportConfigWindow) mm.exportMenu.Icon = theme.FileApplicationIcon() mm.clearMenu = fyne.NewMenuItem("清空配置", globalWindow.ClearData) mm.clearMenu.Icon = theme.FileApplicationIcon() // 工具 mm.toolMenu = fyne.NewMenu("工具") mm.toolMenu.Items = append(mm.toolMenu.Items, mm.importMenu, mm.exportMenu, mm.clearMenu, ) mm.MainMenu = fyne.NewMainMenu( mm.sysMenu, mm.toolMenu, ) return &mm }