~eliasnaur/gio

93ebd51531452bda64e3fb7b1148c79808ed4183 — Egon Elbre 5 months ago 99bfa6a
gesture,widget: add hovered property

Signed-off-by: Egon Elbre <egonelbre@gmail.com>
3 files changed, 30 insertions(+), 0 deletions(-)

M gesture/gesture.go
M widget/bool.go
M widget/button.go
M gesture/gesture.go => gesture/gesture.go +10 -0
@@ 125,6 125,16 @@ func (c *Click) Add(ops *op.Ops) {
	op.Add(ops)
}

// Hovered returns whether a pointer is inside the area.
func (c *Click) Hovered() bool {
	return c.entered
}

// Pressed returns whether a pointer is pressing.
func (c *Click) Pressed() bool {
	return c.pressed
}

// Events returns the next click event, if any.
func (c *Click) Events(q event.Queue) []ClickEvent {
	var events []ClickEvent

M widget/bool.go => widget/bool.go +10 -0
@@ 20,6 20,16 @@ func (b *Bool) Changed() bool {
	return changed
}

// Hovered returns whether pointer is over the element.
func (b *Bool) Hovered() bool {
	return b.clk.Hovered()
}

// Pressed returns whether pointer is pressing the element.
func (b *Bool) Pressed() bool {
	return b.clk.Pressed()
}

func (b *Bool) History() []Press {
	return b.clk.History()
}

M widget/button.go => widget/button.go +10 -0
@@ 58,6 58,16 @@ func (b *Clickable) Clicked() bool {
	return true
}

// Hovered returns whether pointer is over the element.
func (b *Clickable) Hovered() bool {
	return b.click.Hovered()
}

// Pressed returns whether pointer is pressing the element.
func (b *Clickable) Pressed() bool {
	return b.click.Pressed()
}

// Clicks returns and clear the clicks since the last call to Clicks.
func (b *Clickable) Clicks() []Click {
	clicks := b.clicks