last_light/ui/border_button.go

63 lines
1.2 KiB
Go
Raw Normal View History

2024-04-24 17:11:33 +03:00
package ui
import (
"mvvasilev/last_light/render"
"mvvasilev/last_light/util"
"github.com/gdamore/tcell/v2"
"github.com/gdamore/tcell/v2/views"
"github.com/google/uuid"
)
type UIBorderedButton struct {
id uuid.UUID
text render.Text
border render.Rectangle
isSelected bool
unselectedStyle tcell.Style
selectedStyle tcell.Style
}
func (b *UIBorderedButton) IsSelected() bool {
return b.isSelected
}
func (b *UIBorderedButton) Select() {
b.isSelected = true
}
func (b *UIBorderedButton) Deselect() {
b.isSelected = false
}
func (b *UIBorderedButton) SetSelected(selected bool) {
b.isSelected = selected
}
func (b *UIBorderedButton) UniqueId() uuid.UUID {
return b.id
}
func (b *UIBorderedButton) MoveTo(x int, y int) {
2024-04-24 17:11:33 +03:00
panic("not implemented") // TODO: Implement
}
func (b *UIBorderedButton) Position() util.Position {
panic("not implemented") // TODO: Implement
}
func (b *UIBorderedButton) Size() util.Size {
panic("not implemented") // TODO: Implement
}
func (b *UIBorderedButton) Draw(v views.View) {
panic("not implemented") // TODO: Implement
}
func (b *UIBorderedButton) Input(e *tcell.EventKey) {
panic("not implemented") // TODO: Implement
}