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

Re: Saving print-style-dialog



Lawrence Au (lau@darpa.mil) writes:
  There must be a hook into the print record which MCL uses to
  print fred-windows.  But I haven't been able to find it.  If I
  just knew where it is I could save it out to a resource in
  either MCL or each document and pull it back in later.

MCL keeps track of the print-record parameter for fred windows 
in a private area. Bill St. Clair discouraged me from using the
private print record for my generalized print package (print-u.lisp
in /pub/MCL2/contrib/).

The print-u package  allocates and maintains its own  separate 
print record. You can use the internal method 
   (get-print-record object) to retrieve the tprint record
You can use the hooks provided in the package print-u.lisp (in
/pub/MCL2/contrib/) to specialize the printing routines. The
get-print-record method only works for non-Fred window.

? (ccl::get-print-prec t)
#<A Mac Handle, Unlocked, Size 120 #x15C018>

You can retrieve (at your own risk), the internal fred print record:
? ccl::*hc-prec*
#<A Mac Handle, Unlocked, Size 120 #x15C06C>
?  (print-record ccl::*hc-prec* :tprint)
#<Record :TPRINT :IPRVERSION 3 
:PRINFO #<Record :TPRINFO :IDEV 0 :IVRES 72 :IHRES 72 
:RPAGE #<Record :RECT :TOP 0 :LEFT 0 :BOTTOM 730 :RIGHT 552>> 
:RPAPER #<Record :RECT :TOP -31 :LEFT -30 :BOTTOM 761 :RIGHT 582> 
:PRSTL #<Record :TPRSTL :WDEV 839 :IPAGEV 1320 :IPAGEH 1020 :BPORT 0 :FEED 2> 
:PRINFOPT #<Record :TPRINFO :IDEV 0 :IVRES 72 :IHRES 72 
:RPAGE #<Record :RECT :TOP 0 :LEFT 0 :BOTTOM 730 :RIGHT 552>> 
:PRXINFO #<Record :TPRXINFO :IROWBYTES 1 :IBANDV 0 :IBANDH 100 
:IDEVBYTES 0 :IBANDS 1 :BPATSCALE 0 :BULTHICK 1 :BULOFFSET 1 :BULSHADOW 1 
:SCAN 0 :BXINFOX 0> 
:PRJOB #<Record :TPRJOB :IFSTPAGE 1 :ILSTPAGE 9999 :ICOPIES 1 
:BJDOCLOOP 0 :FFROMUSR T :PIDLEPROC #<A Null Mac Pointer> 
:PFILENAME #<A Null Mac Pointer> :IFILEVOL 0 :BFILEVERS 0 :BJOBX 0> 
:PRINTX #<A Mac Non-zone Pointer #x19FB1A> 
:IZOOMMIN 25 :IZOOMMAX 400 :HDOCNAME #<A Null Mac Pointer>>