[climacs-cvs] CVS update: climacs/prolog-syntax.lisp
Christophe Rhodes
crhodes at common-lisp.net
Tue Apr 5 20:28:30 UTC 2005
Update of /project/climacs/cvsroot/climacs
In directory common-lisp.net:/tmp/cvs-serv24772
Modified Files:
prolog-syntax.lisp
Log Message:
Enable incremental-redisplay / updating-output
This isn't as big a win as it could be, because of the invalidation of
lexemes without attempting to splice in the results of a previous lex.
(see FIXME comments in update-syntax-for-redisplay)
Date: Tue Apr 5 22:28:30 2005
Author: crhodes
Index: climacs/prolog-syntax.lisp
diff -u climacs/prolog-syntax.lisp:1.10 climacs/prolog-syntax.lisp:1.11
--- climacs/prolog-syntax.lisp:1.10 Mon Apr 4 23:00:42 2005
+++ climacs/prolog-syntax.lisp Tue Apr 5 22:28:29 2005
@@ -56,7 +56,7 @@
())
(defclass prolog-token (prolog-parse-tree)
- ())
+ ((ink) (face)))
(defclass prolog-operator (prolog-token)
())
@@ -942,18 +942,15 @@
(defmethod display-parse-tree ((entity prolog-token) (syntax prolog-syntax) pane)
(flet ((cache-test (t1 t2)
(and (eq t1 t2)
- #+nil
(eq (slot-value t1 'ink)
(medium-ink (sheet-medium pane)))
- #+nil
(eq (slot-value t1 'face)
(text-style-face (medium-text-style (sheet-medium pane)))))))
-#| (updating-output (pane :unique-id entity
+ (updating-output (pane :unique-id entity
:id-test #'eq
:cache-value entity
- :cache-test #'cache-test)|#
- (with-slots (#|ink face|#) entity
- #+nil
+ :cache-test #'cache-test)
+ (with-slots (ink face) entity
(setf ink (medium-ink (sheet-medium pane))
face (text-style-face (medium-text-style (sheet-medium pane))))
(let ((string (coerce (buffer-sequence (buffer syntax)
@@ -976,7 +973,7 @@
(handle-whitespace pane (buffer pane)
(+ (start-offset entity) nl)
(+ (start-offset entity) nl 1))
- (setf start (+ nl 1))))))))))
+ (setf start (+ nl 1)))))))))))
(defmethod display-parse-tree :before ((entity prolog-lexeme) (syntax prolog-syntax) pane)
(handle-whitespace pane (buffer pane) *white-space-start* (start-offset entity))
More information about the Climacs-cvs
mailing list