initial import
src/msg-handler.lisp
Sun Apr 5 19:56:16 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* initial import
--- old-qt.core/src/msg-handler.lisp 1970-01-01 01:00:00.000000000 +0100
+++ new-qt.core/src/msg-handler.lisp 2014-11-11 13:37:13.000000000 +0100
@@ -0,0 +1,26 @@
+(in-package :qt)
+
+(cffi:defcenum qt-msg-type
+ (:debug-message)
+ (:warning-message)
+ (:critical-message)
+ (:fatal-message))
+
+(defcallback qt-msg-handler :void
+ ((type qt-msg-type)
+ (message :string))
+ (ecase type
+ (:debug-message
+ (write-string "qDebug: " *debug-io*)
+ (write-line message *debug-io*))
+ (:warning-message (warn message))
+ (:critical-message (cerror "Ignore" "~A" message))
+ (:fatal-message (error message))))
+
+(defun register-msg-handler ()
+ (with-foreign-object (handler :pointer)
+ (setf (mem-ref handler :pointer) (callback qt-msg-handler))
+ (qt:q-install-msg-handler handler)))
+
+(eval-when (:load-toplevel)
+ (register-msg-handler))