[mcclim-cvs] CVS mcclim/Drei

thenriksen thenriksen at common-lisp.net
Thu Jan 31 19:17:57 UTC 2008


Update of /project/mcclim/cvsroot/mcclim/Drei
In directory clnet:/tmp/cvs-serv6356/Drei

Modified Files:
	input-editor.lisp 
Log Message:
Moved some input-editing functions around.

The typeout area is now cleared at the end of an input-editing session.


--- /project/mcclim/cvsroot/mcclim/Drei/input-editor.lisp	2008/01/31 16:50:07	1.33
+++ /project/mcclim/cvsroot/mcclim/Drei/input-editor.lisp	2008/01/31 19:17:56	1.34
@@ -756,21 +756,9 @@
 ;;; 
 ;;; `With-input-editor-typeout'
 ;;;
-;;; The CLIM spec is very vague about what this function is supposed
-;;; to do, but the Franz users guide suggests that it is to be used to
-;;; display information to the user while editing, sort of what we
-;;; normally use a minibuffer for. Perhaps the output should be put in
-;;; an output record above or below the editing area, but for now, we
-;;; just put it in the minibuffer. That also means the `:erase'
-;;; keyword argument is meaningless. We do add some extra limitations,
-;;; though (check the docstring)
-
-(defgeneric invoke-with-input-editor-typeout (stream continuation &key erase)
-  (:documentation "Call `continuation' with a single argument, a
-stream to do input-editor-typeout on."))
 
-(defmethod invoke-with-input-editor-typeout ((editing-stream drei-input-editing-mixin)
-                                             (continuation function) &key erase)
+(defmethod climi::invoke-with-input-editor-typeout ((editing-stream drei-input-editing-mixin)
+                                                    (continuation function) &key erase)
   (let* ((encapsulated-stream (encapsulating-stream-stream editing-stream))
          (new-typeout-record (with-output-to-output-record (encapsulated-stream)
                                (funcall continuation encapsulated-stream)))
@@ -801,22 +789,7 @@
                  (stream-add-output-record encapsulated-stream new-typeout-record)
                  (setf stream-typeout-record new-typeout-record)))
           ;; Now, let there be light!
-          (replay new-typeout-record encapsulated-stream))))))
-
-(defmacro with-input-editor-typeout ((&optional (stream t) &rest args
-                                                &key erase)
-                                     &body body)
-  "`Stream' is not evaluated and must be a symbol. If T (the
-default), `*standard-input*' will be used. `Stream' will be bound
-to an `extended-output-stream' while `body' is being evaluated."
-  (declare (ignore erase))
-  (check-type stream symbol)
-  (let ((stream (if (eq stream t) '*standard-output* stream)))
-    `(invoke-with-input-editor-typeout
-      ,stream
-      #'(lambda (,stream)
-          , at body)
-      , at args)))
+          (replay stream-typeout-record encapsulated-stream))))))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; 




More information about the Mcclim-cvs mailing list