diff --git a/v2/pkg/menu/README.md b/v2/pkg/menu/README.md new file mode 100644 index 000000000..7c66a1051 --- /dev/null +++ b/v2/pkg/menu/README.md @@ -0,0 +1,10 @@ +# Menus + +Menu support is heavily inspired by Electron's approach. + +## Features + + * Supports Text, Checkbox, Radio, Submenu and Separator + * Radio groups are defined as any number of adjacent radio items + * UTF-8 menu labels + * UTF-8 menu IDs \ No newline at end of file diff --git a/v2/test/kitchensink/dialog.go b/v2/test/kitchensink/dialog.go index b784ce582..802b162ad 100644 --- a/v2/test/kitchensink/dialog.go +++ b/v2/test/kitchensink/dialog.go @@ -28,7 +28,9 @@ func (l *Dialog) WailsInit(runtime *wails.Runtime) error { // m.Checked = false // runtime.Menu.Update() }) - + l.runtime.Menu.On("😀option-1", func(m *menu.MenuItem) { + fmt.Printf("We can use UTF-8 IDs: %s\n", m.Label) + }) return nil } diff --git a/v2/test/kitchensink/main.go b/v2/test/kitchensink/main.go index dd9a7c4bc..bba6d6dfc 100644 --- a/v2/test/kitchensink/main.go +++ b/v2/test/kitchensink/main.go @@ -47,9 +47,9 @@ func main() { Checked: true, }, menu.Separator(), - menu.Radio("Option 1", "option-1", true), - menu.Radio("Option 2", "option-2", false), - menu.Radio("Option 3", "option-3", false), + menu.Radio("😀 Option 1", "😀option-1", true), + menu.Radio("😺 Option 2", "option-2", false), + menu.Radio("❤️ Option 3", "option-3", false), }), })