peco.peco/caret.go
2018-03-30 10:07:42 +09:00

24 lines
353 B
Go

package peco
func (c *Caret) Pos() int {
c.mutex.Lock()
defer c.mutex.Unlock()
return c.pos
}
func (c *Caret) setPos_nolock(p int) {
c.pos = p
}
func (c *Caret) SetPos(p int) {
c.mutex.Lock()
defer c.mutex.Unlock()
c.setPos_nolock(p)
}
func (c *Caret) Move(diff int) {
c.mutex.Lock()
defer c.mutex.Unlock()
c.setPos_nolock(c.pos + diff)
}