termui/_examples/gauge.go

85 lines
1.6 KiB
Go
Raw Normal View History

2017-01-14 14:07:43 +08:00
// Copyright 2017 Zack Guo <zack.y.guo@gmail.com>. All rights reserved.
2015-03-21 04:21:50 +08:00
// Use of this source code is governed by a MIT license that can
// be found in the LICENSE file.
// +build ignore
package main
2018-09-07 05:48:09 +08:00
import ui "github.com/gizak/termui"
func main() {
err := ui.Init()
if err != nil {
panic(err)
}
2018-09-07 05:48:09 +08:00
defer ui.Close()
2018-09-07 05:48:09 +08:00
g0 := ui.NewGauge()
g0.Percent = 40
g0.Width = 50
g0.Height = 3
2015-10-08 02:25:59 +08:00
g0.BorderLabel = "Slim Gauge"
2018-09-07 05:48:09 +08:00
g0.BarColor = ui.ColorRed
g0.BorderFg = ui.ColorWhite
g0.BorderLabelFg = ui.ColorCyan
2018-09-07 05:48:09 +08:00
gg := ui.NewBlock()
gg.Width = 50
gg.Height = 5
gg.Y = 12
2015-10-08 02:25:59 +08:00
gg.BorderLabel = "TEST"
gg.Align()
2018-09-07 05:48:09 +08:00
g2 := ui.NewGauge()
g2.Percent = 60
g2.Width = 50
g2.Height = 3
2018-09-07 05:48:09 +08:00
g2.PercentColor = ui.ColorBlue
g2.Y = 3
2015-10-08 02:25:59 +08:00
g2.BorderLabel = "Slim Gauge"
2018-09-07 05:48:09 +08:00
g2.BarColor = ui.ColorYellow
g2.BorderFg = ui.ColorWhite
2018-09-07 05:48:09 +08:00
g1 := ui.NewGauge()
g1.Percent = 30
g1.Width = 50
g1.Height = 5
g1.Y = 6
2015-10-08 02:25:59 +08:00
g1.BorderLabel = "Big Gauge"
2018-09-07 05:48:09 +08:00
g1.PercentColor = ui.ColorYellow
g1.BarColor = ui.ColorGreen
g1.BorderFg = ui.ColorWhite
g1.BorderLabelFg = ui.ColorMagenta
2018-09-07 05:48:09 +08:00
g3 := ui.NewGauge()
g3.Percent = 50
g3.Width = 50
g3.Height = 3
g3.Y = 11
2015-10-08 02:25:59 +08:00
g3.BorderLabel = "Gauge with custom label"
g3.Label = "{{percent}}% (100MBs free)"
2018-09-07 05:48:09 +08:00
g3.LabelAlign = ui.AlignRight
2018-09-07 05:48:09 +08:00
g4 := ui.NewGauge()
g4.Percent = 50
g4.Width = 50
g4.Height = 3
g4.Y = 14
2015-10-29 09:19:35 +08:00
g4.BorderLabel = "Gauge"
g4.Label = "Gauge with custom highlighted label"
2018-09-07 05:48:09 +08:00
g4.PercentColor = ui.ColorYellow
g4.BarColor = ui.ColorGreen
g4.PercentColorHighlighted = ui.ColorBlack
2018-09-07 05:48:09 +08:00
ui.Render(g0, g1, g2, g3, g4)
2018-11-29 10:19:34 +08:00
for {
e := <-ui.PollEvent()
switch e.ID {
case "q", "<C-c>":
return
}
}
}