[mcclim-cvs] CVS mcclim/Apps/Listener
thenriksen
thenriksen at common-lisp.net
Fri Feb 1 18:48:56 UTC 2008
Update of /project/mcclim/cvsroot/mcclim/Apps/Listener
In directory clnet:/tmp/cvs-serv23245/Apps/Listener
Modified Files:
listener.lisp
Log Message:
Replace the sharp bracket in the Listener prompt by an actual arrow.
--- /project/mcclim/cvsroot/mcclim/Apps/Listener/listener.lisp 2008/01/06 01:33:25 1.38
+++ /project/mcclim/cvsroot/mcclim/Apps/Listener/listener.lisp 2008/02/01 18:48:56 1.39
@@ -145,9 +145,18 @@
(defun print-listener-prompt (stream frame)
(declare (ignore frame))
(with-text-face (stream :italic)
- (with-output-as-presentation (stream *package* 'package :single-box t)
- (print-package-name stream))
- (princ "> " stream)))
+ (let* ((text-style-width (text-style-width (medium-default-text-style stream) stream))
+ (arrow-width (* 2 text-style-width))
+ (prompt-height
+ (bounding-rectangle-height
+ (with-output-as-presentation (stream *package* 'package :single-box t)
+ (print-package-name stream)))))
+ (multiple-value-bind (x y) (stream-cursor-position stream)
+ (draw-arrow* stream x (+ y (/ prompt-height 2))
+ (+ x arrow-width) (+ y (/ prompt-height 2))
+ :head-length (/ text-style-width 2)
+ :head-width (floor (/ prompt-height 2))))
+ (stream-increment-cursor-position stream (+ arrow-width text-style-width) 0))))
(defmethod frame-standard-output ((frame listener))
(get-frame-pane frame 'interactor))
More information about the Mcclim-cvs
mailing list