tableview.go
func (l *TableView) Draw() {
	if l.hidden {
		return
	}

	l.mtx.RLock()
	defer l.mtx.RUnlock()
	PushAttributes()
	defer PopAttributes()

	x, y := l.Pos()
	w, h := l.Size()

	if l.onBeforeDraw != nil {
		firstCol, firstRow, colCount, rowCount := l.VisibleArea()
		l.onBeforeDraw(firstCol, firstRow, colCount, rowCount)
	}

	bg := RealColor(l.bg, l.Style(), ColorTableBack)
	SetBackColor(bg)
	FillRect(x, y+2, w, h-2, ' ')
	l.drawHeader()
	l.drawScroll()
	l.drawCells()
}
func (l *TableView) Draw() {
	if l.hidden {
		return
	}

	l.mtx.RLock()
	defer l.mtx.RUnlock()
	PushAttributes()
	defer PopAttributes()

	x, y := l.Pos()
	w, h := l.Size()

	if l.onBeforeDraw != nil {
		firstCol, firstRow, colCount, rowCount := l.VisibleArea()
		l.onBeforeDraw(firstCol, firstRow, colCount, rowCount)
	}

	bg := RealColor(l.bg, l.Style(), ColorTableBack)
	SetBackColor(bg)
	FillRect(x, y+2, w, h-2, ' ')
	l.drawHeader()
	l.drawScroll()
	l.drawCells()
}
// Repaint draws the control on its View surface