[mcclim-devel] compose-space question
rpgoldman at real-time.com
rpgoldman at real-time.com
Fri May 20 01:53:46 UTC 2005
If it's not a compose-space problem, I'm wondering about the code in
incremental-redisplay.lisp. Could it be the case that
(defmethod incremental-redisplay ((stream updating-output-stream-mixin) position
erases moves draws erase-overlapping move-overlapping)
(declare (ignore position))
(let ((history (stream-output-history stream)))
(with-output-recording-options (stream :record nil :draw t)
(loop
for (nil br) in erases
do (erase-rectangle stream br))
(loop
for (nil old-bounding) in moves
do (erase-rectangle stream old-bounding))
(loop
for (nil br) in erase-overlapping
do (erase-rectangle stream br))
(loop
for (nil old-bounding) in move-overlapping
do (erase-rectangle stream old-bounding)))
(loop
for (r) in moves
do (replay r stream))
(loop
for (r) in draws
do (replay r stream))
(let ((res +nowhere+))
(loop for (r) in erase-overlapping do (setf res (region-union res r)))
(loop for (r) in move-overlapping do (setf res (region-union res r)))
(replay history stream res)) ))
Does the Wrong Thing when the STREAM argument is an application pane,
ignoring the viewport stuff, and so the region operations are done
with the wrong bounding area? In particular, it seems like the draws
are clipped, possibly because the region-union doesn't take into
account the scroll-bar area.
This is just a theory, and actually doesn't feel quite right to me.
But I'm bamboozled for why the stream has this odd clipping. Can
anyone confirm or disprove it? Better yet, does anyone have a better
theory to offer?
Thanks,
R
More information about the mcclim-devel
mailing list