aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/package.lisp
blob: dc9fee9c451d9997b28f40a8e467ce8003acda15 (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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
;;;; package.lisp

(defpackage #:wheelwork
  (:use #:cl)
  (:nicknames #:ww)
  (:local-nicknames (#:mat #:3d-matrices)
                    (#:vec #:3d-vectors))
  (:import-from #:defclass-std #:defclass/std)
  (:import-from #:alexandria-2
                #:when-let #:when-let* #:if-let #:with-gensyms)
  (:export
   ;; Affine API
   #:height
   #:radians
   #:rotation
   #:scale-by
   #:scale-x
   #:scale-y
   #:units-intersect-p
   #:width
   #:x
   #:y
   
   ;; application API 
   #:application
   #:application-focus
   #:application-height
   #:application-width
   #:application-window
   #:appplication-scale
   #:asset-classifiers
   #:asset-root
   #:boot
   #:fps 
   #:get-asset
   #:get-focus 
   #:refocus-on
   #:refocus-on-mousedown-p
   #:shutdown
   #:start
   #:stop

   ;; Display Tree Managmennt
   #:add-unit
   #:container
   #:container-bottom
   #:container-left
   #:container-right
   #:container-top
   #:container-units
   #:drop-unit

   ;; Event Handler API
   #:add-handler
   #:defhandler
   #:on-after-added
   #:on-before-added
   #:on-before-dropped
   #:on-blur
   #:on-focus
   #:on-keydown
   #:on-keyup
   #:on-mousedown
   #:on-mousemotion
   #:on-mousewheel
   #:on-perframe
   #:remove-handler

   ;; Event Names, useful for dropping whole classes of events from a
   ;; unit
   #:after-added
   #:before-added
   #:before-dropped
   #:blur
   #:focus
   #:keydown
   #:keyup
   #:mousedown
   #:mousemotion
   #:mouseup
   #:mousewheel
   #:perframe

   ;; Generic and APIs
   #:unit-container
   #:unit-visbilep

   ;; Specific Unit Classes and APIs
   #:image
   
   #:button
   #:button-bg
   #:button-down
   #:button-on-press
   #:button-on-release
   #:button-up

   #:canvas
   
   #:frameset 
   #:frameset-index
   #:make-frameset
   #:runningp

   #:text
   #:text-color

   #:sprite
   #:current-frameset
   #:sprite-frameset
   #:sprite-frameset-key

   ;; Assets
   #:asset
   #:png
   #:texture
   #:asset-path
   #:font))