File tree Expand file tree Collapse file tree 2 files changed +34
-11
lines changed Expand file tree Collapse file tree 2 files changed +34
-11
lines changed Original file line number Diff line number Diff line change 10
10
(uiop :quit)
11
11
(uiop :quit 0 nil )))
12
12
13
+ (defun default-draw ()
14
+ (c :set-source-rgb (/ 12 255 ) (/ 55 255 ) (/ 132 255 ))
15
+ (c :paint)
16
+ (c :set-source-rgb 1 1 1 )
17
+ (c :move-to 30 100 )
18
+ (c :set-font-size 84 )
19
+ (c :show-text " DON'T PANIC" ))
20
+
21
+ (defun error-draw ()
22
+ (c :set-source-rgb (/ 132 255 ) (/ 12 255 ) (/ 55 255 ))
23
+ (c :paint)
24
+ (c :set-source-rgb 1 1 1 )
25
+ (c :set-font-size 16 )
26
+ (loop for x from 10 to 300 by 100
27
+ do
28
+ (loop for y from 20 to 500 by 20
29
+ do
30
+ (c :move-to x y)
31
+ (c :show-text " I, PANIC" ))
32
+ ))
33
+
13
34
(defun internal-draw ()
14
35
" default drawing function, user should defun `draw'"
15
- (cond
16
- ((fboundp ' draw) (funcall ' draw) (setf *calm-redraw* nil ))
17
- ((fboundp ' draw-once) (funcall ' draw-once) (setf *calm-redraw* nil ))
18
- ((fboundp ' draw-forever) (funcall ' draw-forever))
19
- (t
20
- (c :set-source-rgb (/ 12 255 ) (/ 55 255 ) (/ 132 255 ))
21
- (c :paint)
22
- (c :set-source-rgb 1 1 1 )
23
- (c :move-to 30 100 )
24
- (c :set-font-size 84 )
25
- (c :show-text " DON'T PANIC" ))))
36
+ (handler-case
37
+ (cond
38
+ ((fboundp ' draw) (funcall ' draw) (setf *calm-redraw* nil ))
39
+ ((fboundp ' draw-once) (funcall ' draw-once) (setf *calm-redraw* nil ))
40
+ ((fboundp ' draw-forever) (funcall ' draw-forever))
41
+ (t (default-draw)))
42
+ (error (c)
43
+ (if *calm-debug-enabled*
44
+ (invoke-debugger c)
45
+ (progn
46
+ (format t " Caught an error: ~a~% " c)
47
+ (error-draw))))))
26
48
27
49
(defun internal-think ()
28
50
" default thinking function, user should defun `think'
Original file line number Diff line number Diff line change 19
19
(defparameter *calm-default-font-family* " Arial" )
20
20
21
21
; ; debug variable
22
+ (defparameter *calm-debug-enabled* nil )
22
23
(defparameter *calm-debug-variable-a* nil )
23
24
(defparameter *calm-debug-variable-b* nil )
24
25
(defparameter *calm-debug-variable-c* nil )
You can’t perform that action at this time.
0 commit comments