Update of /project/mcclim/cvsroot/mcclim In directory common-lisp.net:/tmp/cvs-serv12901
Modified Files: dialog.lisp Log Message: (climi::frame-event-queue *application-frame*) as argument :INPUT-BUFFER to the call of OPEN-WINDOW-STREAM in WITH-STREAM-IN-OWN-WINDOW (was not specified previously). The ugly delay could be dropped, because no new process is created anymore. See http://common-lisp.net/pipermail/mcclim-devel/2005-August/004239.html for more information. (Thanks go to Christophe.)
The parameter :LABEL to ACCEPTING-VALUES will now actually be used to label the newly created window if :OWN-WINDOW is true.
Date: Fri Aug 26 02:32:56 2005 Author: mretzlaff
Index: mcclim/dialog.lisp diff -u mcclim/dialog.lisp:1.21 mcclim/dialog.lisp:1.22 --- mcclim/dialog.lisp:1.21 Thu Aug 25 22:48:40 2005 +++ mcclim/dialog.lisp Fri Aug 26 02:32:56 2005 @@ -138,12 +138,13 @@
(defmacro with-stream-in-own-window ((&optional (stream '*query-io*) &rest further-streams) + (&optional label) &rest body) - `(let* ((,stream (open-window-stream)) + `(let* ((,stream (open-window-stream :label ,label + :input-buffer (climi::frame-event-queue *application-frame*))) ,@(mapcar (lambda (a-stream) (list a-stream stream)) further-streams)) - (sleep 0.1) ;; hackhack.. some delay to "ensure" that the window-stream ist opened (unwind-protect (progn ,@body) @@ -159,7 +160,7 @@ &body body) (declare (ignorable exit-boxes initially-select-query-identifier modify-initial-query resynchronize-every-pass resize-frame - align-prompts label scroll-bars + align-prompts scroll-bars x-position y-position width height command-table frame-class)) (setq stream (stream-designator-symbol stream '*standard-input*)) (with-gensyms (accepting-values-continuation) @@ -171,7 +172,9 @@ ,@args)) )) `(if ,own-window - (with-stream-in-own-window (,stream *standard-input* *standard-output*) ,return-form) + (with-stream-in-own-window (,stream *standard-input* *standard-output*) + (,label) + ,return-form) ,return-form))))
(defun invoke-accepting-values