From 9c058339dde198062e96674c515ea946de5902b5 Mon Sep 17 00:00:00 2001 From: Colin Okay Date: Mon, 27 Jun 2022 10:43:04 -0500 Subject: [modify] get-focus & refocus-on: allow focus on not focusablep --- examples/03-font-render.lisp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'examples/03-font-render.lisp') diff --git a/examples/03-font-render.lisp b/examples/03-font-render.lisp index 6e1637a..e04d0c8 100644 --- a/examples/03-font-render.lisp +++ b/examples/03-font-render.lisp @@ -4,9 +4,16 @@ (in-package #:ww.example/3) - (defclass font-display (ww::application) ()) +(ww::defhandler move-on-keydown + (ww::on-keydown () + (case scancode + (:scancode-up (incf (ww::unit-y target))) + (:scancode-down (decf (ww::unit-y target))) + (:scancode-left (decf (ww::unit-x target))) + (:scancode-right (incf (ww::unit-x target)))))) + (defmethod ww::boot ((app font-display)) (let ((hello (make-instance @@ -24,11 +31,16 @@ (ww::unit-y hello) 100) + (ww::set-handler hello #'move-on-keydown) + + (ww::refocus-on hello) + (ww::add-unit app hello))) (defun start () (ww::start (make-instance 'font-display + :refocus-on-mousedown-p nil :title "Wheelwork Example: Font display" :asset-root "~/projects/wheelwork/examples/"))) -- cgit v1.2.3