Update of /project/mcclim/cvsroot/mcclim In directory common-lisp.net:/tmp/cvs-serv24177
Modified Files: frames.lisp incremental-redisplay.lisp Log Message: Initial cleanups to incremental redisplay.
Date: Thu Aug 18 05:17:22 2005 Author: rstrandh
Index: mcclim/frames.lisp diff -u mcclim/frames.lisp:1.107 mcclim/frames.lisp:1.108 --- mcclim/frames.lisp:1.107 Sun Apr 17 20:46:26 2005 +++ mcclim/frames.lisp Thu Aug 18 05:17:21 2005 @@ -484,25 +484,6 @@ (:disowned (disown-frame fm frame)))))))
-;;; Defined in incremental-redisplay.lisp -(defvar *enable-updating-output*) - -#+nil -(defun redisplay-changed-panes (frame) - (map-over-sheets #'(lambda (pane) - (multiple-value-bind (redisplayp clearp) - (pane-needs-redisplay pane) - (when redisplayp - (when (and clearp - (or (not (pane-incremental-redisplay - pane)) - (not *enable-updating-output*))) - (window-clear pane)) - (redisplay-frame-pane frame pane) - (unless (eq redisplayp :command-loop) - (setf (pane-needs-redisplay pane) nil))))) - (frame-top-level-sheet frame))) - (defparameter +default-prompt-style+ (make-text-style :fix :italic :normal))
(defmethod default-frame-top-level
Index: mcclim/incremental-redisplay.lisp diff -u mcclim/incremental-redisplay.lisp:1.51 mcclim/incremental-redisplay.lisp:1.52 --- mcclim/incremental-redisplay.lisp:1.51 Tue Aug 16 06:30:37 2005 +++ mcclim/incremental-redisplay.lisp Thu Aug 18 05:17:21 2005 @@ -245,8 +245,7 @@ (defmethod pane-needs-redisplay :around ((pane updating-output-stream-mixin)) (let ((redisplayp (call-next-method))) (values redisplayp (and (not (eq redisplayp :no-clear)) - (or (not (pane-incremental-redisplay pane)) - (not *enable-updating-output*)))))) + (not (pane-incremental-redisplay pane))))))
(defmethod window-clear :after ((pane updating-output-stream-mixin)) "Get rid of any updating output records stored in the stream; they're gone @@ -850,9 +849,6 @@ ;; move overlapping nil)))))
-(defparameter *enable-updating-output* t - "Switch to turn on incremental redisplay") - (defvar *trace-updating-output* nil)
(defvar *no-unique-id* (cons nil nil)) @@ -874,8 +870,6 @@ unique-id id-test cache-value cache-test &key (fixed-position nil) (all-new nil) (parent-cache nil)) - (unless *enable-updating-output* - (return-from invoke-updating-output (funcall continuation stream))) (finish-output stream) (let ((parent-cache (or parent-cache *current-updating-output* stream))) (when (eq unique-id *no-unique-id*) @@ -991,16 +985,6 @@
(defvar *dump-updating-output* nil)
-;;; Protocol for notifying that records have been added or deleted, -;;; for real, during redisplay. - -(defgeneric redisplay-add-output-record (record stream) - (:documentation "Process an output record that has been added (i.e., - was not in the output history of the stream) during redisplay. The - record has not been displayed yet.")) - -(defgeneric redisplay-delete-output-record (record bounding-rectangle stream)) - (defgeneric redisplay-output-record (record stream &optional check-overlapping))
@@ -1032,30 +1016,6 @@ (delete-stale-updating-output record)) (set-medium-graphics-state current-graphics-state stream)))))
-(defmethod redisplay-add-output-record (record - (stream updating-output-stream-mixin)) - (with-bounding-rectangle* (x1 y1 x2 y2) - record - (draw-rectangle* stream x1 y1 x2 y2 - :ink +background-ink+))) - -(defmethod redisplay-add-output-record :after - (record (stream updating-output-stream-mixin)) - (note-output-record-got-sheet record stream)) - -(defmethod redisplay-delete-output-record - (record bounding-rectangle (stream updating-output-stream-mixin)) - (declare (ignore record)) - (with-bounding-rectangle* (x1 y1 x2 y2) - bounding-rectangle - (draw-rectangle* stream x1 y1 x2 y2 - :ink +background-ink+))) - -(defmethod redisplay-delete-output-record :after - (record bounding-rectangle (stream updating-output-stream-mixin)) - (declare (ignore bounding-rectangle)) - (note-output-record-lost-sheet record stream)) - (defun erase-rectangle (stream bounding) (with-bounding-rectangle* (x1 y1 x2 y2) bounding @@ -1244,7 +1204,7 @@ ((frame application-frame) (pane updating-output-stream-mixin) &key force-p) (setf (id-counter pane) 0) (let ((incremental-redisplay (pane-incremental-redisplay pane))) - (cond ((or (not incremental-redisplay) (not *enable-updating-output*)) + (cond ((not incremental-redisplay) (call-next-method)) ((or (null (updating-record pane)) force-p)