44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
|
package ui
|
||
|
|
||
|
func (d *Driver) hoverStartEvent(h hoverable, inBounds bool) {
|
||
|
if inBounds && !h.hoverState() {
|
||
|
//log.Printf("hoverable false -> true")
|
||
|
h.setHoverState(true)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (d *Driver) hoverEndEvent(h hoverable, inBounds bool) {
|
||
|
if !inBounds && h.hoverState() {
|
||
|
//log.Printf("hoverable true -> false")
|
||
|
h.setHoverState(false)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (d *Driver) mouseDownEvent(c clickable, inBounds, wasDown, isDown bool) {
|
||
|
if inBounds && !wasDown && isDown {
|
||
|
//log.Printf("mouse down false -> true")
|
||
|
c.setMouseDownState(true)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (d *Driver) mouseClickEvent(c clickable, inBounds, wasDown, isDown bool) {
|
||
|
if inBounds && wasDown && !isDown {
|
||
|
//log.Printf("mouse click")
|
||
|
c.registerMouseClick()
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func (d *Driver) mouseUpEvent(c clickable, inBounds, wasDown, isDown bool) {
|
||
|
if inBounds {
|
||
|
if wasDown && !isDown {
|
||
|
//log.Printf("mouse down true -> false")
|
||
|
c.setMouseDownState(false)
|
||
|
}
|
||
|
} else {
|
||
|
if wasDown {
|
||
|
//log.Printf("mouse down true -> false")
|
||
|
c.setMouseDownState(false)
|
||
|
}
|
||
|
}
|
||
|
}
|