func (w *CursesWindow) CPrint(color ColorPair, attr Attr, text string) { p, a := _colorFn(color, attr) C.wcolor_set(w.impl, p, nil) C.wattron(w.impl, a) w.Print(text) C.wattroff(w.impl, a) C.wcolor_set(w.impl, 0, nil) }
func (w *Window) CPrint(pair ColorPair, attr Attr, text string) { p, a := _colorFn(pair, attr) C.wcolor_set(w.win(), p, nil) C.wattron(w.win(), a) w.Print(text) C.wattroff(w.win(), a) C.wcolor_set(w.win(), 0, nil) }
func (w *CursesWindow) CFill(fg Color, bg Color, attr Attr, str string) FillReturn { index := ColorPair{fg, bg, -1}.index() C.wcolor_set(w.impl, C.short(index), nil) C.wattron(w.impl, C.int(attr)) ret := w.Fill(str) C.wattroff(w.impl, C.int(attr)) C.wcolor_set(w.impl, 0, nil) return ret }
func (w *Window) CFill(str string, fg Color, bg Color, attr Attr) bool { pair := PairFor(fg, bg) C.wcolor_set(w.win(), C.short(pair), nil) C.wattron(w.win(), C.int(attr)) ret := w.Fill(str) C.wattroff(w.win(), C.int(attr)) C.wcolor_set(w.win(), 0, nil) return ret }
func (r *FullscreenRenderer) NewWindow(top int, left int, width int, height int, border bool) Window { win := C.newwin(C.int(height), C.int(width), C.int(top), C.int(left)) if r.theme != nil { C.wbkgd(win, C.chtype(C.COLOR_PAIR(C.int(ColNormal.index())))) } if border { pair, attr := _colorFn(ColBorder, 0) C.wcolor_set(win, pair, nil) C.wattron(win, attr) C.box(win, 0, 0) C.wattroff(win, attr) C.wcolor_set(win, 0, nil) } return &CursesWindow{ impl: win, top: top, left: left, width: width, height: height, } }
func NewWindow(top int, left int, width int, height int, border bool) *Window { win := C.newwin(C.int(height), C.int(width), C.int(top), C.int(left)) if _color { C.wbkgd(win, C.chtype(C.COLOR_PAIR(C.int(ColNormal)))) } if border { pair, attr := _colorFn(ColBorder, 0) C.wcolor_set(win, pair, nil) C.wattron(win, attr) C.box(win, 0, 0) C.wattroff(win, attr) C.wcolor_set(win, 0, nil) } return &Window{ impl: (*WindowImpl)(win), Top: top, Left: left, Width: width, Height: height, } }
// Color sets the forground/background color pair for the entire window func (w *Window) Color(pair int16) { C.wcolor_set(w.win, C.short(ColorPair(pair)), nil) }
func (w *Window) Color_set(pair int) error { if C.wcolor_set(w.win, C.short(pair), nil) == ERR { return Error } return nil }