micro/internal/display/window.go
2019-12-25 17:05:11 -05:00

33 lines
710 B
Go

package display
import (
"github.com/zyedidia/micro/internal/buffer"
)
type View struct {
X, Y int // X,Y location of the view
Width, Height int // Width and height of the view
// Start line and start column of the view (vertical/horizontal scroll)
// note that since the starting column of every line is different if the view
// is scrolled, StartCol is a visual index (will be the same for every line)
StartLine, StartCol int
}
type Window interface {
Display()
Clear()
Relocate() bool
GetView() *View
SetView(v *View)
LocFromVisual(vloc buffer.Loc) buffer.Loc
Resize(w, h int)
SetActive(b bool)
IsActive() bool
}
type BWindow interface {
Window
SetBuffer(b *buffer.Buffer)
}