add option for color inversion

This commit is contained in:
Bradley Cicenas 2017-03-15 10:02:46 +10:00
parent 50b4181866
commit e82d77ecb0
4 changed files with 23 additions and 3 deletions

View File

@ -1,6 +1,10 @@
package main package main
import ui "github.com/gizak/termui" import (
"regexp"
ui "github.com/gizak/termui"
)
/* /*
Valid colors: Valid colors:
@ -38,6 +42,17 @@ var ColorMap = map[string]ui.Attribute{
"mbarchart.text.fg": ui.ColorWhite, "mbarchart.text.fg": ui.ColorWhite,
"par.text.fg": ui.ColorWhite, "par.text.fg": ui.ColorWhite,
"par.text.bg": ui.ColorDefault, "par.text.bg": ui.ColorDefault,
"par.text.hi": ui.ColorBlack,
"sparkline.line.fg": ui.ColorGreen, "sparkline.line.fg": ui.ColorGreen,
"sparkline.title.fg": ui.ColorWhite, "sparkline.title.fg": ui.ColorWhite,
} }
func InvertColorMap() {
re := regexp.MustCompile(".*.fg")
for k, _ := range ColorMap {
if re.FindAllString(k, 1) != nil {
ColorMap[k] = ui.ColorBlack
}
}
ColorMap["par.text.hi"] = ui.ColorWhite
}

View File

@ -4,7 +4,7 @@ import (
ui "github.com/gizak/termui" ui "github.com/gizak/termui"
) )
var header = NewCompactHeader() var header *CompactHeader
type CompactGrid struct { type CompactGrid struct {
ui.GridBufferer ui.GridBufferer
@ -16,6 +16,7 @@ type CompactGrid struct {
} }
func NewCompactGrid() *CompactGrid { func NewCompactGrid() *CompactGrid {
header = NewCompactHeader() // init column header
return &CompactGrid{} return &CompactGrid{}
} }

View File

@ -17,7 +17,7 @@ func NewTextCol(s string) *TextCol {
} }
func (w *TextCol) Highlight() { func (w *TextCol) Highlight() {
w.TextFgColor = ui.ColorBlack w.TextFgColor = ui.ThemeAttr("par.text.hi")
w.TextBgColor = ui.ThemeAttr("par.text.fg") w.TextBgColor = ui.ThemeAttr("par.text.fg")
} }

View File

@ -35,6 +35,7 @@ func main() {
var activeOnlyFlag = flag.Bool("a", false, "show active containers only") var activeOnlyFlag = flag.Bool("a", false, "show active containers only")
var sortFieldFlag = flag.String("s", "", "select container sort field") var sortFieldFlag = flag.String("s", "", "select container sort field")
var reverseSortFlag = flag.Bool("r", false, "reverse container sort order") var reverseSortFlag = flag.Bool("r", false, "reverse container sort order")
var invertFlag = flag.Bool("i", false, "invert default colors")
flag.Parse() flag.Parse()
if *versionFlag == true { if *versionFlag == true {
@ -72,6 +73,9 @@ func main() {
} }
// init ui // init ui
if *invertFlag == true {
InvertColorMap()
}
ui.ColorMap = ColorMap // override default colormap ui.ColorMap = ColorMap // override default colormap
if err := ui.Init(); err != nil { if err := ui.Init(); err != nil {
panic(err) panic(err)