aboutsummaryrefslogtreecommitdiffstats
path: root/ui.go
diff options
context:
space:
mode:
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)
}
}