[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