mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-03 16:39:35 +08:00
99 lines
2.7 KiB
Go
99 lines
2.7 KiB
Go
//go:build darwin
|
|
// +build darwin
|
|
|
|
package darwin
|
|
|
|
import (
|
|
"github.com/wailsapp/wails/v2/pkg/menu"
|
|
)
|
|
|
|
//func (w *Window) SetApplicationMenu(menu *menu.Menu) {
|
|
//w.applicationMenu = menu
|
|
//processMenu(w, menu)
|
|
//}
|
|
|
|
//func processMenu(window *Window, menu *menu.Menu) {
|
|
//mainMenu := window.NewMenu()
|
|
//for _, menuItem := range menu.Items {
|
|
// submenu := mainMenu.AddSubMenu(menuItem.Label)
|
|
// for _, menuItem := range menuItem.SubMenu.Items {
|
|
// processMenuItem(submenu, menuItem)
|
|
// }
|
|
//}
|
|
//mainMenu.Show()
|
|
//}
|
|
|
|
//func processMenuItem(parent *winc.MenuItem, menuItem *menu.MenuItem) {
|
|
// if menuItem.Hidden {
|
|
// return
|
|
// }
|
|
// switch menuItem.Type {
|
|
// case menu.SeparatorType:
|
|
// parent.AddSeparator()
|
|
// case menu.TextType:
|
|
// shortcut := acceleratorToWincShortcut(menuItem.Accelerator)
|
|
// newItem := parent.AddItem(menuItem.Label, shortcut)
|
|
// if menuItem.Tooltip != "" {
|
|
// newItem.SetToolTip(menuItem.Tooltip)
|
|
// }
|
|
// if menuItem.Click != nil {
|
|
// newItem.OnClick().Bind(func(e *winc.Event) {
|
|
// menuItem.Click(&menu.CallbackData{
|
|
// MenuItem: menuItem,
|
|
// })
|
|
// })
|
|
// }
|
|
// newItem.SetEnabled(!menuItem.Disabled)
|
|
//
|
|
// case menu.CheckboxType:
|
|
// shortcut := acceleratorToWincShortcut(menuItem.Accelerator)
|
|
// newItem := parent.AddItem(menuItem.Label, shortcut)
|
|
// newItem.SetCheckable(true)
|
|
// newItem.SetChecked(menuItem.Checked)
|
|
// if menuItem.Tooltip != "" {
|
|
// newItem.SetToolTip(menuItem.Tooltip)
|
|
// }
|
|
// if menuItem.Click != nil {
|
|
// newItem.OnClick().Bind(func(e *winc.Event) {
|
|
// toggleCheckBox(menuItem)
|
|
// menuItem.Click(&menu.CallbackData{
|
|
// MenuItem: menuItem,
|
|
// })
|
|
// })
|
|
// }
|
|
// newItem.SetEnabled(!menuItem.Disabled)
|
|
// addCheckBoxToMap(menuItem, newItem)
|
|
// case menu.RadioType:
|
|
// shortcut := acceleratorToWincShortcut(menuItem.Accelerator)
|
|
// newItem := parent.AddItemRadio(menuItem.Label, shortcut)
|
|
// newItem.SetCheckable(true)
|
|
// newItem.SetChecked(menuItem.Checked)
|
|
// if menuItem.Tooltip != "" {
|
|
// newItem.SetToolTip(menuItem.Tooltip)
|
|
// }
|
|
// if menuItem.Click != nil {
|
|
// newItem.OnClick().Bind(func(e *winc.Event) {
|
|
// toggleRadioItem(menuItem)
|
|
// menuItem.Click(&menu.CallbackData{
|
|
// MenuItem: menuItem,
|
|
// })
|
|
// })
|
|
// }
|
|
// newItem.SetEnabled(!menuItem.Disabled)
|
|
// addRadioItemToMap(menuItem, newItem)
|
|
// case menu.SubmenuType:
|
|
// submenu := parent.AddSubMenu(menuItem.Label)
|
|
// for _, menuItem := range menuItem.SubMenu.Items {
|
|
// processMenuItem(submenu, menuItem)
|
|
// }
|
|
// }
|
|
//}
|
|
|
|
func (f *Frontend) MenuSetApplicationMenu(menu *menu.Menu) {
|
|
//f.mainWindow.SetApplicationMenu(menu)
|
|
}
|
|
|
|
func (f *Frontend) MenuUpdateApplicationMenu() {
|
|
//processMenu(f.mainWindow, f.mainWindow.applicationMenu)
|
|
}
|