aboutsummaryrefslogtreecommitdiffstats
path: root/ui.go
diff options
context:
space:
mode:
authorsam-anthony <samanthony6@protonmail.com>2022-04-10 19:49:06 -0230
committersam-anthony <samanthony6@protonmail.com>2022-04-10 19:49:06 -0230
commit4ed36abe10e629322078a440ae7071132c65da7a (patch)
tree52ba3e7a6beec499cd89c9e1ba5803e022b8291f /ui.go
parent37400eb4b5f5a8ee16ff751c3a629ea836452a49 (diff)
downloadvolute-4ed36abe10e629322078a440ae7071132c65da7a.zip
fix bug in building compressor selection widget tree
Diffstat (limited to 'ui.go')
-rw-r--r--ui.go27
1 files changed, 18 insertions, 9 deletions
diff --git a/ui.go b/ui.go
index 2631cab..33c682d 100644
--- a/ui.go
+++ b/ui.go
@@ -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)
}
}