CLIM mail archive

[Prev][Next][Index][Thread]

Translations and a fast highlight-output-record for lines



    Date: Wed, 13 Jul 1994 10:33 PDT
    From: Scott McKay <swm@harlequin.com>

       Date: Wed, 13 Jul 1994 09:21-0700
       From: Gregory M Anderson <gma@bitterroot.apl.washington.edu>

       In light of the discussion on replaying output records and the
       difficulty in getting the translations correct, will the following
       function always translate correctly, or have I just been lucky?

    This should work, but the performance won't be as good as it could be.

       (defmethod clim:highlight-output-record
		  ((record clim-internals::lines-output-record) stream state)
	 (declare (ignore state))
	 (when stream
	   (multiple-value-bind (xoff yoff)
	       (convert-from-relative-to-absolute-coordinates 
		 stream (output-record-parent record))
	     (with-translation (stream xoff yoff)
	       (with-drawing-options (stream :ink +flipping-ink+
					     :line-style (make-line-style :thickness 2))
		 (with-slots (clim-internals::position-seq) record
		   (medium-draw-lines* stream clim-internals::position-seq)))))))

It's a whole lot faster than the default line highlighting -- but how could the 
performance be improved?  

Follow-Ups: References:

Main Index | Thread Index