fix function names in gtk.demo, add widget style properties
[cl-gtk2.git] / gtk / gtk.dialog.lisp
index 6f92abe..f4ea8db 100644 (file)
 
 (export 'dialog-alternative-button-order)
 
+(defmacro with-gtk-message-error-handler (&body body)
+  (let ((dialog (gensym))
+        (e (gensym)))
+    `(handler-case
+         (progn ,@body)
+       (error (,e) (using* ((,dialog (make-instance 'message-dialog 
+                                                    :message-type :error :buttons :ok
+                                                    :text (format nil "Error~%~A~%during execution of~%~A" ,e '(progn ,@body)))))
+                           (dialog-run ,dialog)
+                           (object-destroy ,dialog)
+                           nil)))))
+
+(export 'with-gtk-message-error-handler)
\ No newline at end of file