diff --git a/config.go b/config.go index 01cf6d5f38a65b673424858459ceba4eeb921e45..d751a7ba6e80d43b9e815fdc8ebb0db2bfb5064c 100644 --- a/config.go +++ b/config.go @@ -17,6 +17,7 @@ package main import ( "encoding/json" + "flag" "os" "path" "time" @@ -36,6 +37,7 @@ var ( type systrayConfig struct { LastNotification time.Time Donated time.Time + SelectWateway bool } func parseConfig() (*systrayConfig, error) { @@ -52,9 +54,15 @@ func parseConfig() (*systrayConfig, error) { dec := json.NewDecoder(f) err = dec.Decode(&conf) + conf.parseFlags() return &conf, err } +func (c *systrayConfig) parseFlags() { + flag.BoolVar(&c.SelectWateway, "select-gateway", false, "Enable gateway selection") + flag.Parse() +} + func (c *systrayConfig) hasDonated() bool { return c.Donated.Add(oneMonth).After(time.Now()) } diff --git a/systray.go b/systray.go index 0d37e03772faba04c4d087e136df41946d1b35c4..bc1cab79ab157854eaaa6e59a7332750d3566665 100644 --- a/systray.go +++ b/systray.go @@ -65,6 +65,10 @@ func (bt *bmTray) onReady() { go bt.mCancel.Hide() systray.AddSeparator() + if bt.conf.SelectWateway { + bt.addGateways() + } + mHelp := systray.AddMenuItem("Help ...", "") bt.mDonate = systray.AddMenuItem("Donate ...", "") bt.mHaveDonated = systray.AddMenuItem("... I have donated", "")