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

Re: screen dump - can MCL call fkeys?

>Date: Mon, 4 Jan 1993 14:36:09 -0400
>To: info-mcl@cambridge.apple.com, gwer1@cislabs.pitt.edu (Gerhard Werner)
>From: Robert A. Cassels <cassels@cambridge.apple.com>
>X-Sender: cassels@ministry.cambridge.apple.com
>Subject: Re: screen dump
>At 10:13 AM 1/4/93 -0500, Gerhard Werner wrote:
>>In the old Allegro Lisp running in operating system 6 versions, one
>>could freeze a picture of the screen for printing, using a program called
>>screendump. How can one copy a picture of the screen running MCL in
>>system 7 ?
>In System 7, Command-shift-3 takes a snapshot of the whole screen.  (See
>the "Finder Shortcuts" window, page 5.)  As straz mentioned, there are
>various shareware programs that give more fine-grained control over what's
>in the picture.

>Date: Mon, 4 Jan 93 15:59:29 -0500
>To: straz@cambridge.apple.com (Steve Strassmann)
>From: steele (Oliver Steele)
>X-Sender: steele@cambridge.apple.com
>Subject: Re: screen dump - can MCL call fkeys?
>Cc: bug-mcl
>At  1:44 PM 1/4/93 -0500, Steve Strassmann wrote:
>>Can MCL invoke an fkey? If so, how? He can simply call one of the
>>dozen or so screen capture fkeys out there.
>Load the FKEY resource, lock it, jsr to it, and release it.

; press-fkey.lisp
; Code to invoke an FKEY from MCL.

(defun press-fkey (number)
  (flet ((reserr ()
           (let ((errnum (#_ResError)))
             (unless (eql 0 errnum)
               (ccl::%err-disp errnum)))))
    (let ((resource (#_GetResource :FKEY number)))
      (when (%null-ptr-p resource)
        (error "No FKEY number ~s" number))
      (#_LoadResource resource)
      (with-pointers ((p resource))
        (ff-call p)))))

; To take a snapshot of the screen(s) in System 7:
(press-fkey 3)

; The result appears as a TeachText file named "Picture <n>" at
; top level of your system volume. You can use TeachText to copy a
; rectangular region for pasting into any application that supports
; PICT scraps.