stone/event.go

47 lines
1.1 KiB
Go
Raw Normal View History

2022-11-09 06:18:56 +00:00
package stone
2022-11-09 06:12:47 +00:00
2022-11-16 05:29:23 +00:00
type CallbackManager struct {
onQuit func ()
onPress func (button Button, modifiers Modifiers)
2022-11-16 05:29:23 +00:00
onRelease func (button Button)
onResize func ()
onMouseMove func (x, y int)
2022-11-18 00:11:49 +00:00
onScroll func (x, y int)
2022-11-16 05:29:23 +00:00
onStart func ()
}
2022-11-09 06:12:47 +00:00
2022-11-16 05:29:23 +00:00
func (manager *CallbackManager) RunQuit () {
if manager.onQuit == nil { return }
manager.onQuit()
}
2022-11-15 05:22:01 +00:00
func (manager *CallbackManager) RunPress (button Button, modifiers Modifiers) {
2022-11-16 05:29:23 +00:00
if manager.onPress == nil { return }
manager.onPress(button, modifiers)
2022-11-16 05:29:23 +00:00
}
2022-11-15 05:22:01 +00:00
2022-11-16 05:29:23 +00:00
func (manager *CallbackManager) RunRelease (button Button) {
if manager.onRelease == nil { return }
manager.onRelease(button)
}
2022-11-15 05:22:01 +00:00
2022-11-16 05:29:23 +00:00
func (manager *CallbackManager) RunResize () {
if manager.onResize == nil { return }
manager.onResize()
}
func (manager *CallbackManager) RunMouseMove (x, y int) {
if manager.onMouseMove == nil { return }
manager.onMouseMove(x, y)
}
2022-11-15 05:22:01 +00:00
2022-11-18 00:11:49 +00:00
func (manager *CallbackManager) RunScroll (x, y int) {
if manager.onScroll == nil { return }
manager.onScroll(x, y)
}
2022-11-16 05:29:23 +00:00
func (manager *CallbackManager) RunStart () {
if manager.onStart == nil { return }
manager.onStart()
2022-11-09 06:12:47 +00:00
}