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

CopyBits on "portable" problem



I am (was) planning to take a Mac portable for demo purposes to CHI but
things look bad.. I'm in Copybits hell..


Drawing bitmaps into a window can be done using _copybits.
The MCL 2.0b1p3 built-in COPY-BITS function doesn't seem
to work right as most of us know. My own version, fixing the problem
looks like:

(defun DRAW-BITMAP (Bitmap Window X Y &optional (Pen-Mode :patCopy)) 
  (let* ((Topleft (make-point X Y))
         (Botright (add-points topleft (rref Bitmap :Bitmap.bounds.bottomRight))))
    (rlet ((dstRect :rect :topleft topleft :bottomRight botright))
      (#_CopyBits
       Bitmap
       (rref (wptr Window) ccl::window.portbits)
       (rref Bitmap bitmap.bounds)
       dstRect
       (ccl::mode-arg Pen-Mode)
       (%null-ptr)))))

This worked fine on all the machines tested so far until I tested the
good ole Mac PORTABLE. I've tried several other versions of code
using copy-Bits in some form or another -> no success. I get 
a blob having the correct size but random content. 

IS there a known bug with the portable or just something strange that I have
not considered?


   H E L P.....


 Alex