diff --git a/example/main.go b/example/main.go index 055134f..c67983b 100644 --- a/example/main.go +++ b/example/main.go @@ -47,7 +47,7 @@ func onReady() { subMenuTop := systray.AddMenuItem("SubMenu", "SubMenu Test (top)") subMenuMiddle := subMenuTop.AddSubMenuItem("SubMenu - Level 2", "SubMenu Test (middle)") - subMenuMiddle.AddSubMenuItem("SubMenu - Level 3", "SubMenu Test (bottom)") + subMenuBottom := subMenuMiddle.AddSubMenuItem("SubMenu - Level 3", "SubMenu Test (bottom)") subMenuBottom2 := subMenuMiddle.AddSubMenuItem("Panic!", "SubMenu Test (bottom)") mUrl := systray.AddMenuItem("Open UI", "my home") @@ -59,6 +59,20 @@ func onReady() { systray.AddSeparator() mToggle := systray.AddMenuItem("Toggle", "Toggle the Quit button") shown := true + toggle := func() { + if shown { + subMenuBottom.Uncheck() + mQuitOrig.Hide() + mEnabled.Hide() + shown = false + } else { + subMenuBottom.Check() + mQuitOrig.Show() + mEnabled.Show() + shown = true + } + } + for { select { case <-mChange.ClickedCh: @@ -78,16 +92,10 @@ func onReady() { systray.ShowAppWindow("https://www.github.com/getlantern/lantern") case <-subMenuBottom2.ClickedCh: panic("panic button pressed") + case <-subMenuBottom.ClickedCh: + toggle() case <-mToggle.ClickedCh: - if shown { - mQuitOrig.Hide() - mEnabled.Hide() - shown = false - } else { - mQuitOrig.Show() - mEnabled.Show() - shown = true - } + toggle() case <-mQuit.ClickedCh: systray.Quit() fmt.Println("Quit2 now...")