1
0
mirror of https://github.com/taigrr/wtf synced 2025-01-18 04:03:14 -08:00
wtf/power/widget.go
Chris Cummer 9f1bad6571 Closes #52. Add Power module
This module displaysw which source is providing power (AC or battery)
and for the battery displays the current charge capacity, how long it
will last, and the battery state.
2018-05-24 22:01:55 -07:00

46 lines
750 B
Go

package power
import (
"fmt"
"github.com/olebedev/config"
"github.com/senorprogrammer/wtf/wtf"
)
// Config is a pointer to the global config object
var Config *config.Config
type Widget struct {
wtf.TextWidget
Battery *Battery
}
func NewWidget() *Widget {
widget := Widget{
TextWidget: wtf.NewTextWidget(" ⚡️ Power ", "power", false),
Battery: NewBattery(),
}
widget.View.SetWrap(true)
return &widget
}
func (widget *Widget) Refresh() {
if widget.Disabled() {
return
}
widget.UpdateRefreshedAt()
widget.Battery.Refresh()
widget.View.Clear()
str := ""
str = str + fmt.Sprintf(" %10s: %s\n", "Source", powerSource())
str = str + "\n"
str = str + widget.Battery.String()
fmt.Fprintf(widget.View, "%s", str)
}