1
0
mirror of https://github.com/taigrr/wtf synced 2025-01-18 04:03:14 -08:00

Generic PadRow function added

This commit is contained in:
Chris Cummer 2018-04-23 09:35:23 -07:00
parent 3de253bd0d
commit 62c9e3892a
2 changed files with 18 additions and 14 deletions

View File

@ -2,8 +2,10 @@ package todo
import ( import (
"fmt" "fmt"
"strings" //"strings"
//"github.com/gdamore/tcell" //"github.com/gdamore/tcell"
"github.com/senorprogrammer/wtf/wtf"
) )
const checkWidth = 4 const checkWidth = 4
@ -32,20 +34,8 @@ func (widget *Widget) display() {
item.Text, item.Text,
) )
str = widget.padLine(str, item) + "\n" str = str + wtf.PadRow((4+len(item.Text)), widget.View) + "\n"
} }
fmt.Fprintf(widget.View, "%s", str) fmt.Fprintf(widget.View, "%s", str)
} }
// Pad with spaces to get full-line highlighting
func (widget *Widget) padLine(str string, item *Item) string {
_, _, w, _ := widget.View.GetInnerRect()
padSize := w - checkWidth - len(item.Text)
if padSize < 0 {
padSize = 0
}
return str + strings.Repeat(" ", padSize)
}

View File

@ -61,6 +61,20 @@ func NamesFromEmails(emails []string) []string {
return names return names
} }
// PadRow returns a padding for a row to make it the full width of the containing widget.
// Useful for ensurig row highlighting spans the full width (I suspect tcell has a better
// way to do this, but I haven't yet found it)
func PadRow(offset int, view *tview.TextView) string {
_, _, w, _ := view.GetInnerRect()
padSize := w - offset
if padSize < 0 {
padSize = 0
}
return strings.Repeat(" ", padSize)
}
func ReadFileBytes(filePath string) ([]byte, error) { func ReadFileBytes(filePath string) ([]byte, error) {
fileData, err := ioutil.ReadFile(filePath) fileData, err := ioutil.ReadFile(filePath)
if err != nil { if err != nil {