[mcclim-cvs] CVS update: mcclim/frames.lisp mcclim/incremental-redisplay.lisp
Robert Strandh
rstrandh at common-lisp.net
Thu Aug 18 03:17:23 UTC 2005
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)
More information about the Mcclim-cvs
mailing list