repos
/
qt.gui
/ annotate_shade
summary
|
shortlog
|
log
|
tree
|
commit
|
commitdiff
|
headdiff
|
annotate
|
filehistory
normal
|
plain
|
shade
|
zebra
Update to the new smokegenerator.
Annotate for file src/msg-handler.lisp
2010-01-10 tobias
1
(in-package :cl-smoke.qt-impl)
08:52:49 '
2
2009-09-09 tobias
3
(cffi:defcenum qt-msg-type
13:18:08 '
4
(:debug-message)
'
5
(:warning-message)
'
6
(:critical-message)
'
7
(:fatal-message))
2010-01-10 tobias
8
08:52:49 '
9
;; QtMsgHandler is a typedef for a pointer.
'
10
(define-pointer-typedef "QtMsgHandler" foreign-pointer)
2009-08-27 tobias
11
;; Smokegenerator
08:37:36 '
12
(define-pointer-typedef "void(*)(QtMsgType,const char*)" foreign-pointer)
'
13
(define-pointer-typedef "unsigned char*" foreign-pointer)
2010-01-10 tobias
14
08:52:49 '
15
(defcallback qt-msg-handler :void
'
16
((type qt-msg-type)
'
17
(message :string))
'
18
(ecase type
2009-09-09 tobias
19
(:debug-message
13:18:08 '
20
(write-string "qDebug: " *debug-io*)
'
21
(write-line message *debug-io*))
'
22
(:warning-message (warn message))
'
23
(:critical-message (cerror "Ignore" "~A" message))
'
24
(:fatal-message (error message))))
'
25
'
26
(defun register-msg-handler ()
'
27
(with-foreign-object (handler :pointer)
'
28
(setf (mem-ref handler :pointer) (callback qt-msg-handler))
'
29
(qt:q-install-msg-handler handler)))
2010-01-10 tobias
30
2009-12-13 tobias
31
(eval-when (:load-toplevel)
2009-09-09 tobias
32
(register-msg-handler))