Files
zyedidia.micro/cmd/micro/action/pane.go
Zachary Yedidia 5825353f64 Add some commands
2019-12-25 17:05:10 -05:00

48 lines
845 B
Go

package action
import (
"github.com/zyedidia/micro/cmd/micro/buffer"
"github.com/zyedidia/micro/cmd/micro/display"
"github.com/zyedidia/micro/cmd/micro/info"
)
type Pane interface {
Handler
display.Window
ID() uint64
Name() string
Close()
}
type EditPane struct {
display.BWindow
*BufHandler
}
type InfoPane struct {
display.BWindow
*InfoHandler
*info.InfoBuf
}
func NewBufEditPane(x, y, width, height int, b *buffer.Buffer) *EditPane {
e := new(EditPane)
// TODO: can probably replace editpane with bufhandler entirely
w := display.NewBufWindow(x, y, width, height, b)
e.BWindow = w
e.BufHandler = NewBufHandler(b, w)
return e
}
func NewInfoBar() *InfoPane {
e := new(InfoPane)
ib := info.NewBuffer()
w := display.NewInfoWindow(ib)
e.BWindow = w
e.InfoHandler = NewInfoHandler(ib, w)
e.InfoBuf = ib
return e
}