zworld/plugins/system/input/debug.go
2024-01-14 22:56:06 +08:00

40 lines
639 B
Go

package input
import (
"log"
"zworld/plugins/system/input/keys"
"zworld/plugins/system/input/mouse"
)
type nopHandler struct{}
func (h *nopHandler) KeyEvent(e keys.Event) {}
func (h *nopHandler) MouseEvent(e mouse.Event) {}
func NopHandler() Handler {
return &nopHandler{}
}
type debugger struct {
Handler
}
func DebugMiddleware(next Handler) Handler {
return &debugger{next}
}
func (d debugger) KeyEvent(e keys.Event) {
log.Printf("%+v\n", e)
if d.Handler != nil {
d.Handler.KeyEvent(e)
}
}
func (d debugger) MouseEvent(e mouse.Event) {
log.Printf("%+v\n", e)
if d.Handler != nil {
d.Handler.MouseEvent(e)
}
}