func initPairs(theme *ColorTheme, black bool) { fg := C.short(theme.Fg) bg := C.short(theme.Bg) if black { bg = C.COLOR_BLACK } else if theme.UseDefault { fg = -1 bg = -1 C.use_default_colors() } if theme.UseDefault { FG = -1 BG = -1 } else { FG = int(fg) BG = int(bg) C.assume_default_colors(C.int(theme.Fg), C.int(bg)) } CurrentFG = int(theme.Current) DarkBG = int(theme.DarkBg) darkBG := C.short(DarkBG) C.init_pair(ColPrompt, C.short(theme.Prompt), bg) C.init_pair(ColMatch, C.short(theme.Match), bg) C.init_pair(ColCurrent, C.short(theme.Current), darkBG) C.init_pair(ColCurrentMatch, C.short(theme.CurrentMatch), darkBG) C.init_pair(ColSpinner, C.short(theme.Spinner), bg) C.init_pair(ColInfo, C.short(theme.Info), bg) C.init_pair(ColCursor, C.short(theme.Cursor), darkBG) C.init_pair(ColSelected, C.short(theme.Selected), darkBG) C.init_pair(ColHeader, C.short(theme.Header), bg) }
func initPairs(baseTheme *ColorTheme, theme *ColorTheme, black bool) { fg := override(baseTheme.Fg, theme.Fg) bg := override(baseTheme.Bg, theme.Bg) if black { bg = C.COLOR_BLACK } else if theme.UseDefault { fg = colDefault bg = colDefault C.use_default_colors() } if theme.UseDefault { FG = colDefault BG = colDefault } else { FG = int(fg) BG = int(bg) C.assume_default_colors(C.int(override(baseTheme.Fg, theme.Fg)), C.int(bg)) } currentFG := override(baseTheme.Current, theme.Current) darkBG := override(baseTheme.DarkBg, theme.DarkBg) CurrentFG = int(currentFG) DarkBG = int(darkBG) C.init_pair(ColPrompt, override(baseTheme.Prompt, theme.Prompt), bg) C.init_pair(ColMatch, override(baseTheme.Match, theme.Match), bg) C.init_pair(ColCurrent, currentFG, darkBG) C.init_pair(ColCurrentMatch, override(baseTheme.CurrentMatch, theme.CurrentMatch), darkBG) C.init_pair(ColSpinner, override(baseTheme.Spinner, theme.Spinner), bg) C.init_pair(ColInfo, override(baseTheme.Info, theme.Info), bg) C.init_pair(ColCursor, override(baseTheme.Cursor, theme.Cursor), darkBG) C.init_pair(ColSelected, override(baseTheme.Selected, theme.Selected), darkBG) C.init_pair(ColHeader, override(baseTheme.Header, theme.Header), bg) C.init_pair(ColBorder, override(baseTheme.Border, theme.Border), bg) }
func initPairs(theme *ColorTheme) { C.assume_default_colors(C.int(theme.Fg), C.int(theme.Bg)) for _, pair := range []ColorPair{ ColNormal, ColPrompt, ColMatch, ColCurrent, ColCurrentMatch, ColSpinner, ColInfo, ColCursor, ColSelected, ColHeader, ColBorder} { C.init_pair(C.short(pair.index()), C.short(pair.Fg()), C.short(pair.Bg())) } }
func initPairs(theme *ColorTheme) { C.assume_default_colors(C.int(theme.Fg), C.int(theme.Bg)) initPair := func(group ColorPair, fg Color, bg Color) { C.init_pair(C.short(group), C.short(fg), C.short(bg)) } initPair(ColNormal, theme.Fg, theme.Bg) initPair(ColPrompt, theme.Prompt, theme.Bg) initPair(ColMatch, theme.Match, theme.Bg) initPair(ColCurrent, theme.Current, theme.DarkBg) initPair(ColCurrentMatch, theme.CurrentMatch, theme.DarkBg) initPair(ColSpinner, theme.Spinner, theme.Bg) initPair(ColInfo, theme.Info, theme.Bg) initPair(ColCursor, theme.Cursor, theme.DarkBg) initPair(ColSelected, theme.Selected, theme.DarkBg) initPair(ColHeader, theme.Header, theme.Bg) initPair(ColBorder, theme.Border, theme.Bg) }