diff options
| author | sam-anthony <samanthony6@protonmail.com> | 2022-04-10 19:49:06 -0230 |
|---|---|---|
| committer | sam-anthony <samanthony6@protonmail.com> | 2022-04-10 19:49:06 -0230 |
| commit | 4ed36abe10e629322078a440ae7071132c65da7a (patch) | |
| tree | 52ba3e7a6beec499cd89c9e1ba5803e022b8291f /ui.go | |
| parent | 37400eb4b5f5a8ee16ff751c3a629ea836452a49 (diff) | |
| download | volute-4ed36abe10e629322078a440ae7071132c65da7a.zip | |
fix bug in building compressor selection widget tree
Diffstat (limited to 'ui.go')
| -rw-r--r-- | ui.go | 27 |
1 files changed, 18 insertions, 9 deletions
@@ -279,20 +279,29 @@ var compressorTree []g.Widget func init() { compressors := compressor.Compressors() - for manufacturer := range compressors { - manufacturerNode := g.TreeNode(manufacturer) - for series := range compressors[manufacturer] { - seriesNode := g.TreeNode(series) - for model, c := range compressors[manufacturer][series] { - seriesNode = seriesNode.Layout( - g.Selectable(model).OnClick(func() { + for man := range compressors { + man := man // Manufacturer + var serNodes []g.Widget + for ser := range compressors[man] { + ser := ser // Series + var modNodes []g.Widget + for mod, c := range compressors[man][ser] { + mod := mod // Model + c := c // Compressor + modNodes = append( + modNodes, + g.Selectable(mod).OnClick(func() { go setCompressor(c) }), ) } - manufacturerNode = manufacturerNode.Layout(seriesNode) + serNodes = append( + serNodes, + g.TreeNode(ser).Layout(modNodes...), + ) } - compressorTree = append(compressorTree, manufacturerNode) + manNode := g.TreeNode(man).Layout(serNodes...) + compressorTree = append(compressorTree, manNode) } } |