blob: e04d0c86e02b5d37e21555ee801789b8e7bec0fb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
(defpackage #:ww.example/3
(:use :cl))
(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
'ww::text
:content "Hell! Oh World..."
:font (ww::get-asset "Ticketing.ttf" :asset-args '(:oversample 2)))))
(setf (ww::unit-width hello)
(* 5 (ww::unit-width hello))
(ww::unit-height hello)
(* 5 (ww::unit-height hello))
(ww::unit-x hello) 100
(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/")))
|