4 "github.com/zyedidia/micro/internal/config"
5 "github.com/zyedidia/tcell"
23 func NewMessage(owner string, msg string, start, end Loc, kind MsgType) *Message {
33 func NewMessageAtLine(owner string, msg string, line int, kind MsgType) *Message {
34 start := Loc{-1, line - 1}
36 return NewMessage(owner, msg, start, end, kind)
39 func (m *Message) Style() tcell.Style {
42 if style, ok := config.Colorscheme["gutter-info"]; ok {
46 if style, ok := config.Colorscheme["gutter-warning"]; ok {
50 if style, ok := config.Colorscheme["gutter-error"]; ok {
54 return config.DefStyle
57 func (b *Buffer) AddMessage(m *Message) {
58 b.Messages = append(b.Messages, m)
61 func (b *Buffer) removeMsg(i int) {
62 copy(b.Messages[i:], b.Messages[i+1:])
63 b.Messages[len(b.Messages)-1] = nil
64 b.Messages = b.Messages[:len(b.Messages)-1]
67 func (b *Buffer) ClearMessages(owner string) {
68 for i := len(b.Messages) - 1; i >= 0; i-- {
69 if b.Messages[i].Owner == owner {
75 func (b *Buffer) ClearAllMessages() {
76 b.Messages = make([]*Message, 0)