; ; File: Printing.a ; ; Copyright: © 1991-1992 by Apple Computer, Inc., all rights reserved. ; ; Change History (most recent first): ; ; <6> 7/1/92 DCL This file is the replacement for the now obsolete PrEqu.a. ; Changed the 'including' name to match the new file name. ; <5> 1/30/91 gbm sab, #38: Change the ‘already including this file’ variable to ; all uppercase (for security reasons) ; ; To Do: ; ; ;_______________________________________________________________________ ; Printing Equates -- This file defines the public high-level equates for the ; Macintosh printing software. Record stuctures may have additional private ; equates which are defined by and reserved for use by Apple Computer, Inc. ;_______________________________________________________________________ ; 1.0 CCH 11/ 9/1988 Adding to EASE. ; END EASE MODIFICATION HISTORY ;•1.1 CCH 9/14/1988 Updated EASE with the current rev of this file. IF &TYPE('__INCLUDINGPRINTING__') = 'UNDEFINED' THEN __INCLUDINGPRINTING__ SET 1 ; No external refs required ; Printing Code Contsants ; These are the PrDrvr constants. iPrDrvrID EQU 2 ; Driver's ResID iPrDrvrRef EQU $FFFD ; Driver's RefNum = NOT ResID iPrDrvrDev EQU $FD00 ; Driver's QD Dev num = RefNum in Hi Byte, variant in lo iPrBitsCtl EQU 4 ; The Bitmap Print Proc's ctl number lScreenBits EQU $00000000 ; The Bitmap Print Proc's Screen Bitmap param lPaintBits EQU $00000001 ; The Bitmap Print Proc's Paint [sq pix] param iPrIOCtl EQU 5 ; The Raw Byte IO Proc's ctl number iPrEvtCtl EQU 6 ; The PrEvent Proc's ctl number lPrEvtAll EQU $0002FFFD ; The PrEvent Proc's CParam for the entire screen lPrEvtTop EQU $0001FFFD ; The PrEvent Proc's CParam for the top folder iPrDevCtl EQU 7 ; The PrDevCtl Proc's ctl number iPrReset EQU 1 ; The PrDevCtl Proc's CParam for reset iPrPageEnd EQU 2 ; The PrDevCtl Proc's CParam for end page iPrLineFeed EQU 3 ; The PrDevCtl Proc's CParam for paper advance iFMgrCtl EQU 8 ; The FMgr's Tail-hook ctl call iFMgrStat EQU 8 ; The FMgr's Pre-hook status call ; Printing data structures ; Print Info data structure TPrInfo ; The parameters needed for page composition. iDev EQU 0 ; Font mgr/QuickDraw device code [integer] rPage EQU 6 ; printable area device coord. [rect] ; Printer Style data structure ; The printer configuration and usage information. iPageV EQU 2 ; V paper size in units of 1/iPrPgFract [word] iPageH EQU 4 ; H paper size. [word] feed EQU 7 ; paper feeder type [byte] ; Print eXtra Info data structure ; The print time eXtra information. iDevBytes EQU 6 ; Size for allocation. [word] ; Print Job data structure ; Print "form" for a single print request. iFstPage EQU 0 ; Page Range [word] iLstPage EQU 2 ; [word] iCopies EQU 4 ; # copies [word] bJDocLoop EQU 6 ; Draft quality print flag [byte] fFromApp EQU 7 ; Printing from an App (not PrApp) flag [byte] pIdleProc EQU 8 ; Idle Proc [pointer] pFileName EQU 12 ; Spool File Name: NIL for default [pointer] iFileVol EQU 16 ; Spool File vol [word] bFileVers EQU 18 ; Spool File version [byte] iPrJobSize EQU 20 ; The PrJob size.[20] ; The universal 120 byte printing record iPrVersion EQU 0 ; Printing software version prInfo EQU 2 ; the PrInfo data associated with the current style. rPaper EQU 16 ; The paper rectangle [offset from rPage]. prStl EQU 24 ; This print request's style. prInfoPT EQU 32 ; Print Time Imaging metrics prXInfo EQU 46 ; Print-time (expanded) Print info record. prJob EQU 62 ; The Print Job request iPrintSize EQU 120 ; The Print record size.[120] ; Print Port structure ; A graf port, its procs, plus some extra. gPort EQU 0 ; The Printer's graf port iPrPortSize EQU 178 ; The PrPort size.[178] ; Print Status data structure iTotPages EQU 0 ; Total pages in Print File [word] iCurPage EQU 2 ; Current page number [word] iTotCopies EQU 4 ; Total copies requested [word] iCurCopy EQU 6 ; Current copy number [word] iTotBands EQU 8 ; Total bands per page [word] iCurBand EQU 10 ; Current band number [word] fPgDirty EQU 12 ; current page has been written to? [byte] fImaging EQU 13 ; in band's DrawPic call? [byte] hPrint EQU 14 ; active Printer record [handle] pPrPort EQU 18 ; active PrPort [pointer] iPrStatSize EQU 26 ; The PrStatus size[26 bytes] ; Less common print code stuff wDev EQU 0 ; the drvr #, hi byte = refnum, lo byte = variant [word] ; These are the definitions for the Print code iPrAbort EQU 128 ; Abort iPrRelease EQU 3 ; Current version number of the code. iPrPgFract EQU 120 ; Paper sizes are in 120ths of an inch ; ! ! ! W A R N I N G ! ! ! ; The following PrintErr parameter location should not be accessed directly. ; To get or set printer errors call the procedures PrError and PrSetError ; This will insure compatibility with future Print code releases. ; This parameter is furnished here simply for backward compatibility. ;PrintErr EQU $944 ; print error global location ; Printing Methods -- The DocLoop types bDraftLoop EQU 0 ; draft printing bSpoolLoop EQU 1 ; spooled printing bUser1Loop EQU 2 bUser2Loop EQU 3 ; Various Resource Types & ID's lPStrType EQU $53545220 ; "STR ": Res type for the Pr Rsrc file name iPStrRFil EQU $E000 ; Str -8192 is in SysRes & names the current printer lPrintType EQU $50524543 ; "PREC": Res type for the hPrint records iPrintDef EQU 0 ; Default hPrint iPrintLst EQU 1 ; Last used hPrint iPrintDrvr EQU 2 ; .Print's parameter record; not a Print rec lPfType EQU $5046494C ; "PFIL" lPfSig EQU $50535953 ; "PSYS" iPfIcon EQU 140 ; lPrType EQU $4150504C ; "APPL" lPrSig EQU $50535953 ; "PSYS" iPrIcon EQU 138 ; ENDIF ; ...already included