Extract method for drawing placeholder rows
All checks were successful
timw4mail/gilo/pipeline/head This commit looks good
All checks were successful
timw4mail/gilo/pipeline/head This commit looks good
This commit is contained in:
parent
c0d5436c35
commit
2203e30b18
@ -28,6 +28,21 @@ func (e *editor) RefreshScreen() {
|
|||||||
func (e *editor) drawRows(ab *buffer) {
|
func (e *editor) drawRows(ab *buffer) {
|
||||||
for y :=0; y < e.screen.Rows; y++ {
|
for y :=0; y < e.screen.Rows; y++ {
|
||||||
if y >= len(e.rows) {
|
if y >= len(e.rows) {
|
||||||
|
e.drawPlaceholderRow(y, ab)
|
||||||
|
} else {
|
||||||
|
row := truncateString(string(e.rows[y].chars), e.screen.Cols)
|
||||||
|
ab.append(row)
|
||||||
|
}
|
||||||
|
|
||||||
|
ab.append(terminal.ClearLine)
|
||||||
|
|
||||||
|
if y < (e.screen.Rows - 1) {
|
||||||
|
ab.append("\r\n")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e *editor) drawPlaceholderRow(y int, ab *buffer) {
|
||||||
if len(e.rows) == 0 && y == e.screen.Rows / 3 {
|
if len(e.rows) == 0 && y == e.screen.Rows / 3 {
|
||||||
welcome := fmt.Sprintf("Gilo editor -- version %s", KiloVersion)
|
welcome := fmt.Sprintf("Gilo editor -- version %s", KiloVersion)
|
||||||
if len(welcome) > e.screen.Cols {
|
if len(welcome) > e.screen.Cols {
|
||||||
@ -49,17 +64,6 @@ func (e *editor) drawRows(ab *buffer) {
|
|||||||
} else {
|
} else {
|
||||||
ab.appendRune('~')
|
ab.appendRune('~')
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
row := truncateString(string(e.rows[y].chars), e.screen.Cols)
|
|
||||||
ab.append(row)
|
|
||||||
}
|
|
||||||
|
|
||||||
ab.append(terminal.ClearLine)
|
|
||||||
|
|
||||||
if y < (e.screen.Rows - 1) {
|
|
||||||
ab.append("\r\n")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
Loading…
Reference in New Issue
Block a user