home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 August / macformat-027.iso / mac / Shareware City / Developers / Oberon⁄F / Mac / Mod / PrintingMgr (.txt) < prev    next >
Encoding:
Oberon Document  |  1994-06-07  |  7.9 KB  |  218 lines  |  [oODC/obnF]

  1. Documents.StdDocumentDesc
  2. Documents.DocumentDesc
  3. Containers.ViewDesc
  4. Views.ViewDesc
  5. Stores.StoreDesc
  6. Documents.ModelDesc
  7. Containers.ModelDesc
  8. Models.ModelDesc
  9. Stores.ElemDesc
  10. TextViews.StdViewDesc
  11. TextViews.ViewDesc
  12. TextModels.StdModelDesc
  13. TextModels.ModelDesc
  14. TextModels.AttributesDesc
  15. Geneva
  16. Geneva
  17. StdStamps.StdViewDesc
  18. Geneva
  19. Geneva
  20. Geneva
  21. MODULE MacPrintingMgr;
  22. (** OmInc 
  23. (* TPrPort declared as an extension of a color grafport *)
  24.     IMPORT SYSTEM, MacTypes, QuickDraw := MacQuickDraw,
  25.         CQuickDraw := MacCQuickDraw, DialogMgr := MacDialogMgr;
  26.     CONST
  27.         bDraftLoop* = 0;
  28.         bSpoolLoop* = 1;
  29.         bDevLaser* = 3;
  30.         iPFMaxPgs* = 128;
  31.         iPrAbort* = 128;
  32.         HANDLE = 2;
  33.         UNTAGGED = 1;
  34.         CODE = 1; NOSTKCHK = 4;
  35.     TYPE
  36.         TPrPort* = RECORD (CQuickDraw.CGrafPort)
  37.             gProcs*: QuickDraw.QDProcs;
  38.             lGParam1, lGParam2, lGParam3, lGParam4: LONGINT;
  39.             fOurPtr, fOurBits: BOOLEAN
  40.         END;
  41.         TPPrPort* = POINTER TO TPrPort;
  42.         TPrInfo* = RECORD (MacTypes.Data)
  43.             iDev*: INTEGER;
  44.             iVRes*: INTEGER;
  45.             iHRes*: INTEGER;
  46.             rPage*: MacTypes.Rect
  47.         END;
  48.         TPrStl* = RECORD (MacTypes.Data)
  49.             wDev*: INTEGER;
  50.             a, b, c: INTEGER
  51.         END;
  52.         TPrXInfo* = RECORD (MacTypes.Data)
  53.             iRowBytes*: INTEGER;
  54.             iBandV*: INTEGER;
  55.             iBandH*: INTEGER;
  56.             iDevBytes*: INTEGER;
  57.             (* more fields for internal use *)
  58.             a, b, c, d: INTEGER
  59.         END;
  60.         TPrJob* = RECORD (MacTypes.Data)
  61.             iFstPage*: INTEGER;
  62.             iLstPage*: INTEGER;
  63.             iCopies*: INTEGER;
  64.             bJDocLoop*: MacTypes.SignedByte;
  65.             fFromUsr*: BOOLEAN;
  66.             pIdleProc*: MacTypes.ProcPtr;
  67.             pFileName*: MacTypes.StringPtr;
  68.             iFileVol*: INTEGER;
  69.             bFileVers*: MacTypes.SignedByte;
  70.             bJopX*: MacTypes.SignedByte
  71.         END;
  72.         TPrint* = RECORD (MacTypes.Data)
  73.             iPrVersion*: INTEGER;
  74.             prInfo*: TPrInfo;
  75.             rPaper*: MacTypes.Rect;
  76.             prStl*: TPrStl;
  77.             prInfoPT*: TPrInfo;
  78.             prXInfo*: TPrXInfo;
  79.             prJob*: TPrJob;
  80.             printX*: ARRAY [UNTAGGED] 19 OF INTEGER
  81.         END;
  82.         TPPrint* = POINTER TO TPrint;
  83.         THPrint* = POINTER [HANDLE] TO TPrint;
  84.         TPRect* = POINTER TO MacTypes.Rect;
  85.         TPrStatus* = RECORD (MacTypes.Data)
  86.             iTotPages*: INTEGER;
  87.             iCurPage*: INTEGER;
  88.             iTotCopies*: INTEGER;
  89.             iCurCopy*: INTEGER;
  90.             iTotBands*: INTEGER;
  91.             iCurBand*: INTEGER;
  92.             fPgDirty*: BOOLEAN;
  93.             fImaging*: BOOLEAN;
  94.             hPrint*: THPrint;
  95.             pPrPort*: TPPrPort;
  96.             hPic*: QuickDraw.PicHandle
  97.         END;
  98.         TPPrDlg* = POINTER TO TPrDlg;
  99.         ItemHandler* = PROCEDURE (theDialog: TPPrDlg; item: INTEGER);
  100.         TPrDlg* = RECORD (DialogMgr.DialogRecord)
  101.             pFltrProc*: MacTypes.ProcPtr;
  102.             pItemProc*: ItemHandler;
  103.             hPrintUsr*: THPrint;
  104.             fDoIt*: BOOLEAN;
  105.             fDone*: BOOLEAN;
  106.             lUser1, lUser2, lUser3, lUser4: LONGINT
  107.         END;
  108. PROCEDURE [1] Debugger 0A9H, 0FFH;
  109.     PROCEDURE [CODE] prOpen (sel: LONGINT) 0A8H, 0FDH;
  110.     PROCEDURE [CODE] prClose (sel: LONGINT) 0A8H, 0FDH;
  111.     PROCEDURE [CODE] printDefault (hPrint: THPrint; sel: LONGINT) 0A8H, 0FDH;
  112.     PROCEDURE [CODE] prValidate (hPrint: THPrint; sel: LONGINT): BOOLEAN 0A8H, 0FDH;
  113.     PROCEDURE [CODE] prDialog (hPrint: THPrint; sel: LONGINT): BOOLEAN 0A8H, 0FDH;
  114.     PROCEDURE [CODE] prInitDialog (hPrint: THPrint; sel: LONGINT): TPPrDlg 0A8H, 0FDH;
  115.     PROCEDURE [CODE] prDlgMain (hPrint: THPrint; p: MacTypes.ProcPtr; sel: LONGINT): BOOLEAN 0A8H, 0FDH;
  116.     PROCEDURE [CODE] prJobMerge (hPrintSrc, hPrintDst: THPrint; sel: LONGINT) 0A8H, 0FDH;
  117.     PROCEDURE [CODE] prOpenDoc (hPrint: THPrint; pPrPort: TPPrPort; pIOBuf: MacTypes.Ptr;
  118.                             sel: LONGINT): TPPrPort 0A8H, 0FDH;
  119.     PROCEDURE [CODE] prCloseDoc (pPrPort: TPPrPort; sel: LONGINT) 0A8H, 0FDH;
  120.     PROCEDURE [CODE] prOpenPage (pPrPort: TPPrPort; pPageFrame: TPRect; sel: LONGINT) 0A8H, 0FDH;
  121.     PROCEDURE [CODE] prClosePage (pPrPort: TPPrPort; sel: LONGINT) 0A8H, 0FDH;
  122.     PROCEDURE [CODE] prPicFile (hPrint: THPrint; pPrPort: TPPrPort; pIOBuf: MacTypes.Ptr;
  123.                             pDevBuf: MacTypes.Ptr; VAR prStatus: TPrStatus; sel: LONGINT) 0A8H, 0FDH;
  124.     PROCEDURE [CODE] prError (sel: LONGINT): INTEGER 0A8H, 0FDH;
  125.     PROCEDURE [CODE] prDrvrOpen (sel: LONGINT) 0A8H, 0FDH;
  126.     PROCEDURE [CODE] prDrvrClose (sel: LONGINT) 0A8H, 0FDH;
  127.     (** Opening and Closing the Printing Manager **)
  128.     PROCEDURE [NOSTKCHK] PrOpen*;
  129.     BEGIN
  130.         prOpen(0C8000000H)
  131.     END PrOpen;
  132.     PROCEDURE [NOSTKCHK] PrClose*;
  133.     BEGIN
  134.         prClose(0D0000000H)
  135.     END PrClose;
  136.     (** Initializing and Validating TPrint Records **)
  137.     PROCEDURE [NOSTKCHK] PrintDefault* (hPrint: THPrint);
  138.     BEGIN
  139.         printDefault(hPrint, 020040480H)
  140.     END PrintDefault;
  141.     PROCEDURE [NOSTKCHK] PrValidate* (hPrint: THPrint): BOOLEAN;
  142.     BEGIN
  143.         RETURN prValidate(hPrint, 052040498H)
  144.     END PrValidate;
  145.     (** Displaying and Customizing the Print Dialog Boxes **)
  146.     PROCEDURE [NOSTKCHK] PrStlDialog* (hPrint: THPrint): BOOLEAN;
  147.     BEGIN
  148.         RETURN prDialog(hPrint, 02A040484H)
  149.     END PrStlDialog;
  150.     PROCEDURE [NOSTKCHK] PrJobDialog* (hPrint: THPrint): BOOLEAN;
  151.     BEGIN
  152.         RETURN prDialog(hPrint, 032040488H)
  153.     END PrJobDialog;
  154.     PROCEDURE [NOSTKCHK] PrDlgMain* (hPrint: THPrint; pDlgInit: MacTypes.ProcPtr): BOOLEAN;
  155.     BEGIN
  156.         RETURN prDlgMain(hPrint, pDlgInit, 04A040894H)
  157.     END PrDlgMain;
  158.     PROCEDURE [NOSTKCHK] PrStlInit* (hPrint: THPrint): TPPrDlg;
  159.     BEGIN
  160.         RETURN prInitDialog(hPrint, 03C04040CH)
  161.     END PrStlInit;
  162.     PROCEDURE [NOSTKCHK] PrJobInit* (hPrint: THPrint): TPPrDlg;
  163.     BEGIN
  164.         RETURN prInitDialog(hPrint, 044040410H)
  165.     END PrJobInit;
  166.     PROCEDURE [NOSTKCHK] PrJobMerge* (hPrintSrc, hPrintDst: THPrint);
  167.     BEGIN
  168.         prJobMerge(hPrintSrc, hPrintDst, 05804089CH)
  169.     END PrJobMerge;
  170.     (** Printing a Document **)
  171.     PROCEDURE [NOSTKCHK] PrOpenDoc* (hPrint: THPrint; pPrPort: TPPrPort; pIOBuf: MacTypes.Ptr): TPPrPort;
  172.     BEGIN
  173.         RETURN prOpenDoc(hPrint, pPrPort, pIOBuf, 004000C00H)
  174.     END PrOpenDoc;
  175.     PROCEDURE [NOSTKCHK] PrCloseDoc* (pPrPort: TPPrPort);
  176.     BEGIN
  177.         prCloseDoc(pPrPort, 008000484H);
  178.     END PrCloseDoc;
  179.     PROCEDURE [NOSTKCHK] PrOpenPage* (pPrPort: TPPrPort; pPageFrame: TPRect);
  180.     BEGIN
  181.         prOpenPage(pPrPort, pPageFrame, 010000808H)
  182.     END PrOpenPage;
  183.     PROCEDURE [NOSTKCHK] PrClosePage* (pPrPort: TPPrPort);
  184.     BEGIN
  185.         prClosePage(pPrPort, 01800040CH)
  186.     END PrClosePage;
  187.     PROCEDURE [NOSTKCHK] PrPicFile* (hPrint: THPrint; pPrPort: TPPrPort; pIOBuf: MacTypes.Ptr;
  188.                         pDevBuf: MacTypes.Ptr; VAR prStatus: TPrStatus);
  189.     BEGIN
  190.         prPicFile(hPrint, pPrPort, pIOBuf, pDevBuf, prStatus, 060051480H)
  191.     END PrPicFile;
  192.     (** Handling Printing Errors **)
  193.     PROCEDURE [NOSTKCHK] PrError* (): INTEGER;
  194.     BEGIN
  195.         RETURN prError(0BA000000H)
  196.     END PrError;
  197.     (** Low-Level Routines **)
  198.     PROCEDURE [NOSTKCHK] PrDrvrOpen*;
  199.     BEGIN
  200.         prDrvrOpen(080000000H)
  201.     END PrDrvrOpen;
  202.     PROCEDURE [NOSTKCHK] PrDrvrClose*;
  203.     BEGIN
  204.         prDrvrClose(088000000H)
  205.     END PrDrvrClose;
  206. END MacPrintingMgr.
  207. TextControllers.StdCtrlDesc
  208. TextControllers.ControllerDesc
  209. Containers.ControllerDesc
  210. Controllers.ControllerDesc
  211. TextRulers.StdRulerDesc
  212. TextRulers.RulerDesc
  213. TextRulers.StdStyleDesc
  214. TextRulers.StyleDesc
  215. TextRulers.AttributesDesc
  216. Geneva
  217. Documents.ControllerDesc
  218.